1.1、什么是多道程序程序设计技术-----P9
在计算机主存中同时存放几道相互独立的程序。这些程序在管理程序控制之下,相互穿插地运行。当某道程序因
某种原因不能继续运行下去时(如等待外部设备传输数据),管理程序便将另一道程序投入运行。这样可以使 CPU 和
各外部设备尽可能的并行操作,从而提高计算机的使用效率。
1.2、多道运行的特征
多道:计算机主存中同时存放几道相互独立的程序
宏观上并行:同时进入系统的几道程序都处于运行的过程中,即他们都开始运行,但都未运行完毕
微观上串行:从微观上看,主存中的多道程序轮流或者分时地占用处理机,交替执行。
1.3、多到程序的工作情况
2.1、操作系统的概念------P12、13
操作系统是一个大型的程序系统,它负责计算机系统软、硬件资源的分配;控制和协调并发活动;提供用户接
口,使用户获得良好的工作环境。
2.2、操作系统的特性
并发:能处理多个同时性活动的能力
共享:多个计算任务对系统资源的共同享用
不确定性:操作系统能处理大量的、随机的事件序列,使各用户的计算任务正确地完成。
2.3、操作系统的主要功能-----P13
对系统资源实施管理和调度;控制和协调并发活动;对外提供用户界面
2.4、操作系统的基本类型-----P17-23
批量操作系统,分时操作系统,实时操作系统,个人计算机操作系统,多处理机系统,网络操作系统,分布式系
统
3、操作系统虚拟机的指令系统-----P26-27
是用户和系统进行通信的手段和界面
分为:操作命令 (又称命令接口) 和 系统功能调用 (又称程序接口)
4.1、处理机的特权级--------P31
处理机的态,又称为处理机的特权级,是中央处理机的工作状态。当前处理机正在执行哪类程序,决定处理机的
态。
① 管态 (Supervisor mode):操作系统的管理程序执行时机器所处的状态,又称处理机的特权级。在此状态下处理
机可使用全部指令(包括一组特权指令);使用全部系统资源(包括整个存储区域)。
② 用户态(User mode)用户程序执行时机器所处的状态称为用户态。在此状态下禁止使用特权指令,不能直接取用
资源与改变机器状态,并且只允许用户程序访问自己的存储区域。
4.2、管态与用户态的区别-------ppt 第二章 16
4.3、区分处理机状态的目的
保护操作系统
7.1、中断概念--------P32
所谓中断是指某个事件 (例如电源掉电、定点加法溢出或 I/O 传输结束等) 发生时,系统中止现行程序的运行、引
出处理事件程序对该事件进行处理,处理完毕后返回断点继续执行的过程。
7.2、中断响应概念及其实质-------ppt 第二章 28
中断相应概念:中断响应是当中央处理机发现已有中断请求时,中止现行程序执行,并自动引出中断处理程序的
过程。
中断相应实质是:交换指令地址及处理机的状态信息
7.3、中断处理过程----------P36
1)保护现场和传递参数
2)执行相应的中断(或自陷)服务历程
3)恢复和退出中断
8.操作系统启动步骤------P40-43
1)独立引导过程:
① 初始引导
系统加电;
执行初始引导程序,对系统硬件和配置进行自检,保证系统没有硬件错误;
从硬盘中读入操作系统引导程序,并将控制权交给该程序模块。
② 引导程序执行
引导程序执行,将操作系统核心文件读入内存,并将控制交给核心的初始化程序。
③ 核心初始化
--初始化系统数据结构及参数
系统加电建立进程有关的数据结构 ;
获得自由存储空间的容量,建立存储管理的数据结构 ;
建立系统设备和文件系统的数据结构 ;
初始化时钟。
④ 系统初始化
完善 OS 的操作环境,装载命令处理程序 (或图形用户界面),并初始化;
在多用户系统中,为每个终端建立命令解释进程,使系统处于命令接收状态。
2)Linux 系统初启:
Linux 系统是以滚雪球的方式启动
加电或复位 → BIOS 的启动 → Boot
Loader → OS 初始化
① 系统加电或复位
对主存中所有的数据清零,对内存进行校验,若无错,
CS:IP → BIOS 入口。
② BIOS 启动
---在 ROM 中的引导程序放在固定位置:FFFF:0000
上电自检;
对硬件设备进行检测和连接,并将测得的数据送入 BIOS 数据区;
从盘中读入 Boot
制权交 Boot
③ Loader(引导程序)
功能:将 OS 读入内存,并将控制权交给 OS 的初始化程序。
④ 系统核心初始化( Setup.s)
Loader。
CPU 从这里开始执行。
Loader (引导程序):从硬盘启动时,读入零柱面零磁道 1 扇区 MBR (MasterBoot Record),将控
9.1、什么是系统调用-----P47
系统功能调用是用户在程序一级请求操作系统服务的一种手段,它是带有一定功能号的“访管指令”。其功能是
由操作系统中的程序完成的,即由软件方法实现的。
9.2、怎么进行系统调用-----P48
10.1、为什么引入进程----P50
为了描述线代操作系统的并行性
10.2、顺序程序的特点------P51
顺序性 —— 处理机的操作严格按照程序所规定的顺序执行。
封闭性 —— 程序一旦开始执行,其计算结果不受外界因素的影响。
可再现性 —— 程序执行的结果与它的执行速度无关 (即与时间无关),而只与初始条件有关。
10.3、程序与计算的区别-----P50
程序是为解决某一问题而设计的一系列指令的集合,是算法的形式化描述。程序的一次执行过程称为一个计算,
计算也可以描述为:对某一有限是数据的集合所施行的、目的在于解决某一问
题的一组有限的操作集合,成为一个计算,计算由若干简单操作所组成。
10.4、进程定义---------P55
所谓进程,就是一个程序在给定活动空间和初始环境下,在一个处理机上的执行过程。
10.5、进程与程序的区别-------P55
① 程序是静态的概念,进程是动态的概念;
② 进程是一个独立运行的活动单位;
③ 进程是竞争系统资源的基本单位;
④ 一个程序可以对应多个进程,一个进程至少包含一个程序。
10.6、进程的状态及变迁---------P56、57
① 运行状态(running):该进程已获得运行所必需的资源,它的程序正在处理机上执行。
② 等待状态(wait):进程正等待着某一事件的发生而暂时停止执行。这时,即使给它 CPU 控制权,它也无法执
行。
③ 就绪状态(ready):进程已获得除 CPU 之外的运行所必需的资源,一旦得到 CPU 控制权,立即可以运行。
11.1、并发与并行的区别
并发:宏观上,在一个时间段内,多到程序同时执行,单都没有执行结束
并行:多到程序在某一时刻同时执行
11.2、并发程序的特点-------P53
① 失去程序的封闭性和可再现性
② 程序与计算不再一一对应
③ 程序并发执行的相互制约
12、原语---------P59-61
创建原语:创建一个具有指定标识符的进程,建立进程的 PCB 结构。
create (name,priority),name 为被创建进程的标识符,priority 为进程优先级
撤消原语:撤消当前运行的进程。将该进程的 PCB 结构归还到 PCB 资源池,所占用的资源归还给父进程,从总链
队列中摘除它,然后转进程调度程序。
Kill (或 exit)
阻塞原语:中止调用进程的执行,并加入到等待 chan 的等待队列中;最后使控制转向进程调度。
susp(chan),入口参数 chan:进程等待的原因
唤醒原语:当进程等待的事件发生时,唤醒等待该事件的进程。
wakeup(chan),入口参数 chan:进程等待的原因。
13.1、进程的同步与互斥---------P62-66
同步:并发进程在一些关键点上可能需要互相等待与互通消息,这种相互制约的等待与互通消息称为进程同步。
互斥:在操作系统中,当某一进程正在访问某一存储区域时,就不允许其他进程来读出或者修改存储区的内容,
否则,就会发生后果无法估计的错误。进程间的这种相互制约关系称为互斥。
互斥,又称间接制约关系.同步,又称直接制约关系.
1.互斥是指某一资源同时只允许一个访问者对其进行访问,具有唯一性和排它性。但互斥无法限制访问者对资源的
访问顺序,即访问是无序的。
2.同步是指在互斥的基础上(大多数情况),通过其它机制实现访问者对资源的有序访问。
3.同步其实已经实现了互斥,所以同步是一种更为复杂的互斥。
4.互斥是一种特殊的同步。
13.2、临界区与临界资源--------P63-64
临界区:临界区是进程中对公共变量 (或存储区)进行审查与修改的程序段,称为相对于该公共变量的临界区。
临界资源:一次仅允许一个进程进行使用的资源成为临界资源,所使用的资源一般为共享的硬件资源或是共享的
公共变量
14、锁与信号量,PV 操作------P66-74----重要内容,应该会出大题
概念
ppt 第四章 49,50 讲 PV 的图
锁,w 表示锁,为 1 是上锁状态,为零是未锁状态,如果进程使用某一资源,锁为 0,则先上锁再使用资源,如果
为 1,则需等待资源被释放
PV 操作:放 ppt 第四章 49,50 讲 PV 的图
p:s 值减 1,如果相减的结果大于或等于 0 则进程继续执行,如果相减的结果小于零,该进程被封锁,并将它插
入到该信号灯的等待队列中,然后转进程调度程序
V:s 值加 1,如果相加的结果大于零,进程继续执行,如果相加的结果小于或者等于零,则从该信号灯等待队列
中移出一个进程,解除它的等待状态,然后返回本进程继续执行。
互斥怎么用锁进行实现
互斥与同步怎么用 PV 操作实现---------P69-74 加上老师上课讲的题,以及后来的习题 4-13,以及 ppt 第四章 58,59
以及前后的一些内容
理解一下锁与 PV 操作的表述能力有何不同
看一下多缓冲区,单缓冲区的 PV 操作的题
15.1、进程通信概念--------P75
进程通信是指进程之间直接以较高的效率传递较多数据的信息交互方式。
15.2、进程通信的方式-------P75-76
消息缓存通信:
在消息通信中,接收方和发送方之间有明确的协议和消息格式 。
消息缓冲通信方式包括消息缓冲、发送原语和接收原语。
信箱通信:
邮箱通信就是由发送进程申请建立一与接收进程链接的邮箱。发送进程把消息送往邮箱,接收进程从邮箱中取出
消息,从而完成进程间信息交换。
在信箱通信中,需要定义信箱结构,还包括消息发送和接收功能模块,提供发送原语和接收原语。
信箱通信中,所使用的信箱可以位于用户空间中,是接收进程地址空间的一部分;也可以放置在操作系统的空间
中。
16.1、什么是线程----------P77
线程是比进程更小的活动单位,它是进程中的一个执行路径。
16.2、线程的特点----------P78 & ppt 第四章 75
线程是比进程更小的活动单位,它是进程中的一个执行路径。创建一个线程比创建一个进程开销要小得多。
实现线程间通信十分方便,因为一个进程创建的多个线程可以共享地址区域和数据。
线程是一个动态的概念。
在进程内创建多线程,可以提高系统的并行处理能力,加快进程的处理速度。
16.3、为什么要引入线程---------P77 中间扯的那一长段话好好看看,理解下如果没有会出现什么问题
为了提高处理机的并行操作能力,提出了多线程的概念
一个进程可以有多条执行路径即线程。在一个进程内部就有多个可以独立活动的单位,可以加快处理的速度,进
一步提高系统的并行处理能力。
17.1、进程调度算法-------P89-92
进程优先数调度算法:预先确定各进程的优先数,系统把处理机的使用权赋予就绪队列中具备最高优先权 (优先数
和一定的优先级相对应)的就绪进程。
循环轮转调度算法:当 CPU 空闲时,选取就绪队列首元素,赋予一个时间片,当时间片用完时,该进程转为就绪
态并进入就绪队列末端。
多级反馈队列调度
17.2、调度用的进程状态变迁图-------PPt 第四章 117
18、静态分配与动态分配概念,特点,区别------P98
(1) 资源的静态分配:系统对作业一级采用资源静态分配方法。系统在调度作业时,根据作业所需资源进行分配;
并在作业运行完毕 时,收回所分配的全部资源。这种分配通常称为资源的静
态分配。
(2) 资源的动态分配:系统对进程一级采用资源动态分配方法。系统在进程运行中,根据进程提出的资源需求,进
行资源的动态分配和回收。这种分配通常称为资源的动态分配。
19.1、磁盘调度算法------P101-105
先请求先服务 FIFO:每一个新产生的请求均排在队尾;当资源可用时,取队首元素,并满足其需要。排序原则:
按请求的先后次序排序。
最短寻道时间优先算法 SSTF:从等待访问者中挑选寻找时间最短(即与当前磁头位置最近)的那个请求先执行
扫描算法(SCAN):又称为电梯调度算法,磁头前进方向上的最短查找时间优先算法,排除了磁头在局部位置的
往复移动,消除了 SSTf 算法的不公平性。
19.2、资源分配策略------P101-105
先请求先服务
优先调度
针对设备特性的调度:移臂调度、旋转调度
几种移臂调度算法:SSTF、SCAN、CSCAN
20.1、死锁的概念
在两个或多个并发进程中,如果每个进程持有某种资源而又都等待着别的进程释放它或它们现在保持着的资源,
否则就不能向前推进。此时,称这一组进程产生了死锁。
20.2、发生死锁的必要条件
① 互斥条件
涉及的资源是非共享的,即为临界资源。
② 不剥夺条件
进程所获得的资源在未使用完毕之前,不能被其他进程强行夺走。
③ 部分分配
进程每次申请它所需要的一部分资源。在等待一新资源的同时,进程继续占用已分配到的资源。
④ 环路条件
存在一种进程的循环链,链中的每一个进程已获得的资源同时被链中下一个进程所请求。
20.3、死锁的预防
(1) 静态预防死锁的方法
在作业调度时为选中的作业分配它所需要的所有资源,当资源一旦分配给该作业后,在其整个运行期间这些资源
为它独占。
(2) 动态预防死锁的方法
① 有序资源分配法
系统中所有资源都给定一个唯一的编号,所有分配请求必须以上升的次序进行。当遵守上升次序的规则时,若资
源可用,则予以分配;否则,请求者等待。
② 银行家算法
申请者事先说明对各类资源的最大需求量。在进程活动期间动态申请某类资源时,由系统审查现有该类资源的数
目是否能满足当前进程的最大需求量,如能满足就予以分配,否则拒绝。
21、什么是物理地址,逻辑地址、主存空间、程序地址空间——————PPT 第六章 8
(1) 物理地址 (绝对地址、实地址) :物理地址是计算机主存单元的真实地址,又称为绝对地址或实地址。
(2) 主存空间:物理地址的集合所对应的空间组成了主存空间。
(3) 逻辑地址 (相对地址、虚地址):用户的程序地址 (指令地址或操作数地址)均为逻辑地址。
(4) 程序地址空间:用户程序所有的逻辑地址集合对应的空间。
22.1、什么是地址映射------P120
将程序地址空间中使用的逻辑地址变换成主存中的物理地址的过程,称为地址映射。
22.2、什么是地址映射方式
① 编程或编译时确定地址映射关系
在程序编写或程序编译时确定虚、实地址之间的对应关系,结果 是一个不能浮动的程序模块。
② 在程序装入时确定地址映射关系
在程序装入过程中随即进行的地址变换方式称为静态地址映射。
③ 在程序运行时确定地址映射关系
在程序执行期间,随着每条指令和数据的访问自动地连续地进行地址映射,这种地址变换方式称为动态地址映
射。
22.3、静态地址映射和动态地址映射的区别