【操作系统】二、进程管理

@王道考研

目录

1.进程的定义、组成、组织方式和特征

1.1定义与组成

1.2组织

链接方式(指针指向队列)、索引方式(指针指向索引表)

1.3特征

2.进程的状态与转换

2.1状态

2.2转换

3.进程控制

3.1原语

3.2进程的创建(Creation)

3.3进程的终止(Termination)

3.4进程的阻塞与唤醒

3.5进程的挂起与激活

4.进程同步

4.1进程同步与进程互斥

4.2进程互斥的软件和硬件实现方法

4.2.1软件实现方法

4.2.2硬件实现方法

4.3信号量机制

4.4信号量的应用

4.5经典同步问题

4.5.1生产者-消费者问题

4.5.2多生产者-多消费者问题

4.5.3吸烟者问题

4.5.4读者-写者问题

4.5.5哲学家进餐问题

4.6管程

5.进程通信

5.1共享存储器系统(shared-memory system)

5.2管道通信

5.3消息传递存储

1)直接通信方式:

2)间接通信方式:

6.线程

6.1引入,与进程的比较

6.2属性

6.3实现方式:

1)用户级线程(user-level thread,ULT)

2)内核级线程(kernel-supported thread,KST)

3)组合方式(ULT/KST)

6.4多线程问题

1.进程的定义、组成、组织方式和特征

思维导图 :

1.1定义与组成

程序段、数据段、PCB(Process Control Block)三部分组成了进程实体(进程映像)。

一般情况下,我们把进程实体就简称为进程,例如,所谓创建进程,实质上是创建进程实体中的PCB;而撤销进程,实质上是撤销进程实体中的PCB。PCB是进程存在的唯一标志。

从不同的角度,进程可以有不同的定义,比较传统典型的定义有:(强调“动态性”)

1)进程是程序的一次执行过程。
2)进程是一个程序及其数据在处理机上顺序执行时所发生的活动。
3)进程是具有独立功能的程序在数据集合上运行的过程,它是系统进行资源分配和调度的一个独立单位。

引入进程实体的概念后,可把进程定义为:

进程是进程实体的运行过程,是系统进行资源分配和调度的一个独立单位。

严格来说,进程实体和进程并不一样,进程实体是静态的,进程则是动态的。不过,除非题目专门考察二者区别,否则可以认为进程实体就是进程。因此我们也可以说“进程由程序段、数据段、PCB三部分组成”。

1.2组织

进程的组成讨论的是一个进程内部由哪些部分构成的问题,而进程的组织讨论的是多个进程之间的组织方式问题。

链接方式(指针指向队列)、索引方式(指针指向索引表)

1.3特征

2.进程的状态与转换

思维导图:

2.1状态

2.2转换

运行态→阻塞态是一种进程自身做出的主动行为。
阻塞态→就绪态是不是进程自身能控制的,是种被动行为。
注意:不能由阻塞态直接转换为运行态,也不能由就绪态直接转换为阻塞态(因为进入阻塞态是进程主动请求的,必然需要进程在运行时才能发出这种请求)

3.进程控制

进程控制的主要功能是对系统中的所有进程实施有效的管理,它具有创建新进程、撤销已有进程、实现进程状态转换等功能。

回顾下进程状态转换的过程:

3.1原语

进程控制一般是由OS的内核中的原语(primitive)来实现。

原语的特点:是原子操作(Action Operation一个操作中的所有动作要么全做,要么全不做);执行期间不允许被中断;原语操作在管态下执行,常驻内存;

为什么原语执行期间不允许被中断?——原语采用“开中断指令”和“关中断指令”来实现,“开/关中断指令”是在核心态下执行的特权指令。

原语要实现的三件事情:

1)更新PCB中的信息(如修改进程状态标志、将运行环境保存到PCB、从PCB恢复运行环境)

a.所有的进程控制原语一定都会修改进程状态标志

b.剥夺当前运行进程的CPU使用权必然需要保存其运行环境

c.某进程开始运行前必然要恢复其运行环境 

2)将PCB插入合适的队列

3)分配/回收资源

3.2进程的创建(Creation)

3.3进程的终止(Termination)

3.4进程的阻塞与唤醒

唤醒原语:wakeup()

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值