轻量级操作系统的设计与开发
发布时间:2021-10-09 08:45
操作系统是管理和控制计算机硬件和软件资源的计算机程序,也是计算机硬件和其他软件之间的接口。虽然操作系统技术日益成熟,但仍然是一个不断发展,不断更新的领域。然而,国产操作系统的发展相对落后,目前难以与国际知名的操作系统相竞争。Linux是国际上常用且强大的操作系统,它拥有着自由、公开且免费的特性,为人们提供了学习优秀国外操作系统的设计理念和实现方法的机会。因此,研究和改进Linux操作系统对于国内操作系统的发展具有重要意义。此外,当前市场上大多数的操作系统内核都是由C语言和汇编语言混合编程,主要基于C语言。而由C语言构成的大型项目往往会面临功能与模块关系不清晰、代码的复用性和维护性较差等问题。在当下Linux代码急速膨胀的趋势下,解决代码的维护问题尤为重要。因此,由面向对象语言实现的操作系统内核将会体现出明显的优势,具有重要的现实意义和应用价值。本文将从引导模块出发,从实模式转换到保护模式,研究并论述Linux操作系统中分页机制与虚拟内存、进程与线程和文件系统等概念的涵义。然后设计并开发内核中的时钟管理、内存管理、任务管理、文件管理和终端等功能模块,完成一个较为完善的32位操作系统。并且...
【文章来源】:南京邮电大学江苏省
【文章页数】:58 页
【学位级别】:硕士
【部分图文】:
017年各操作系统的市场占有率
模式的研究是一项重要工作。16 位操作系统之下,CPU 只能运行于实模式。此时,地址总线有 20 位,最大可用内存为 1MB,这样的内存即使在 20 年前也显得捉襟见肘。当 CPU 发展到 32 位后,拥有 32 位址总线和数据总线,寻址空间便达到了 4GB,系统性能相比实模式有着巨大改善。但为了证 CPU 的向下兼容,32 位系统下的 CPU 也须先进入实模式,然后通过切换机制进入保护式。由实模式进入保护模式只需三个步骤:(1)打开 A20 总线;(2)加载 gdt(全局描述符表);(3)将 cr0 寄存器的 pe 位值 1。这三个步骤不需要顺序执行或连续执行,便可以实现工作模式的切换。保护模式仍旧采用“段基址:段内偏移”的形式来描述地址,但寻址方式与实模式截不同。在实模式下,地址值等于 16 位的段基址左移 4 位,再加上段内偏移。而保护模式下地址转换机制则相当复杂。
图 2.2 分页机制的作用 2.2 所示,进程的地址转换过程中,线性空间通过虚拟空间映射到物理地址和虚拟空间大小都是 4GB。虽然分段的内存中大多是连续内存,但分配到的不连续的物理页。机制下,代码段和数据段在逻辑上被拆分成以页为单位的小内存块,它们便系统为这些虚拟页分配真实的物理页内存,将可用的物理页地址关联到页表拟页到物理页的映射[23]。和虚拟内存技术使内存的管理更为高效和灵活,分页存储有效减少了内存碎虚拟内存让操作系统在有限的实际内存之上同时执行多个较大的任务。与线程概述
【参考文献】:
期刊论文
[1]探讨Windows环境下80×86汇编程序教学中的几个问题[J]. 刘俊. 电脑知识与技术. 2016(02)
[2]基于多线程的进程调度演进过程的仿真设计[J]. 刘洪,刘欣. 信息通信. 2014(11)
[3]多线程模拟进程时间片轮转调度算法研究[J]. 汤元斌. 四川文理学院学报. 2014(05)
[4]嵌入式操作系统中设备管理和驱动程序的开发[J]. 张浩. 计算机光盘软件与应用. 2013(01)
[5]通用操作系统对比评测标准研究[J]. 任怡,吴庆波,戴华东,廖湘科,杨沙洲. 计算机科学. 2011(11)
[6]3种FAT格式中簇链地址的计算方法研究[J]. 续继俊. 科技情报开发与经济. 2010(13)
[7]面向计算系统的虚拟化技术[J]. 金海,廖小飞. 中国基础科学. 2008(06)
[8]一种减少中断延迟的中断调度模型[J]. 赵红武,金瑜,刘云生. 现代计算机. 2005(09)
[9]浅析操作系统内核体系结构[J]. 熊安萍,蒋溢. 重庆工商大学学报(自然科学版). 2004(04)
[10]在历史与未来的结点上——纪念IBM S/360大型主机应用40周年[J]. 李文. 中国金融电脑. 2004(06)
硕士论文
[1]面向小文件的分布式文件存储管理系统的设计与实现[D]. 王明.北京邮电大学 2018
[2]多内核操作系统资源管理设计与实现[D]. 池志雄.中国科学院大学(中国科学院工程管理与信息技术学院) 2017
[3]基于众科理论的国产操作系统演化和推广研究[D]. 解卫静.石家庄铁道大学 2017
[4]基于Linux内核页表构建内核隔离空间的研究及实现[D]. 吕腾飞.南京大学 2017
[5]支持中文的操作系统内核的研究与实现[D]. 孙浩林.北京交通大学 2017
[6]多内核操作系统文件系统的设计开发与性能研究[D]. 王国伟.西北师范大学 2016
[7]Linux内核开发者群体的结构演化及行为特征研究[D]. 杜佩佩.大连理工大学 2015
[8]基于DM3730异构多核处理器的嵌入式操作系统设计与实现[D]. 许斌.电子科技大学 2013
[9]基于windows7的维文多语种操作系统本地化的研究与实现[D]. 刘俊.新疆大学 2012
[10]嵌入式操作系统核间任务同步与通信的设计与实现[D]. 武军彪.西安电子科技大学 2012
本文编号:3426028
【文章来源】:南京邮电大学江苏省
【文章页数】:58 页
【学位级别】:硕士
【部分图文】:
017年各操作系统的市场占有率
模式的研究是一项重要工作。16 位操作系统之下,CPU 只能运行于实模式。此时,地址总线有 20 位,最大可用内存为 1MB,这样的内存即使在 20 年前也显得捉襟见肘。当 CPU 发展到 32 位后,拥有 32 位址总线和数据总线,寻址空间便达到了 4GB,系统性能相比实模式有着巨大改善。但为了证 CPU 的向下兼容,32 位系统下的 CPU 也须先进入实模式,然后通过切换机制进入保护式。由实模式进入保护模式只需三个步骤:(1)打开 A20 总线;(2)加载 gdt(全局描述符表);(3)将 cr0 寄存器的 pe 位值 1。这三个步骤不需要顺序执行或连续执行,便可以实现工作模式的切换。保护模式仍旧采用“段基址:段内偏移”的形式来描述地址,但寻址方式与实模式截不同。在实模式下,地址值等于 16 位的段基址左移 4 位,再加上段内偏移。而保护模式下地址转换机制则相当复杂。
图 2.2 分页机制的作用 2.2 所示,进程的地址转换过程中,线性空间通过虚拟空间映射到物理地址和虚拟空间大小都是 4GB。虽然分段的内存中大多是连续内存,但分配到的不连续的物理页。机制下,代码段和数据段在逻辑上被拆分成以页为单位的小内存块,它们便系统为这些虚拟页分配真实的物理页内存,将可用的物理页地址关联到页表拟页到物理页的映射[23]。和虚拟内存技术使内存的管理更为高效和灵活,分页存储有效减少了内存碎虚拟内存让操作系统在有限的实际内存之上同时执行多个较大的任务。与线程概述
【参考文献】:
期刊论文
[1]探讨Windows环境下80×86汇编程序教学中的几个问题[J]. 刘俊. 电脑知识与技术. 2016(02)
[2]基于多线程的进程调度演进过程的仿真设计[J]. 刘洪,刘欣. 信息通信. 2014(11)
[3]多线程模拟进程时间片轮转调度算法研究[J]. 汤元斌. 四川文理学院学报. 2014(05)
[4]嵌入式操作系统中设备管理和驱动程序的开发[J]. 张浩. 计算机光盘软件与应用. 2013(01)
[5]通用操作系统对比评测标准研究[J]. 任怡,吴庆波,戴华东,廖湘科,杨沙洲. 计算机科学. 2011(11)
[6]3种FAT格式中簇链地址的计算方法研究[J]. 续继俊. 科技情报开发与经济. 2010(13)
[7]面向计算系统的虚拟化技术[J]. 金海,廖小飞. 中国基础科学. 2008(06)
[8]一种减少中断延迟的中断调度模型[J]. 赵红武,金瑜,刘云生. 现代计算机. 2005(09)
[9]浅析操作系统内核体系结构[J]. 熊安萍,蒋溢. 重庆工商大学学报(自然科学版). 2004(04)
[10]在历史与未来的结点上——纪念IBM S/360大型主机应用40周年[J]. 李文. 中国金融电脑. 2004(06)
硕士论文
[1]面向小文件的分布式文件存储管理系统的设计与实现[D]. 王明.北京邮电大学 2018
[2]多内核操作系统资源管理设计与实现[D]. 池志雄.中国科学院大学(中国科学院工程管理与信息技术学院) 2017
[3]基于众科理论的国产操作系统演化和推广研究[D]. 解卫静.石家庄铁道大学 2017
[4]基于Linux内核页表构建内核隔离空间的研究及实现[D]. 吕腾飞.南京大学 2017
[5]支持中文的操作系统内核的研究与实现[D]. 孙浩林.北京交通大学 2017
[6]多内核操作系统文件系统的设计开发与性能研究[D]. 王国伟.西北师范大学 2016
[7]Linux内核开发者群体的结构演化及行为特征研究[D]. 杜佩佩.大连理工大学 2015
[8]基于DM3730异构多核处理器的嵌入式操作系统设计与实现[D]. 许斌.电子科技大学 2013
[9]基于windows7的维文多语种操作系统本地化的研究与实现[D]. 刘俊.新疆大学 2012
[10]嵌入式操作系统核间任务同步与通信的设计与实现[D]. 武军彪.西安电子科技大学 2012
本文编号:3426028
本文链接:https://www.wllwen.com/kejilunwen/ruanjiangongchenglunwen/3426028.html