操作系统_2

本文详细介绍了操作系统中关于进程的管理,包括进程的定义、组成、组织、特征,进程的状态与转换,进程控制,进程通信,线程、多线程模型,处理机调度策略,调度算法以及进程同步和互斥的机制。此外,还讨论了死锁及其处理策略,如预防、避免和检测解除死锁的方法。通过对这些概念的深入探讨,帮助读者理解操作系统如何管理和协调进程的执行。
摘要由CSDN通过智能技术生成

进程与线程

2.1 进程的定义、组成、组织、特征

2.1.1进程的定义

程序:就是一个指令序列

早期的计算机只支持单道程序 --> 引入多道程序技术之后,为了方便操作系统管理,完成各程序并发执行,引入了进程、进程实体的概念

进程实体(进程映像):由PCB、程序段、数据段三部分构成。一般情况下,我们把进程实体就简称为进程,例如,所谓创建进程,实质上是创建进程实体中的PCB;而撤销进程,实质上是撤销进程实体中的PCB。

注意:PCB是进程存在的唯一标志

2.1.2 进程的组成

进程(进程实体)由程序段、数据段、PCB三部分组成。


2.1.3 进程的组织

2.1.3.1 链接方式

持有不同的指针,不同的指针指向不同的状态

2.1.3.2 索引方式

类似于链接方式,唯一不同是增加了索引表

2.1.4 进程的特征

2.1.5 总结

2.2 进程的状态与转换

2.2.1 进程的状态

另外两种状态:

2.2.2 进程状态的转换

在这里插入图片描述

2.2.3 总结

在这里插入图片描述

2.3 进程控制

2.3.1 什么是进程控制

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

简化理解:反正进程控制就是要实现进程状态转换

在这里插入图片描述

2.3.2 如何实现进程控制?

用原语实现进程控制。原语的特点是执行期间不允许中断,只能一气呵成。
这种不可被中断的操作即原子操作。
原语采用“关中断指令”和“开中断指令”实现
在这里插入图片描述

2.3.3 进程控制相关的原语

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.3.4 总结

在这里插入图片描述

2.4 进程通信

2.4.1 什么是进程通信

顾名思义,进程通信就是指进程之间的信息交换。
进程是分配系统资源的单位(包括内存地址空间),因此各进程拥有的内存地址空间相互独立。为了保证安全,一个进程不能直接访问另一个进程的地址空间。

但是进程之间的信息交换又是必须实现的。为了保证进程间的安全通信,操作系统提供了一些方法。

进程通信的例子:逛微博时将内容分享到微信上,那么微信和微博就是有通信的

2.4.2 共享存储

进程一和进程二共享一个空间,操作系统提供共享空间和同步互斥工具,进程一和进程二不可以同时使用共享空间,他们对共享空间的访问是互斥的。

共享存储分为:

  • 基于数据结构的共享:比如共享空间里只能放一个长度为10的数组。这种共享方式速度慢、限制多,是一-种低级通信方式
  • 基于存储区的共享:在内存中画出一块共享存储区,数据的形式、存放位置都由进程控制,而不是操作系统。相比之下,这种共享方式速度更快,是一种高级通信方式。

2.4.3 管道通信

在这里插入图片描述

“管道"就是用于连接读写进程的一个共享文件,其实就是在内存中开辟一个大小固定的缓冲区

管道采取半双工通信,如果需要实现双向同时通信,需要设置两个管道;

进程互斥访问管道,进程1写数据写满,进程2读取,取完管道中的数据,进程1才可以接着写入;

管道没写满不准读,没读完不准写,一个数据只能被读取一次

2.4.4 消息传递

进程间的数据交换以格式化的消息( Message)为单位。进程通过操作系统提供的“ 发送消息/接收消息”两个原语进行数据交换。

消息传递的两种方式:

  • 直接通信方式:消息直接挂到接收进程的消息缓冲队列上
  • 间接通信方式:消息要先发送到中间实体(信箱)中,因此也称“信箱通信方式”。Eg: 计网中的电子邮件系统

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值