前驱图和顺序执行
1.前驱图
所谓前驱图,是一个有向无循环图,用于描述进程或程序段之间的执行先后顺序。
2.程序顺序执行时有顺序性,封闭性,可再现性三个特征。、
3.程序并发执行具有间断性,失去封闭性,不可再现性。
进程的描述
进程的定义和特征
- 进程控制块(Process Control Block):描述进程的数据结构,系统利用PCB来描述进程的基本情况和活动过程,进而控制和管理进程。
- 进程实体:由程序段,相关的数据段和PCB三部分便构成了进程实体。
- 进程特征:动态性(具有一定的生命周期),并发性,独立性,异步性(以不可预知的速度进行)。
进程的基本状态及转换
- 三种基本状态,就绪,执行,阻塞。(P37图2-5)
- 创建和终止状态。(P37图2-6)
- 引入挂起操作,进程被挂起时,意味着此时该进程处于静止状态。(P39图2-7和图2-8)
进程管理中的数据结构
1.PCB的作用
- 作为独立运行基本单位的标志
- 能实现间断性运行方式
- 提供进程管理所需要的信息
- 提供进程调度所需要的信息
- 实现与其他进程的同步与通信
2.进程控制块中的信息
-
进程标识符(外部标识符和内部标识符)
-
处理机状态(状态信息由处理机中的各种寄存器中的内容组成)
-
进程调度信息(进程状态,进程优先级,进程调度算法有关的时间,事件(如阻塞原因))
-
进程控制信息(程序和数据的地址,进程同步和通信机制,资源清单,链接指针)
-
进程控制块组织方式:线性方式,链接方式,索引方式
进程控制
操作系统内核
1.定义:将一些与硬件紧密相关的模块(中断处理程序),常用设备的驱动程序以及运行频率较高的模块(时钟管理,进程调度),常驻内存,称为内核。
- 功能:支撑功能(众多模块需要的一些基本功能),资源管理功能(进程存储器,设备管理)。
进程的创建
- 引起创建进程的事件:用户登录,作业调度,提供服务,应用请求。
- 进程的创建过程:申请空白PCB->为新进程分配资源->初始化进程控制块->插入就绪队列(如果就绪队列能够容纳新进程)
进程的终止
- 引起进程终止的事件:正常结束,异常结束(越界错,保护错,非法指令,特权指令错,运行超时,等待超时,算术运算错,I/O故障)
- 过程:根据标识符找到该进程的PCB->若处于执行状态则立即终止,子孙进程也要终止->资源归还给父进程或者系统->将PCB从所在队列中移出。
进程同步
- 临界资源:许多硬件资源如打印机,磁带机等,都属于临界资源,诸进程间采取互斥方式,实现对这种资源的共享。
- 临界区:人们在每个进程中访问临界资源那段代码称为临界区。
- 同步机制应遵循的原则:空闲让进,忙则等待,有限等待,让权等待。
- 管程:一个管程定义了一个数据结构和能为并发进程所执行的一组操作,这组操作能同步进程和改变管程中的数据。
- 记录型信号量机制与生产者消费者问题
进程通信
- 定义:进程通信是指进程之间的信息交换。
进程通信的类型
-
共享存储器通信系统:共享数据结构或者共享存储区。
-
管道通信系统:所谓“管道”是指用于连接一个读进程和一个写进程以实现它们之间通信的一个共享文件。管道机制要有三方面协调能力:互斥,同步,确定对方是否存在。
-
消息传递系统:以格式化的消息为单位,将通信的数据封装在消息中,并利用操作系统提供的一组通信命令(原语),在进程间进行消息传递,实现数据传输。隐藏了通信实现细节,使通信过程对用户透明化。
其中消息传递系统分为两类:直接通信方式(发送进程直接把消息发送给目标进程),间接通信方式(通过共享中间体(邮箱)进行消息的发送和接收。 -
客户机(发送进程)-服务器(接收进程)系统:包括远程过程调用和远程方法调用。