目录
1.2操作系统的发展与分类
1.操作系统的分类及其特征优劣
2.操作系统的发展历程
1.3 操作系统的运行机制和体系结构
1.3.1操作系统的运行机制和体系结构
1.操作系统的结构设计
2.操作系统的运行机制和体系结构
3.操作系统内核在计算机系统中的层次结构
4.操作系统用户态和核心态的转换
1.3.2中断和异常
1.3.3系统调用
1.系统调用知识框架图
2.系统调用和库函数的区别
3.系统调用的执行过程
上一篇:【王道操作系统】第一章 操作系统概述(下)——操作系统的发展、分类、运行机制、体系结构
下一篇:
1、手工操作阶段
理解:
- 工人依照数据在纸上打孔,交给机器计算,因为计算机速度快,手工打孔慢,就造成了资源的浪费。
2、批处理阶段
理解:
- 工人打孔后将“打孔纸” 通过卫星机/外围机包装到一盘“磁带”里。
- 再把一盘接着一盘包装好的 “磁带” 独立地送入到计算机进行计算。
理解:
- 工人打孔后将“打孔纸” 通过卫星机/外围机包装到一盘“磁带”里。
- 再把一盘接着一盘包装好的 “磁带” 耦合地送入到计算机进行计算。
3、分时操作系统
理解:
就像有4个人(①②③④)在玩电脑,他们用的是同一个分时操作系统。
该系统会按照 “①②③④①②③…” 的顺序轮流分 50ms 给每个用户使用。
4、实时操作系统
5、其他操作系统
总结:
1.2 Over !
1、整体式结构
定义:又称模块组合法,是基于结构化程序设计的软件结构设计方法。
设计思想:
①将模块作为操作系统的基本组成单位。
②按照功能需要而不是根据程序和数据的特性把整个系统分解为若干模块。
③模块可以再进一步分成子模块。
④每个模块具有一定的独立功能,多个模块协作完成某个功能。
⑤各模块分别设计、编码、调试。
⑥所有模块连结成一个完整的系统。
优点:
缺点:
2、层次式结构:改进了整体式结构
设计思想:
①操作系统划分为内核和若干模块。( 这里的 “内核” 体现在下面的第三张图中)
②模块按功能的调用次序排列成若干层次。
③各层之间只能是单向依赖或单向调用关系。
单向依赖:上层只能调用下层,而下层不能调用上层。如下图,硬件上面有若干个层次,进程管理支撑存储管理,存储管理再支撑设备管理…依次类推。
类型:
优点:
因此,本质上,层次式结构仍然是模块化的结构,不过它的结构更加清晰,依赖是单向的,不复杂。
Linux操作系统的层次结构:
- Linux操作系统的整体是层次式结构。
- 不过Linux操作系统的内核又是一种整体式结构(在下图中的 “单内核” 所包含的区域)。因为在内核里面,它包含了多个模块,且多个模块彼此之间还可以互相调用,并没有一个非常清晰的层次关系。
- Linux操作系统内核的特点:
①Linux内核由模块组成。
②每个模块可以单独编译。
③模块用链接程序连在一起成为目标程序。
Q:为什么在Linux的内核中要采用整体式结构呢?
A:因为这样的话,它有利于不同的人参与不同过程的开发,并允许任何人对其进行修改和完善。所以说,Linux内核是基于过程的开放式结构。(因为它是开源的)
3、虚拟机结构:可看成一种层次式结构
定义:
构建方法:
①在裸机上层层扩展软件。
②可采用层次化结构的设计方法来实现。
③经过虚拟化后的逻辑资源对用户隐藏了不必要的细节。(这可以使程序员在虚拟机结构的操作系统中,更快地开放出各种各样的应用程序)
4、客户/服务器结构
基本思想:操作系统被分成两大部分。
①运行在用户态并以客户/服务器方式活动的进程。
②运行在核心态的内核。
客户/服务器这个结构,事实上是来自于计算机网络里面的一种结构。即在网络里面,有客户机和服务器,客户机通过网络连接到服务器上,去索取资源/服务。服务器就给客户机提供服务。
这就是一种 “服务与被服务”的关系。操作系统就借用这种思想,将这种思想应用到操作系统的设计和构建中,也就是有一部分进程是客户进程,有一部分是服务进程,中间还有一个内核来“调度”。
特点:
①除内核外,操作系统的其他部分被分成若干相对独立的进程,每一个进程实现一类服务,称服务器进程。用户进程也在该层,并以客户/服务器方式活动。
②客户进程发出消息,内核将消息传送给服务器进程,服务器进程执行客户提出的服务请求,在满足客户的要求后在通过内核发行消息把结果返回给用户。
5、微内核结构
定义:
①把操作系统中的内存管理、设备管理、文件管理等功能模块尽可能地从内核中分离出来。
②在内核中只保留最基本的功能,使内核变得简洁可靠。(出Bug的概率就减小了)
优点:
客户/服务器及内核结构:
解释:
①“用户进程” 和 “操作系统服务进程” 都在内核之外。
②内核,即图中的 “微内核”。
③用户进程可通过内核,把请求发给服务进程而去索取服务。
④服务进程再通过内核把服务信息发送给用户进程。
⑤微内核看上去像一个 “中间商人”。
操作系统结构类比:
- 操作系统的体系结构问题与企业的管理问题很相似。
- 内核就是企业的管理层负责一些重要的工作。只有管理层才能执行特权指令,普通员工只能执行非特权指令。用户态、核心态之间的切换相当于普通员工和管理层之间的工作交接。
- 大内核:企业初创时体量不大,管理层的人会负责大部分的事情。优点是效率高;缺点是组织结构混乱,难以维护。
- 微内核:随着企业体量越来越大,管理层只负责最核心的一些工作。优点是组织结构清晰,方便维护;缺点是效率低。
遗留问题:用户态、核心态之间的切换是怎么实现的?
答:
1.3.1 Over !
1.3.2 Over !
第一章 over !✨
上一篇:【王道操作系统】第一章 操作系统概述(下)——操作系统的发展、分类、运行机制、体系结构
下一篇: