操作系统
操作系统第二章 进程
# 进程 1. 进程控制块PCB+程序段+数据段=进程实体。(PCB时进程存在的**唯一标志**) 2. 进程时进程实体的运行过程,时系统进行资源分配和调度的独立单位(基本单位)(线程引入之前,线程引入之后调度的基本单位就是线程了)。 3. 进程的组织方式:连接方式,建立队列;索引方式,建立索引表。这两种方式各有三个指针:1、执行指针;2、就绪队列指针;3、阻塞队列指针。 4. 进程的特征
| 进程的特征 | 描述 |
|---|---|
| 动态性 | 最基本的特征 |
| 并发性 | |
| 独立性 | 进行资源分配调度的独立单位(同上上) |
| 异步性 | 各进程以不可预知的速度向前推进,可能导致结果的不稳定性 |
| 结构性 |
- 进程的三种状态
| 状态 | 描述 |
|---|---|
| 运行态 | 占有CPU |
| 就绪态 | 具备运行条件,但没有CPU |
| 阻塞态 | 因等待某件事的发生而不能运行 |
| 创建态 | |
| 终止态 |
-
进程状态的切换
-
进程控制:实现进程状态的转换。用原语进行进程控制,不可中断的操作被称为原子操作.。其中原语采用关中断和开中断实现。
-
相关原语无非三类:1:更新PCB中的信息。1:将PCB插入合适的队列。3:分配/回收资源。
| 动作 | 原语 |
|---|---|
| 进程创建 | 创建原语 |
| 进程终止 | 撤销原语 |
| 进程阻塞/唤醒 | 阻塞原语 /唤醒原语(成对出现) |
| 进程切换 | 切换原语 |
- 进程通信,为了保证安全,一个进程不能直接访问另一个进程的地址空间,所以有以下三种进程通信的方式:
| 通信方式 | 描述 |
|---|---|
| 共享存储 | 两个进程对共享空间的访问互斥。分两种:基于数据结构的共享:低级,多限制;基于存储区的共享:高级,更快。 |
| 管道通信 | 只能半双工通信,如需双向同时通信则需要两个管道。进程要互斥访问,未写完不能读,未读完不能写,并且读进程只能有一个 |
| 消息传递 | 进程间的数据交换以格式化的消息为单位,以“发送消息”/“接收消息”两个原语实现。分两种:直接通信方式,直接挂载到对方的消息队列;简介通信方式,发送到邮箱中再接收。 |