三条主线:
一、操作系统的功能: 资源管理+接口 二、操作系统的实现: 数据结构+算法
三、一个进程的生命周期
进程是有生命周期的,产生、运行、暂停、终止。对进程的这些操作叫进程控制。
贯穿始终的一些概念:
时间与空间 逻辑与物理
第一章:
1、什么是OS,操作系统的功能。
OS是计算机系统资源的管理者
处理机管理:用于分配和控制处理机(对进程、线程的管理); 存储器管理:主要负责内存的分配与回收; I/O设备管理:负责I/O设备的分配与操纵; 文件管理:负责文件的存取、共享和保护。
2、了解操作系统的发展过程,了解分时系统、实时系统、批处理系统及特点。
分时系统:是指在一台主机上连接了多个带有显示器和键盘的终端,同时允许多个用户共享主机中的资源,每个用户都可以通过自己的终端以交互方式使用计算机。 (1) 多路性 (2) 独立性 (3) 及时性 (4) 交互性
实时系统:是指系统能及时(或即时)响应外部事件的请求,在规定的时间内完成对该事件的处理,并控制所有实时任务协调一致地运行。 (1) 多路性(2)独立性(3)及时性(4)交互性(5)可靠性。
单道批处理:是指系统中有一个监控程序,它负责完成用户程序的调入、启动运行、输出运行结果等工作。
(1) 自动性(2)顺序性(3)单道性
3、理解多道程序设计概念。
后备队列
外存
作业调度 作业4作业3内存
作业2作业1
程序A I/O 请求用户程序监督程序I/O 操作I/O 中断请求启动 I/OI/O 完成结束中断I/O 中断请求启动 I/OI/O 完成结束中断OSt1t2t3t4t5t6t7t8 内存(a) 单道程序运行情况程序A I/O 完成程序A再被调度A完成程序B I/O 请求程序B程序B程序C程序D调度程序(b) 四道程序运行情况程序C I/O 请求程序C程序D程序B I/O 完成C I/O 完成C 再被调度程序D I/O 请求
程序A程序A4、现代操作系统的特点。并发共享异步虚拟
5、操作系统的作用,操作系统作为硬件与用户间接口的观点。
*操作系统作为计算机系统资源
的管理者。
*操作系统是用户与计算机硬件之间的接口,操作系统向用户提供各种服务。
*操作系统实现了对计算机资源的抽象,扩充了机器功能。
用 户应用程序系统调用 命令 图标、窗口操作系统计算机硬件第二章:进程管理
1、理解并发与并行的区别与联系。
并发:同一个cpu上在多个程序间切换运行多个程序
并行:每个cpu运行一个程序
宏观上两者都是同时执行。
2、程序与进程及线程的关系。
程序是一组用计算机语言编写的命令序列的集合。 进程是已运行程序的实体,是线程的容器。
线程是进程中某个单一顺序的控制流,指运行中的程序的调度单位。不能单独执行,必须组成进程。一个程序至少有一个进程,一个进程至少有一个线程。
3、原语及原语的特点和作用。
原语:一种特殊的、执行时不可中断的系统调用 作用:实现进程的通信和控制
4、PCB及重要作用,需要联系操作系统每一章来理解。
进程控制块PCB是操作系统为描述和控制进程运行为每个进程定义的数据结构。
PCB作为进程实体的一部分,记录了操作系统所需的,用于描述进程的当前情况以及管理进程运行的全部信息,是操作系统中最重要的记录型数据结构。OS是根据PCB来对并发执行的进程进行控制和管理的。 PCB的作用
(1)作为独立运行基本单位的标志。PCB成为进程存在于系统中的唯一标志。 (2)能实现间断性运行方式。PCB保存运行时CPU现场信息。
(3)提供进程管理所需要的信息。PCB中保存了进程资源信息。
(4)提供进程调度所需要的信息。PCB中保存了进程状态、优先级等信息。
(5)实现与其它进程的同步与通信。PCB中设置信号量、用于进程通信的区域或通信队列指针。
5、进程的基本状态及状态间的转换,需要联系其它章节的内容。
(1)就绪(Ready)状态:当进程已分配到除CPU以外的所有资源后,只要再获得CPU,便可立即执行,进程这时的状态称为就绪状态。
(2)执行(Running)状态:进程已获得CPU,程序正在执行。
(3)阻塞(Block)状态:正在执行的进程由于发生某事件而暂时无法继续执行时,放弃处理机而处于暂停状态,称为阻塞状态(等待/封锁状态)。
6、了解进程控制,包括引起进程控制的事件及进程控制的操作。
进程的创建
(1)申请空白PCB (2)为新进程分配资源 (3)初始化进程控制块
(4)将新进程插入就绪队列,如果进程就绪队列能够接纳新进程,便将新进程插入就绪队列
引起事件 (1-3系统内核创建4基于用户需求创建) (1)用户登录 (2)作业调度 (3)提供服务 (4)应用请求
进程的终止
(1)根据被终止进程的标识符,从PCB集合中检索出该进程的PCB,从中读出该进程的状态。 (2)若被终止进程正处于执行状态,应立即终止该进程的执行,并置调度标志为真,用于指示该进程被终止后应重新进行调度。 (3)若该进程还有子孙进程,还应将其所有子孙进程予以终止,以防他们成为不可控的进程。 (4)将被终止进程所拥有的全部资源,或者归还给其父进程,或者归还给系统。
(5)将被终止进程(它的PCB)从所在队列(或链表)中移出,等待其他程序来搜集信息。 引起事件 (1)正常结束
(2)异常结束(进程运行期间,出现某些错误和故障)
(3)外界干预(操作员、操作系统、父进程请求、父进程终止)
进程的阻塞与唤醒
(1)向系统请求共享资源失败 (2) 等待某种操作的完成 (3) 新数据尚未到达 (4) 无新工作可做
7、理解信号量的作用,及对信号量的PV操作(信号量值的
变化),会用信号量解决进程同步问题(包括前趋图和进程同步与互斥)。
保证两个或多个关键代码段不被并发调用。
整型信号量:整型量S仅能通过原子操作wait(S)和signal(S)来访问分别被称为P、V操作 wait(S) {
while (S≤0);/* do no-op*/ S--; }
signal(S) {
S++; }
进程同步问题
1、有一阅览室,共有100个座位。读者进入时必须先在一张登记表上登记,该表为每一座位列一表目,包括座号和读者姓名。读者离开时要消掉登记内容。试用P、V操作描述读者进程的同步结构。 var
mutex : semaphere; 信号量,用于互斥 full : semaphere; 信号量,用于同步 table :array 0..n-1 of item; 登记表
procedure reader; 读者进程 begin
P(full); P(mutex);
Register_name(table); V(mutex); Reading; P(mutex);
Delet_name(table); V(mutex); V(full) end;