首页 - 网校 - 万题库 - 美好明天 - 直播 - 导航
热点搜索
学员登录 | 用户名
密码
新学员
老学员
您现在的位置: 考试吧 > 考研 > 考研复习指导 > 考研专业课复习指导 > 考研专业课 > 正文

2011计算机考研《操作系统》知识点分析(4)

来源:电子工业出版社 2010-11-17 13:18:48 要考试,上考试吧! 考研万题库
考试吧整理“2011计算机考研《操作系统》知识点分析”供广大考生备考使用。

电子工业出版社独家提供,严禁转载!

  1.4 操作系统结构设计

  操作系统是一种大型、复杂的并发系统,为了研制操作系统,首先必须研究它的结构,力求设计出结构良好的程序。操作系统的结构设计有两层含义:一是研究操作系统的整体结构,由程序的构成成分组成操作系统程序的构造过程和方法;二是研究操作系统程序的局部结构,包括数据结构和控制结构。采用不同的构件和构造方法可组成不同结构的操作系统。本节将在讨论操作系统构件之后,全面介绍各种操作系统的构造方法。

  1.4.1 操作系统的组件

  通常把组成操作系统程序的基本单位称作操作系统的构件。剖析现代操作系统,构成操作系统的基本单位除内核之外,主要还有进程、线程、类程和管程。

  1.内核

  现代操作系统中大都采用了进程的概念,为了解决系统的并发性、共享性和随机性,并使进程能协调地工作,单靠计算机硬件提供的功能是十分不够的。例如,进程调度工作目前就不能用硬件来实现;而进程自己调度自己也是困难的。所以,系统必须有一个软件部分能对硬件处理器及有关资源进行首次改造,以便给进程的执行提供良好运行环境,这个部分就是操作系统的内核。

  由于操作系统设计的目标和环境不同,内核的大小和功能有很大差别。有些设计希望把内核做得尽量小仅具有极少的必需功能,称为微内核(microkernel),其他功能都在核外实现,通过微内核提供的消息传递机制完成其余功能模块间的联系;有些设计则希望内核具有较多的功能,虽然其内部也可划分成层次或模块,但运行时是一个大二进制映像,模块间的联系可通过函数或过程调用实现,称为单内核(monolithic kernel)。操作系统的一个基本问题就是内核的功能设计。微内核结构是现代操作系统的特征之一,这种方法把内核和核外服务程序的开发分离,可为特定应用程序或运行环境要求定制服务程序,具有较好的可伸缩性,简化了实现,提供了灵活性,很适合分布式系统的构造。

  一般而言,内核必须提供以下3个方面的功能。

  (1)中断处理。中断处理是内核中最基本的功能,也是操作系统赖以活动的基础,为了缩短屏蔽中断的时间,增加系统内的并发性,通常它仅仅进行有限的、简短的处理,其余任务交给在内核之外的特殊用户态进程完成。当中断事件产生时,先由内核截获并转向中断处理例行程序进行原则处理,它分析中断事件的类型和性质,进行必要的状态修改,然后交给内核之外的进程去处理。例如,产生外围设备结束中断事件时,内核首先分析是否正常结束,如果是正常结束,那么,就应释放等待该外围传输的进程;否则启动相应设备管理进程进行出错或异常处理。又如当操作员请求从控制台输入命令时,内核将把这一任务转交给命令管理进程去处理,以接收和执行命令。

  (2)短程调度。主要职能是分配处理器。当系统中发生了一个事件之后,可能一个进程要让出处理器,而另一个进程又要获得处理器。短程调度按照一定的策略管理处理器的转让,以及完成保护和恢复现场的工作。由于它是协调进程竞争处理器资源的程序,所以它不是进程而是内核中的一个程序。

  (3)原语管理。原语是内核中实现某一功能的不可中断过程。为了协调进程完成通信、并发执行和共享资源,各种原语是必不可少的。通信原语为进程相互传递消息,同步原语能协调并发进程之间的种种制约关系。此外,还有其他原语,如启动外围设备工作的启动原语,若启动不成功则请求启动者应等待,显然,这个启动过程应该是完整的,否则在成为等待状态时,可能外围设备已经空闲。由于设备的操作与硬件密切相关,故通常设备驱动程序等功能都放在内核中完成。

  内核是操作系统对裸机的首次改造,内核和裸机组成了一台虚拟机,进程就在这台虚拟机上运行,它比裸机的功能更强大,具有以下特性:

  (1)虚拟机没有中断,因而,进程的设计者不再需要有硬件中断的概念,用户进程执行中无须处理中断;

  (2)虚拟机为每个进程提供了一台虚拟处理器,每个进程就好像在各自的私有处理器上顺序地推进,实现了多个进程的并发执行;

  (3)虚拟机为进程提供了功能较强的指令系统,即它们能够使用机器非特权指令、系统调用和原语所组成的新的指令系统。

  为了保证系统的有效性和灵活性,设计内核应遵循少而精的原则。如果内核功能过强,则一方面在修改系统时可能牵动内核;另一方面它占用的内存容量和执行时间都会增大,且屏蔽中断的时间过长也会影响系统效率。因而,设计内核时应注意:中断处理要简单;调度算法要有效;原语应灵活有力、数量适当。这样就可以做到下次修改系统时,尽量少改动内核,执行时中断屏蔽时间缩短。

  2.进程管理

  程序本身并不能做什么,只有在CPU执行它的指令时才能有所作为;因此,可以把进程看做是正在运行的程序。但是当我们进一步研究时,对进程的定义将更为普遍。例如:一个分时用户程序(如编译器)是一个进程,个人用户在PC 上运行的字处理程序是一个进程,一个系统任务(如输出到打印机)也是一个进程,并可以提供允许进程创建与其并发执行的子进程的系统调用。

  进程需要特定的资源(包括CPU时间、内存、文件和I/O设备)来完成工作。这些资源或者在进程创建时分配给它,或者在其运行时分配。除了在进程创建时所获得的各种物理资源和逻辑资源以外,各种各样的初始化数据(或输入)也可能一同传送给进程。例如,考虑一个能够在终端的显示屏上显示一个文件状态的进程。这个进程将获得包含输入的文件名,将执行相应的指令和系统调用来获取所期望的信息并显示在终端上。

  着重强调程序本身不是进程;程序是静态实体(passive entity)(好像是存储在磁盘中的文件的内容),而进程是动态实体(active entity),它用一个程序计数器来指明要执行的下一条指令。进程必须要按顺序执行,CPU执行完进程的一条指令后再执行下一条,直到进程结束。进一步地讲,一次最多执行一条代表该进程的指令。这样,从来就不会出现两个独立运行的序列。但一个程序在运行时创建多个进程是非常普遍的。

  进程是并发程序设计的一个工具,并发程序设计支撑了多道程序设计,由于进程能确切、动态地刻画计算机系统内部的并发性,更好地解决系统资源的共享性,所以,在操作系统的发展史上,进程概念被较早地引入了系统。它在操作系统的理论研究和设计实现上均发挥了重要作用。采用进程概念使得操作系统结构变得清晰,主要表现如下。

  (1)一个进程到另一个进程的控制转移由进程调度机构统一管理,不能杂乱无章,随意进行。

  (2)进程之间的交互如信号发送、消息传递和同步互斥等活动由通信及同步机制完成,从而使进程无法有意或无意破坏其他进程的数据。因此,每个进程相对独立,相互隔离,提高了系统的安全性和可靠性。

  (3)进程结构较好地刻画了系统的并发性,动态地描述出系统的执行过程,因而具有进程结构的操作系统,结构清晰、整齐划一,可维护性好。

点击查看:2011计算机考研《操作系统》知识点分析完整版

1 2 3 下一页
看了本文的网友还看了
文章搜索
万题库小程序
万题库小程序
·章节视频 ·章节练习
·免费真题 ·模考试题
微信扫码,立即获取!
扫码免费使用
考研英语一
共计364课时
讲义已上传
53214人在学
考研英语二
共计30课时
讲义已上传
5495人在学
考研数学一
共计71课时
讲义已上传
5100人在学
考研数学二
共计46课时
讲义已上传
3684人在学
考研数学三
共计41课时
讲义已上传
4483人在学
推荐使用万题库APP学习
扫一扫,下载万题库
手机学习,复习效率提升50%!
版权声明:如果考研网所转载内容不慎侵犯了您的权益,请与我们联系800@exam8.com,我们将会及时处理。如转载本考研网内容,请注明出处。
官方
微信
扫描关注考研微信
领《大数据宝典》
下载
APP
下载万题库
领精选6套卷
万题库
微信小程序
帮助
中心
文章责编:zhangyuqiong