面向方面软件开发方法在操作系统开发中的应用研究

面向方面软件开发方法在操作系统开发中的应用研究

论文摘要

随着计算机技术的发展以及应用需求的变化,操作系统的规模和复杂性不断增加。在进行操作系统设计时,不仅要考虑如何实现操作系统的功能,还要解决可维护性、可扩展性以及可移植性等非功能性问题。然而,传统的面向过程和面向对象开发方法仍难以很好地处理操作系统的非功能要求。面向方面软件开发(Aspect-Oriented Software Development,AOSD)方法以一种更高层次的抽象和分解方式来分析、设计和开发软件,将方面思想和技术贯穿于软件开发的整个生命周期。根据系统的特定行为进行程序模块的划分,引入方面机制描述贯穿特性,实现了贯穿特性的模块化,从总体上提高了软件的质量和开发效率,弥补了传统开发方法存在的缺陷,为操作系统的设计和开发提供了新的思路和解决方案。本文首先分析了面向方面软件开发方法的基本理论和应用技术,研究了面向方面编程语言AspectC(Aspect-Oriented C)的基本语法结构以及实现机制。然后在剖析Linux内核体系结构以及部分源代码的基础上,给出了其中部分典型贯穿特性代码的方面重构实现,通过对比分析重构前后系统在代码质量、模块化程度和运行效率三个方面上的差异,对AOSD方法在操作系统设计和开发上的应用价值和实现途径进行了深入研究,同时总结了重构过程中遇到的关键问题以及相应的解决方法。最后,结合构件化软件开发技术和方面思想,提出了一种新的面向方面可适应性操作系统开发模型,以适应动态变化的应用场合和需求,提高操作系统的灵活性、可维护性以及可适应性。

论文目录

  • 摘要
  • Abstract
  • 第一章 前言
  • 1.1 课题的提出及研究意义
  • 1.2 课题的研究目标和内容
  • 1.3 论文的组织结构
  • 第二章 面向方面软件开发方法的研究
  • 2.1 软件开发方法的发展历史及现状
  • 2.1.1 面向过程开发方法
  • 2.1.2 面向对象开发方法
  • 2.1.3 面向对象时代以后的软件开发方法
  • 2.1.4 传统开发方法存在的问题
  • 2.2 面向方面软件开发方法(AOSD)
  • 2.2.1 AOSD方法的基本思想和特点
  • 2.2.2 AOSD方法的关键技术和支持工具
  • 2.2.3 AOSD方法在操作系统设计与开发中的研究现状
  • 2.2.4 AOSD方法存在的问题及发展方向
  • 2.3 小结
  • 第三章 面向方面C语言(AspectC)的研究
  • 3.1 AspectC的基本概念
  • 3.1.1 连接点(Joint Point)
  • 3.1.2 切入点(Pointcut)
  • 3.1.3 通知(Advice)
  • 3.1.4 类型间声明(Inter-type Declaration)
  • 3.1.5 方面(Aspect)
  • 3.2 AspectC的实现机制
  • 3.2.1 AspectC程序的基本结构
  • 3.2.2 AspectC程序的实现过程
  • 3.2.3 AspectC的编译指令
  • 3.3 AspectC的特点及发展趋势
  • 3.3.1 AspectC的特点
  • 3.3.2 AspectC的发展趋势
  • 3.4 小结
  • 第四章 面向方面技术在重构Linux内核代码中的应用
  • 4.1 贯穿特性重构研究的背景介绍
  • 4.2 重构Linux内核贯穿特性的方法及过程
  • 4.2.1 重构的基本方法
  • 4.2.2 重构的实施过程
  • 4.2.3 重构的实验环境及工具
  • 4.3 Linux贯穿特性的原始实现
  • 4.3.1 同步锁(Synchronization Lock)关注点
  • 4.3.2 错误检测(Error Checking)关注点
  • 4.3.3 激活刷新脏缓冲区内核线程关注点
  • 4.4 Linux贯穿特性的方面实现
  • 4.4.1 同步锁关注点的方面实现
  • 4.4.2 错误检测关注点的方面实现
  • 4.4.3 激活刷新脏缓冲区内核线程关注点的方面实现
  • 4.5 贯穿特性方面代码的测试
  • 4.5.1 同步锁方面代码
  • 4.5.2 错误检测方面代码
  • 4.5.3 激活刷新脏缓冲区内核线程方面代码
  • 4.6 重构前后系统的对比和分析
  • 4.6.1 代码规模方面
  • 4.6.2 系统模块性方面
  • 4.6.3 系统运行效率方面
  • 4.7 小结
  • 第五章 面向方面可适应性操作系统开发模型
  • 5.1 开发面向方面可适应性操作系统的必要性
  • 5.2 构件技术概述
  • 5.3 面向方面可适应性操作系统开发模型的实现方案
  • 5.3.1 面向方面可适应性操作系统的开发模型及步骤
  • 5.3.2 功能属性的构件化设计和实现
  • 5.3.3 非功能属性的方面设计和实现
  • 5.3.4 面向方面可适应性操作系统的配置过程
  • 5.3.5 面向方面可适应性操作系统开发模型的特点及实现意义
  • 5.4 小结
  • 结论
  • 1、总结
  • 2、主要创新点
  • 3、进一步工作
  • 参考文献
  • 攻读硕士学位期间取得的学术成果
  • 致谢
  • 相关论文文献

    • [1].探究软件开发方法的创新发展过程[J]. 计算机产品与流通 2018(03)
    • [2].软件开发方法的创新发展过程研究[J]. 数字技术与应用 2016(10)
    • [3].关于软件开发方法的创新发展过程研究[J]. 信息与电脑(理论版) 2014(24)
    • [4].关于面向对象和结构化两种软件开发方法创新规律的探讨[J]. 电子技术与软件工程 2013(23)
    • [5].基于构件的企业级软件开发方法研究[J]. 电子技术与软件工程 2013(21)
    • [6].介绍几种软件开发方法[J]. 考试周刊 2008(52)
    • [7].从BIM发展历史脉络看未来(三)[J]. 住宅与房地产 2020(20)
    • [8].软件开发方法发展回顾与展望[J]. 软件学报 2019(01)
    • [9].云环境下动态装配软件开发方法中的关键技术研究[J]. 通讯世界 2017(19)
    • [10].软件开发方法的创新发展过程分析[J]. 电子制作 2015(24)
    • [11].软件工程中软件开发方法的现状与趋势[J]. 统计与管理 2013(02)
    • [12].敏捷型软件开发方法与极限编程[J]. 科技信息 2009(14)
    • [13].软件工程与软件开发方法[J]. 孝感学院学报 2008(S1)
    • [14].基于中间件的软件开发方法探讨[J]. 硅谷 2008(06)
    • [15].面向微服务软件开发方法研究进展[J]. 计算机研究与发展 2020(03)
    • [16].软件开发方法的创新发展过程研究[J]. 科技经济市场 2015(01)
    • [17].基于组件的软件开发方法探讨[J]. 信息技术与信息化 2020(10)
    • [18].基于组件的软件开发方法的研究[J]. 科学大众 2009(01)
    • [19].软件开发方法的创新发展过程研究[J]. 科技与企业 2015(14)
    • [20].软件开发方法的创新发展过程综述[J]. 电子技术与软件工程 2015(24)
    • [21].软件工程中面向对象方法的优势分析[J]. 电子技术与软件工程 2014(24)
    • [22].Prometheus方法研究[J]. 信息与电脑(理论版) 2014(06)
    • [23].主动防御技术在软件开发中的应用[J]. 电脑知识与技术 2019(30)
    • [24].软件开发方法的创新发展过程研究[J]. 网友世界 2014(15)
    • [25].插件化软件开发方法初探[J]. 电脑与电信 2017(11)
    • [26].极限编程初探[J]. 网友世界 2014(05)
    • [27].前言[J]. 计算机研究与发展 2020(03)
    • [28].银行软件开发方法改进分析[J]. 电子世界 2016(12)
    • [29].网络环境下的新型软件开发方法——网构软件[J]. 电脑知识与技术 2011(21)
    • [30].基于模型驱动架构的软件开发方法研究[J]. 重庆文理学院学报(自然科学版) 2008(03)

    标签:;  ;  ;  ;  ;  

    面向方面软件开发方法在操作系统开发中的应用研究
    下载Doc文档

    猜你喜欢