1、2 芒。待到成绩发榜日,谈笑间,功名扬。 忙,知识点,难相忘。慷慨激昂赴考场,做考题,心不慌。行云流水,答题露锋 自考学习路漫长,在图灵,为翱翔。早起奋斗,何人诉衷肠。通关宝典来帮 为自己的人生,揭开美丽的新篇章。 在通往知识的顶峰路上长满了荆棘,望你不畏艰险、克服困难、勇往直前! 经历风雨,风帆才能抵达成功的彼岸。 苟有恒,何必三更起五更眠;最无益,只怕一日曝十日寒。唯有日日坚持, 题型解析:本章节最常考的题型,用最直观的方式,领会答题的奥义。 握学习进度; 正文部分:以知识点形式划分,方便碎片化时间学习,各个击破,准确把 节内容; 章节思维导图:建立知识框架,才不会迷路方向,提纲挈领,快速
2、把握章 指明方向; 考点频率图:展现全书各章节的重要程度,为大家集中精力解决主要矛盾 全书为以下板块: 短的时间内掌握本教材核心内容提供了可能。 本通关宝典是根据官方教材,提炼出重要的考点、知识点,为广大学员在最 位教师的努力,为学员们准备的一份备考利器。 过对官方教材和考试大纲的透彻研究,总结出操作系统概论的核心考点。通过数 通关宝典(又称全书讲义),是图灵学院全体老师们结合近年考试动态,经 操作系统概论考试标准与考核内容 2 学习是一种信仰 3 模块四 基本分页存储管理方式 . 28 模块三 连续分配存储管理方式 . 26 模块二 程序的链接和装入 . 25 模块一 存储器的层次结构 .
3、24 Chapter 4 内存管理 . 24 模块四 死锁 . 23 模块五 多处理器调度 . 22 模块四 进程切换 . 22 模块三 实时系统中的调度 . 21 模块二 进程调度算法 . 21 模块一 进程调度的功能与时机 . 20 Chapter 3 进程调度与死锁 . 20 模块六 线程 . 18 模块五 进程通信 . 17 模块四 进程同步 . 13 模块三 操作系统内核 . 11 模块二 进程的控制 . 10 模块一 进程的描述 . 9 Chapter 2 进程管理 . 9 模块六 指令的执行 . 8 模块五 操作系统的体系结构 . 8 模块四 操作系统的功能 . 7 模块三 操作
4、系统的特征 . 6 模块二 操作系统的发展 . 5 模块一 什么是操作系统 . 5 Chapter 1 操作系统简介 . 5 操作系统概论考试标准与考核内容 . 2 操作系统概论 . 1 目 录 学习是一种信仰 3 4 模块六 磁盘管理 . 50 模块五 I/O软件原理 . 49 模块四 设备分配 . 48 模块三 缓冲管理 . 46 模块二 I/O控制方式 . 45 模块一 I/O系统的组成 . 44 Chapter 6 I/O 设备管理 . 44 模块三 文件系统的实现 . 42 模块二 目录 . 40 模块一 文件 . 38 Chapter 5 文件系统 . 37 模块七 Linux的伙
5、伴系统 . 37 模块六 分段存储管理 . 35 模块五 基于分页的虚拟系统 . 30 4 学习是一种信仰 5 ( 4)复杂性 ( 3)调度性 ( 2)无序性 ( 1)多道性 的目的。它的特点是: 业调入内存,使它们共享 CPU和系统中的各种资源,以达到提高资源利用率和系统吞吐量 “ 后备作业队列 ” 。由操作系统的作业调度程序按一定策略从后备作业队列中选择若干个作 多道批处理系统中,用户所提交的作业都先存放在外存中并排成一个队列,该队列称为 知识点三 多道批处理系统的特点与优缺点 P26 完成而无事可做,使得 CPU资源不能得到充分利用。 是单道批处理系统中,由于作业独占 CPU 和内存,当
6、作业进行 I/O 时, CPU 只能等待 I/O 单道批处理系统与无操作系统的计算机系统相比而言,减少了等待人工操作的时间。但 ( 3)单道性 ( 2)顺序性 ( 1)自动性 单道批处理系统内存中只有一道作业,可以自动成批处理作业,特点是: 知识点二 单道批处理系统的特点与缺点 P25 因等待人工操作暂停 运行,这样一种不能连续自动工作的状态。 穿孔卡片表示程序,没有用来存储程序的内存,无操作系统。整个计算机系统处于运行 第一代计算机( 1945 1955)使用电子管作为主要的电子器件,用插件板上的硬连线或 知识点一 无操作系统 P22 模块二 操作系统的发展 备管理。 从资源管理的观点看,操
7、作系统的功能可分为:处理器管理、存储管理、文件管理和设 知识点三 操作系统的功能 P22 ( 2)资源的管理者 ( 1)用户与硬件之间的接口 知识点二 操作系统的作用 P19 件的集合,可执行。 操作系统( OS)是一种复杂的系统软件,是不同程序代码、数据结构、数据初始化文 知识点一 操作系统的定义 P19 模块一 什么是操作系统 操作系统简介 Chapter 1 学习是一种信仰 5 6 ( 4)异步性:进程以不可预知的速度向前推进。 ( 3)虚拟:是指通过某种技术把一个物理实体变成若干逻辑上的对应物。 两种方式,即互斥共享和同时共享。 ( 2)共享:共享是指系统中的资源可供内存中多个并发执行
8、的进程共同使用。资源共享有 ( 1)并发:指两个或多个事件在同一时间间隔内发生。 知识点一 操作系统的特征 P28 模块三 操作系统的特征 机、工业控制设备、军工装备、游戏机、医疗设备和网络设备等。 嵌入式操作系统的应用领域有掌上电脑、智能手机、数码相机、自动售货机、自动取款 弱交互性、强稳定性、接口统一、低能耗。 ( 4)嵌入式操作系统:嵌入式操作系统的特征是小巧、实时性、可装卸、代码固化、 应用软件开发环境。 道程序处理,就是通常所说的支持多任务。微机操作系统为单个用户提供良好的应用环境和 ( 3)微机操作系统:微机操作系统也称个人机操作系统,现代微机操作系统都支持多 务和 Web服务。
9、网络同时为众多用户服务,允许用户共享硬件和软件资源。服务器可提供打印服务、文件服 ( 2)服务器操作系统:服务器操作系统是运行在网络服务器上的操作系统,可以通过 务:批处理、事务处理和分时处理。 ( 1)主机操作系统:主机操作系统是运行在大型主机上的操作系统,主要提供三类服 知识点六 操作系统产品现状 P27 可能兼有三者或其中两者的功能特点。 批处理系统、分时系统和实时系统是三种基本的操作系统类型,而一个实际的操作系统 ( 5)可靠性 ( 4)交互性 ( 3)及时性 ( 2)独立性 ( 1)多路性 它的特点是: 实时操作系统主要用于实时控制和实时信息处理领域。 知识点五 实时操作系统的特点和
10、应用领域 P27 端共享主机。 分时操作系统的优点是向用户提供了人机交互的方便性,使多个用户可以通过不同的终 分时操作系统的特点是多路性、独立性、及时性和交互性。 分时操作系统允许多个用户通过终端同时使用计算机。 知识点四 分时操作系统的特点和优点 P26 数量的比值。 提交给系统开始到作业完成为止的时间。平均周转时间是指所有作业的周转时间之和与作业 多道批处理系统的缺点是系统平均周转时间长,缺乏交互能力。周转时间是指从作业被 多道批处理系统的优点是能够提高 CPU、内存和 I/O设备的利用率和系统吞吐量。 6 学习是一种信仰 7 命令接口又可分为联机用户接口和脱机用户接口。 即系统调用。 系
11、统向最终用户提供命令行和图形用户接口,向程序员提供应用程序与操作系统之间的接口 为了方便用户使用操作系统,操作系统向用户提供了用户与操作系统之间的接口。操作 知识点五 提供用户接口 P33 文件。 入外存。防止未经核准的用户存取文件,防止冒名顶替存取文件,防止以不正确的方式使用 ( 3)文件的读、写管理和存取控制:根据用户的请求,从外存中读取数据或将数据写 ( 2)目录管理:为每个文件建立目录项并对众多目录项进行有效组织。 有助于提高访问文件的速度。 ( 1)文件存储空间的管理:为每个文件分配必要的外存空间,提高外存利用率,并能 知识点四 文件管理 P32 ( 4)设备独立性和虚拟设备。 (
12、3)设备处理 ( 2)设备分配 ( 1)缓冲管理 理应具有以下功能: 设备管理主要完成用户的 I/O请求,为用户分配 I/O设备。为了完成这些任务,设备管 知识点三 设备管理 P32 进程等操作。 制、进程同步、进程通信及进程调度。进程控制完成进程创建、撤销进程、唤醒进程和阻塞 进程可以被认为是程序的执行实体。进程管理功能主要包括进程的描述与组织、进程控 知识点二 进程管理 P32 扩充机制,以实现请求调入功能和置换功能。 统能够向用户提供比物理内存大的存储容量。为了能从逻辑上扩充内存,系统必须具有内存 ( 3)内存扩充:内存扩充的任务是借助虚拟存储技术,从逻辑上扩充内存容量,使系 地址,这个
13、转换的过程称为地址映射。 ( 3)地址映射: CPU执行程序过程中访问内存时,需要把程序的逻辑地址转变为物理 实现方式可以采用界限寄存器存放允许程序访问的地址区间的上限和下限值。 以保证系统的安全和稳定;二是确保每道用户程序都在自己的内存空间中运行,互不干扰。 ( 2)内存保护:内存保护的任务:一是使操作系统内核的空间不会被用户随意访问, 用于内存分配数据结构、内存分配功能和内存回收功能。 式,即静态分配方式和动态分配方式。为了实现内存分配,需要以下数据结构和功能支持: ( 1)内存分配:内存分配的主要任务是为每道程序分配内存空间。可采用两种分配方 存保护、地址映射和内存扩充功能。 存的利用率
14、,以及从逻辑上扩充内存以实 现虚拟存储。为此,内存管理应具有内存分配、内 内存管理的主要任务是为多道程序的运行提供良好的环境,方便用户使用内存,提高内 知识点一 内存管理 P29 模块四 操作系统的功能 学习是一种信仰 7 8 ( 2) 执行指令:取到的指令被放置在处理器的指令寄存器 IR中。指令中包含确定处 ( 1) 取指令:在每个指令周期开始时,处理器从存储器中取一条指令。 知识点二 取指令和执行指令 P38 一个单一指令需要的处理称为指令周期。 知识点一 指令周期 P37 模块六 指令的执行 核抽象的安全必须由用户来保证,这也增加了用户的负担。 动态可扩展结构的操作系统具有很好的扩展性和
15、灵活性。缺点是系统的安全性较低,内 也可称之为弹性结构。 动态可扩展结构的基本思想就是在运行过程中,能够动态地实现系统行为扩展的结构, 知识点五 动态可扩展结构模型 P37 统。 微内核结构的操作系统有两个发展方向:向通用操作系统的方向发展和嵌入式操作系 但是,微内核设计有一个严重的缺点是效率不高。 影响系统其他部分。另外,微内核结构完全适宜于网络环境及分布式计算模型。 是可靠性好;再者,微内核体积小,便于测试、管理和维护,而且修改服务器的代码也不会 微内核结构带来的好处是系统结构清晰,具有较高的灵活性、可靠性和可维护性;其次 间的交互。 包括处理机调度,存储管理和消息通信等,这些服务器借助于
16、微内核传递消息来实现相互之 内核之外作为一个独立的服务器进程来实现,在微内核中只保留了操作系 统最基本的功能, 微内核技术的核心思想是核心功能外移,即把传统操作系统内核中的一些组成部分放到 知识点四 客户 /服务器模型与微内核结构 P36 的两层,便于系统的维护和扩充。 系统的可读性、可靠性和可移植性都得到了增强。此外,对某一层的修改或替换只影响邻近 系统的实现、调试和测试。 “ 分层 ” 结构使操作系统中各模块间的组织和依赖关系清晰明了, 赖于它下层提供的服务而工作,不能访问上层所提供的服务。这样组织的好处是方便了操作 块都有相对固定的位置、相对固定的层次。层与层之间有严格的接口定义,并且每
17、一层只依 层次结构模型为系统中各个模块赋予了位置的理念。在操作系统的系统结构中,各个模 知识点三 层次结构模型 P35 环调用和死锁。 效率较高。缺点也很明显,由于各子程序间可以互相调用,系统结构关系复杂,容易引起循 序。因此,它的特点是结构简单,便于理解和实现,而且系统所有部分都集中在一个内核中, 系统各部分之间没有确定的位置概念,彼此间没有信息隐藏,允许任一子程序调用其它子程 提供一个完整的内核界面 系统调用。整个系统由若干具有一定独立功能的子程序组成, 单体结构模型中,所有的软件和数据结构都放置在一个逻辑模块中,对外层的用户程序 知识点二 单体结构模型 P34 的互斥访问,保护了系统数据
18、的安全。 这种系统的功能相当简陋,任意时刻系统中只能运行一个任务,这样保证了对系统信息 知识点一 简单的监控程序模型 P34 模块五 操作系统的体系结构 8 学习是一种信仰 9 进程有三种基本状态:就绪态、执行态、阻塞态。 知识点八 进程的 3种基本状态 P47 指针。 ( 4)进程控制信息:程序和数据的地址、进程同步和通信机制、资源清单,以及链接 ( 3)进程调度信息:进程状态信息、进程优先级和进程调度所需的其他信息。 令计数器、程序状态字 PSW和用户栈指针。 ( 2)处理机状态信息:进程控制块中保留的处理机状态信息通常包括通用寄存器、指 ( 1)进程标识符信息:进程标识符用于唯一标识一个
19、进程。 知识点七 进程控制块中的信息 P46 进程控制块是进程实体的一部分,是操作系统中最重要的数据结构。 知识点六 进程控制块的定义 P46 ( 2)一个程序可以对应多个进程。 ( 1)进程总是对应至少一个特定的程序。 进程与程序的联系: ( 2)进程是有生命期的,而程序没有生命期,可以做文档资料,长期保存。 ( 1)进程是动态的,程序是静态的; 进程与程序的区别: 知识点五 进程和程序的比较 P45 ( 5) 结构特征。 ( 4) 异步性。 ( 3) 独立性。 ( 2) 动态性。 ( 1) 并发性。 知识点四 进程的特征 P45 定义 2:进程是由正文段、用户数据段及进程控制块共同组成的执
20、行环境。 定义 1:进程是允许并发执行程序在某个数据集合上的运行过程。 知识点三 进程的定义 P44 ( 2)失去封闭性。 程序的并发执行是指在同一时间间隔内运行多个程序。具有的特点如下:( 1)间断性; 知识点二 程序的并发执行 P43 点如下:( 1)顺序性;( 2)封闭性;( 3)可再现性。 先进入内存的程序先执行,在一个程序执行完毕之前,不能执行其他程序。具有的特 知识点一 程序的顺序执行 P42 模块一 进程的描述 进程管理 Chapter 2 令或数据传送操作;算术运算操作或逻辑运算操作;控制操作。 4 类:处理器与存储器之间的指令或数据传送操作;处理器与 I/O 设备之间的指 理
21、器将要采取动作的位,处理器解释指令并执行要求的动作,这些动作可分为 学习是一种信仰 9 10 知识点三 进程的唤醒 P53 程序,从就绪进程中选择进程为其分配 CPU。 ( 1)将进程的状态改为阻塞态;( 2)将进程插入相应的阻塞队列;( 3)转进程调度 完成进程阻塞的简化过程: ( 1)请求系统服务;( 2)启动某种操作;( 3)新数据尚未到达;( 4)无新工作可做。 通常在下列情况下需要进行进程的阻塞和唤醒操作: 知识点二 进程的阻塞 P52 进程插入就绪队列。 ( 1)申请空白 PCB;( 2)为新进程分配资源;( 3)初始化进程控制块;( 4)将新 创建进程的步骤: ( 1)用户登录;
22、( 2)作业调度;( 3)提供服务;( 4)应用请求。 通常在下列情况下需要创建新进程: 知识点一 进程的创建 P51 模块二 进程的控制 进程队列。 ( 3) 进程队列:当系统中有很多进程时,可以把进程控制块用队列组织起来,形成 一个 PCB的物理块。 ( 2) 索引方式:根据所有进程的状态,建立几张索引表,索引表的每一个表项指向 ( 1) 链接方式:具有相同状态的进程的进程控制块用其中的链接字链接成一个队列。 知识点十 进程的组织 P49 僵死状态;僵死 _撤销状态。 可运行状态;可中断的等待状态;不可中断的等待状态;暂停状态;跟踪状态; ( 2) Linux 2.6.11 可运行状态;可
23、中断的等待状态;不可中断的等待状态;暂停状态;僵死状态。 ( 1) Linux 2.4.30 知识点九 Linux的进程状态 P48 发生 知识点九 等待的事件 等待事件 阻塞态 进程调度 就绪态 执行态 时间片用完 三种状态之间的转换关系如图所示: 10 学习是一种信仰 11 以便中断返回时,能把这个地址恢复到程序计数器 PC中,使被中断的程序从 ( 1) 系统关闭中断,保护断点,把当前要执行的下一条指令的地址保存到内存中, 知识点六 单重中断的处理过程 P56 断信号的到来。若有,则转中断处理过程。 ( 2)相应中断的时机:对于外部中断, CPU 每执行完一条指令都会检测是否有外部中 (
24、1)响应中断的条件:开中断是响应中断的前提。 知识点五 中断响应 P56 部事件。 ( 1) 人为设置中断;( 2)程序性事故;( 3)硬件故障;( 4) I/O设备;( 5)外 知识点四 引起中断的原因 P56 ( 2)异步中断(外部中断):外部可屏蔽中断和外部不可屏蔽中断。 ( 1)同步中断(内部中断或异常) 知识点三 中断的类型 P56 生的电信号相对应。 中断是改变处理器执行指令顺序的一种事件,这样的事件与 CPU芯片内外部硬件电路产 知识点二 中断的定义 P55 ( 2)资源管理功能:进程管理、存储器管理和设备管理。 ( 1)支撑功能:中断处理、时钟管理和原语操作。 操作系统的功能包
25、括: 率高的模块,常驻内存。 操作系统内核是计算机硬件的第一次扩充,内核执行操作系统与硬件关系密切,执行频 知识点一 操作系统内核的定义和功能 P55 模块三 操作系统内核 PCB 移出。 进程有子孙进程,在大多数情况下需要终止子孙进程。( 4)释放资源。( 5)将终止进程的 ( 1)从进程 PCB中读进程状态;( 2)若进程正在执行,则终止进程的执行;( 3)若 完成进程终止的一般过程: ( 3)父进程退出,如果父进程终止,那么操作系统不允许子进程继续。 ( 1)子进程使用了超过它所分配到的一些资源;( 2)分配给子进程的任务已不再需要; 父进程终止其子进程的原因可能有以下几个: 一个进程调
26、用适当的系统调用,终止另外一个进程; ( 1)当进程正常执行完毕,调用终止进程的系统调用,请求操作系统删除该进程;( 2) 通常在下列情况下,进程会被终止: 知识点四 进程的终止 P53 ( 3)将进程插入就绪队列。 ( 2)将进程状态由阻塞态改为就绪态; ( 1)将进程从阻塞队列中移出; 学习是一种信仰 11 12 知识点十一 系统调用 P62 超时;对 CPU的使用情况记账;递减报警计数器。 期和时间;递减当前进程在一个时间片内的剩余执行时间,并检查是否为零,防止进程运行 次时钟中断信号,操作系统内核要执行时钟驱动程序,时钟驱动程序完成以下功能:维护日 ( 2)时钟软件 时钟驱动程序:时钟
27、驱动程序也称为时钟中断处理程序,每产生一 持寄存器。 中断,测量逝去的时间,并触发与时间有关的操作。主要由 3部分构成:晶振、计数器和保 ( 1) OS时钟管理硬件(可编程间隔定时器 RIT):功能是按指定的时间间隔产生时钟 知识点十 操作系统的时钟机制 P60 实时时钟、 OS时钟和应用程序之间的关系如图: 大部分 PC中有两个时钟源,分别称为实时时钟和 OS时钟。 知识点九 计算机系统中的时钟 P59 软件都需要时钟机制的支持。 时钟是计算机系统的脉搏。计算机中当前时间显示功能、即时通信程序等与时间相关的 知识点八 时钟的重要性 P59 ( 2)中断描述表:是一个系统表,每一个中断或异常与
28、向量相联系。 称为中断向量。 ( 1)中断向量:中断向量是对不同中断源到来的信号编号,该编号是一个无符号整数, 知识点七 中断向量和中断描述符表 P58 ( 4) 恢复现场,开中断, CPU返回断点处继续执行被中断的程序。 理子例程,完成本次中断处理的特定处理工作。 址相关的信息,由这些信息得到中断处理子例程的入口地址,以执行中断处 ( 3) 保护完现场后,要根据中断向量到中断向量表中找到与中断处理子例程入口地 ( 2) 转中断处理程序。 断点处开始继续执行。 12 学习是一种信仰 13 ( 1) 整型信号量的 wait和 signal操作 过两个特定的原子操作 wait和 signal来改变
29、。 临界资源,可定义一个用于互斥的整型信号量,并将其初始化为 1。整型信号量的值只能通 有可用资源;如果整型量 O,说明资源忙,进程必须等待。对于一次只允许一个进程访问的 能的原理是定义一个整型变量,用整型变量值来标记资源的使用情况。如果整型量 O,说明 整型信号量是表示共享资源状态且只能由特殊的原子操作改变的整型量,其完成同步功 知识点三 整型信号量机制 P67 ( 4) 让权等待 ( 3) 有限等待 ( 2) 忙则等待 ( 1) 空闲让进 知识点二 同步机制应遵循的准则 P66 程协调执行。相互合作的进程可能同时存在资源共享的关系。 是必须以互斥方式访问的共享资源。二是对具有相互合作关系的
30、进程,保证相互合作的诸进 任务,一是对具有资源共享关系的进程,保证诸进程以互斥的方式访问临界资源。临界资源 在多道程序环境下,进程之间可能存在资源共享关系和相互合作关系。进程同步有两个 知识点一 进程同步的基本概念 P65 模块四 进程同步 ( 5) 信息维护类系统调用 ( 4) 通信类系统调用 ( 3) 设备管理类系统调用 ( 2) 文件操作类系统调用 ( 1) 进程控制类系统调用 知识点十二 系统调用的类型 P63 比一般函数调用多了一些系统开销。 在用户态;系统调用与一般函数调用的执行过程不同;系统调用要进行 “ 中断处理 ” , ( 3) 系统调用与一般函数的区别:系统调用运行在系统态
31、 (核心态 ),而一般函数运行 地址空间,当 CPU执行系统核心代码时,称进程处于系统态执行。 码时,称该进程在用户态执行;系统态执行:系统空间是指含有一切系统核心代码的 他进程的用户空间,只有系统程序才能访问其他用户空间。当 cpu执行用户空间的代 ( 2) 用户态执行:用户空间是指用户进程所处的地址空间,一个用户进程不能访问其 UNIX系统中,系统调用多使用 C语言提供的库函数作为接口。 用户能由此得到核心程序的服务。系统调用是系统程序与用户程序之间的接口,在类 ( 1) 定义:系统调用是一群预先定义好的模块,它们提供一条管道让应用程序或一般 学习是一种信仰 13 14 知识点四 记录型信
32、号量机制 P67 ( 4) Linux中的整型信号量 ( 3) 用整型信号量实现进程的协调 可访问时 ,wait才能正常结束使进程进入 CS,如图所示: 斥信息量 mutex,将初始值置为 1,然后将 CS 放入 wait 和 signal 之间。当 CS 用整型信号量实现进程互斥的思想是:为必须互斥访问的临界资源 CS定义一个互 ( 2) 用整型信号量实现进程互斥 14 学习是一种信仰 15 ( 4) 同步程序: ( 3) 信号量的设置:设置一个互斥的信号量 mutex初值为 1;设置两个资源信号量。 消费者进程的 “ 协调 ” 。 ( 2) 需要解决的问题:实现任意两个进程对缓冲池的互斥访
33、问;实现对生产者进程和 ( 1) 问题描述:生产者进程生产消息,并将消息提供给消费者进程消费。 知识点六 生产者 消费者问题的描述 P74 ( 2) AND型信号量机制的实现 ( 1) AND型信号量机制的引入 知识点五 AND型信号量机制 P73 ( 2)记录型信号量的 wait和 signal操作 ( 1)记录型信号量的数据类型 学习是一种信仰 15 16 ( 3) 同步进程: 用于实现读操作与写操作的互斥,以及写操作与写操作的互斥。 rmulex 用于对多个进程共享的全局变量 readcount 的互斥访问;互斥信号量 wmutex ( 2) 信号量的设置:全局变量 readcount用
34、于对进入共享区的读进程计数;互斥信号量 程写 D区,且有进程写 D区时,不能有任何其他进程读或写 D区。 ( 1) 问题描述: D是多个进程共享的数据区,允许多个进程同时读 D区,仅允许一个进 知识点七 读者 写者问题的描述 P74 16 学习是一种信仰 17 知识点二 消息传递系统 P80 区,进程可以通过对共享存储区中的数据的读或写来实现通信。 ( 2)基于共享存储区的通信方式。为了传输大量数据,在存储器中划出一块共享存储 构,以实现进程间的信息交换, ( 1)基于共享数据结构的通信方式。在这种通信方式中,要求诸进程公用某些数据结 够通过这些空间进行通信,共享存储系统可分为两种类型。 在共
35、享存储器系统中,相互通信的进程共享某些数据结构或共享存储区,进程之间能 知识点一 共享存储器系统 P80 模块五 进程通信 过程不同的方法来处理它们。 ( 3) 管程是一种编程语言的构件,所以编译器知道它们很特殊,并可以调用与其他 ( 2) 每次只有一个进程调用管程执行。 ( 1) 管程是可供程序员调用的软件包。 对管程的说明: 管程是描述共享资源的数据结构和在数据结构上的共享资源管理程序的集合。 知识点八 管程的定义和说明 P77 学习是一种信仰 17 18 知识点四 线程控制块 P82 知识点三 线程的 3种基本状态 P82 ( 2) 内核级线程 ( 1) 用户级线程 知识点二 线程的分类
36、 P82 线程是进程的一个实体,是被系统独立调度和分派的基本单位。 知识点一 线程的概念 P81 模块六 线程 的进程通过调用接收原语将该进程消息缓冲队列中的消息复制到自己的消息接收区。 语将消息发送给接收进程,发送原语将发送缓冲区插入接收进程的消息缓冲队列。接收消息 一个消息缓冲区,将要发送的消息从发送进程的发送区放入消息缓冲区。然后,调用发送原 接收原语 .每个进程都有自己的消息缓冲队列和消息缓冲区。发送进程发送消息时,先申请 消息缓冲队列机制广泛用于本地进程之间的通信。该机制包括数据结构、发送原语和 知识点四 消息缓冲队列 P81 (读)。 手符流的形式将大量的数据送入管道 (写 )。接
37、受管道输出的接收进程,从管道中接收数据 其中的消息没有固定长度,能用于进程间大量的信息通信。向管道提供输人的发送进程以字 管道是连接读写进程的一个特殊文件,也被称为管道文件。管道文件存在于外存中, 知识点三 管道通信 P81 根据源进程向目标进程传递消息方式的不同,可分为直接通信方式和间接通信方式。 种方式对应用程序隐藏了通信实现的细节,使通信过程对用户是透明的。消息传递系统中, 在消息传递系统中,进程间通过操作系统提供的一组通信程序传递格式化的消息。这 18 学习是一种信仰 19 知识点十 用户线程唤醒过程 P86 ( 5)将控制传递给进程调度程序,重新进行进程调度。 ( 4)将该线程所属进
38、程的进程控制块插入相应的进程阻塞队列。 ( 3)将该线程所属进程的状态改为阻塞态。 ( 2)将该线程控制块插入相应的线程阻塞队列。 ( 1)停止该线程的执行,将该线程的状态改为阻塞态。 知识点九 用户线程阻塞过程 P86 ( 3)新数据尚未到达。 ( 2)启动某种操作。 ( 1)请求系统服务。 知识点八 引起线程阻塞的事件 P85 ( 2)内核线程的调度与切换。 ( 1)用户线程的调度与切换。 知识点七 进程的调度与切换 P85 ( 3)将被终止线程的 TCB从所在队列 (或链表 )中移出,等待其他程序来搜集信息。 用于指示该线程被终止后应重新执行线程调度程序。 ( 2)若被终止线程正处于运行
39、状态,应立即终止该线程的执行,并置调度标志为真, ( 1)根据被终止线程的标识符,从 TCB集合中检索出该线程的状态。 线程终止的过程: ( 3)外界干预。 ( 2)异常结束。 ( 1)正常结束。 原因: 知识点七 线程的终止 P84 ( 2)内核线程的创建:内核线程的创建是由内核完成的。 ( 1)用户线程的创建:通过调用线程库中的实用程序完成的。 知识点六 线程创建 P84 ( 5) 系统开销。 ( 4) 并发性。 ( 3) 通信关系。 ( 2) 地址空间资源。 ( 1) 资源和调度。 知识点五 线程与进程的关系 P82 ( 3) 组织方式:链接方式。 ( 2) 线程数据块包含线程标识信息、
40、处理机状态信息、线程调度信息和线程控制信息。 数据结构就是线程数据块。 ( 1) 定义:每个线程都由一个数据结构表示,包括它的基本状态、标识及记账信息。这个 学习是一种信仰 19 20 时,系统都会通过执行进程调度程序重新进行进程调度。 占式调度的系统中有比当前运行进程优先级更高的进程到来、当前运行进程的时间片用完 当一个进程运行结束(包括正常结束和异常结束)、进程阻塞、中断返回、在支持抢 知识点二 进程调度的时机 P88 进程(在 Linux中是可执行进程)中为当前空闲的 CPU选择在其上运行的新进程。 的实现从调用内核函数 schedule()开始。进程调度的功能是按照某种策略和算法从就绪
41、态 进程调度功能由操作系统内核的进程调度程序完成,在 Linux 内核中,进程调度功能 知识点一 进程调度的功能 P88 模块一 进程调度的功能与时机 进程调度与死锁 Chapter 3 线程通信是指线程之间的信息交换。 知识点十三 线程通信 P86 线程同步的机制有原语操作和信号量机制。 进行同步,保证诸线程以互斥的方式访问临界资源,以使它们互不干扰且不破坏数据结构。 线程对资源的任何修改都会影响同一个进程中其他线程的环境。因此,需要对各种线程活动 一个进程中的所有线程共享同一个地址空间和诸如打开的文件之类的其他资源。一个 知识点十三 线程的同步 P86 ( 3)将该线程的线程控制块插入线程
42、就绪队列。 ( 2)将该线程的线程控制块从线程阻塞队列中移出。 ( 1)将该线程状态由阻塞态改为就绪态。 知识点十二 内核线程唤醒过程 P86 ( 3)将控制传递给线程调度程序,重新进行线程调度。 ( 2)将该线程控制块插人相应的线程阻塞队列。 ( 1)停止该线程的执行,将该线程的状态改为阻塞态。 知识点十一 内核线程阻塞过程 P86 ( 6)将该线程的线程控制块插人线程就绪队列。 ( 5)将该线程的线程控制块从线程阻塞队列中移出。 ( 4)将该线程状态由阻塞改为就绪。 ( 3)将该线程所属进程的进程控制块插入进程就绪队列。 ( 2)将该线程所属进程的进程控制块从进程阻塞队列中移出。 ( 1)
43、将该线程所属进程的状态由阻塞改为就绪。 20 学习是一种信仰 21 ( 1) 提供必要的调度信息:就绪时间、开始截止时间和完成截止时间、处理时间、资源 知识点一 实现实时调度的基本条件 P94 模块三 实时系统中的调度 在需要服务时应该进入哪个队列的算法。 优先权队列的算法、用以确定进程何时转移到较低优先权队列的算法、用以确定进程 据进程优先权确定进程应该进入哪个就绪队列的算法、用以确定进程何时转移到较高 时间片。多级反馈队列算法的设计要考虑以下几个方面的问题:就绪队列的数量、根 ( 6) 多级反馈队列调度:建立多个优先权不同的就绪队列,为每个队列赋予大小不同的 自己的调度算法。 的内存大小、
44、进程优先权和进程类型,进程会被永久地分配到一个队列。每个队列有 ( 5) 多级队列调度:将就绪队列分成多个独立队列,根据进程的某些属性,如需要占用 算法的性能很大程度上依赖于时间片的大小。 系统对响应时间的要求、就绪队列中进程的数目、系统的处理能力。时间片轮转调度 程序终止当前进程的执行,并将它送到就绪队列的队尾。时间片大小的确定应考虑: 每次调度时把 CPU分配给队首进程,并令其执行一个时间片。当时间片用完时,调度 ( 4) 时间片轮转调度算法:系统将所有的就绪进程按先来先服务的原则,排成一个队列, 称饥饿问题。解决方案之一是老化技术。 的类型有静态优先权和动态优先权。优先权调度算法的一个主
45、要问题是无穷阻塞,或 ( 3) 优先权调度算法:包含非抢占式优先权调度算法和抢占式优先权调度算法。优先权 转时间和带权平均周转时间。 不一定能真正做到短进程优先。性能分析可以得出优先调度算法能降低系统的平均周 对长进程不利、不能保证紧迫进程的及时处理、进程的长短根据用户的估计而定,故 调度。它的优点是能有效降低进程的平均等待时间,提高系统的吞吐量。它的缺点有: 给它,使它立即执行并一直执行完成,或发生某事件而被阻塞放弃处理机时,再重新 ( 2) 短进程优先调度算法:从就绪队列中选择估计运行时间最短的进程,将处理机分配 分配 CPU。适合长进程,不利于短进程,短进程等待时间相对运行时间而言太长。
46、 ( 1) 先来先服务调度算法:从就绪队列的 队首选择最先到达就绪队列的进程,为该进程 知识点二 调度算法 P89 ( 5) 处理机利用率好 ( 4) 系统吞吐量高 ( 3) 截止时间的保证 ( 2) 响应时间快 ( 1) 周转时间短 知识点一 选择调度方式和算法的若干准则 P88 模块二 进程调度算法 学习是一种信仰 21 22 知识点一 多处理器系统的类型 P98 模块五 多处理器调度 ( 7) 恢复被调度程序选中的进程的硬件上下文。 ( 6) 更新内存管理的数据结构。 ( 5) 执行通过进程调度程序选择的新进程,并更新该进程的进程控制块。 ( 4) 将被替换进程的进程控制块移到就绪队列或
47、阻塞队列。 ( 3) 修改进程状态,把执行态改为就绪态或者阻塞态。 ( 2) 跟新被替换进程的进程控制块。 ( 1) 保存包括程序计数器和其他寄存器在内的 CPU上下文环境。 知识点一 进程切换步骤 P98 模块四 进程切换 分配给该进程。 度优先算法时,调度程序在调度时机到来时,每次选择松弛度 L最小的进程,把 CPU ( 2) 最低松弛度优先算法:松弛度用来表示一个实时进程的紧迫程度。在使用最低松弛 ( 1) 最早截止时间优先算法:根据进程的开始截止时间确定进程的优先级。 知识点二 常用的几种实时调度算法 P95 ( 4) 具有快速切换机制:对外部中断的快速响应能力和快速的进程切换能力。
48、为基于时钟中断的抢占和立即抢占。 而令高优先权进程立即投入运行。抢占式调度算法根据抢占 CPU的时机不同,可以分 ( 3) 采用抢占式调度机制:当一个优先权更高的进程到达时,允许将当前进程暂时挂起, 单处理机情况下必须满足的限制条件: 单处理机情况下必须满足的限制条件: 的后果。 够强,处理速度不够快,从而使某些实时进程不能得到及时处理,可能发生难以预料 ( 2) 系统处理能力强: 在实时系统中,通常有多个实时进程,若处理机的处理能力不 要求、优先级。 22 学习是一种信仰 23 避免死锁的方法是把系统的资源分配状态分为安全状态和不安全状态,只要资源分配使 知识点五 死锁的避免 P104 (
49、3) 给用户编程带来了麻烦 ( 2) 资源浪费 ( 1) 限制了新设备的增加 这种方法的缺点有: ( 3) 摒弃环路等待条件 ( 2) 摒弃不剥夺条件 ( 1) 摒弃请求和保持条件 预防死锁可以通过摒弃下列三个必要条件之一来实现。 知识点四 死锁的预防 P103 处理死锁的基本方法有预防死锁、避免死锁、检测并解除死锁和忽略死锁问题。 知识点三 处理死锁的基本方法 P102 ( 4) 环路等待条件 ( 3) 不剥夺条件 ( 2) 请求和保持条件 ( 1) 互斥条件 知识点二 产生死锁的必要条件 P101 产生死锁的原因为:竞争共享资源且分配资源的顺序不当。 知识点一 产生死锁的原因 P101 模
50、块四 死锁 应用程序的运行速度和避免了进程切换。 每个线程一个,这组处理器供该应用程序专用,直至应用程序完成。优点是加速了 ( 3) 专用处理器分配:在一个应用程序执行期间,专门为该应用程序分配一组处理器, 的应用程序平均分配处理器时间和面向所有的线程平均分配处理器时间。 ( 2) 成组调度:优点是减少线程切换和减少调度开销。时间分配有两种方式:面向所有 程切换频繁。 ( 1) 自调度:优点是易移植和有利于提高 CPU的利用率。缺点是瓶颈问题、低效性和线 知识点三 进程(线程)调度方式 P100 ( 2) 非对称多处理器系统中的进程分配方式:主 从式的进程分配。 ( 1) 对称多处理器系统中的