操作系统-第二章进程管理

一、进程

1、进程的概念及特征,状态转换,及进程的控制

程序段,数据段,PCB三部分组成了进程的实体(进程映像)。进程是一个动态的概念,进程实体的是一个动态的概念。

进程运行的三种状态,就绪,运行和阻塞。

进程的五大特征:

动态,异步,独立,结构,并发

动态:进程是程序依次执行过程,动态创建,存在和消亡。

并发:内存中存在多个进程,各进程并发的接收系统资源,是接收的最小单位。

独立:进行独立的执行,独立的接收进程的资源。

结构:一个进程有程序段,数据段,PCB三部分构成。

异步:操作系统要提供“进程同步机制“来解决异步问题。各进程按各自独立的、不可预知的速度向前推进(这个我也不理解,当八股文背吧!)

2、进程通信方式

因为进程的独立性因此进程之间不能直接进行“交流”,这时有一些进程相互暧昧需要交流,于是像操作系统发出通信请求,操作系统为了让这些程序进行“交流”便提供了一些交流的方式;

第一种便是共享存储,提供提供一块存储区域(有可能时数据块就是一个数组(基于数据结构的共享),也有可能是一块数据块(基于存储区间的共享))。同时两个进程是互斥的访问这一块共享存储区间。

第二种是消息传递,两个进程之间发送消息,有直接表明接收进程ID的消息传递即直接通信。

也有通过信箱暗送秋波

第三种通过管道通信,内容不多全在下图!

 二、线程

 1、what is 线程?

若是将去图书馆看书比作一次计算机的运作,人就是一个进程,桌子便是操作系统,一根书便是一个线程。进程由系统分配资源,线程是处理机分配的单元,是CPU执行流的最小单位。

why?

引入线程的好处有很多,其中最重要的一点就是线程提高了计算机的并发度,之前的计算机以进程为单位进行并发,引入线程之后计算机可以以线程为单位进行并发。其他的好处如下图:

 2、how do achieve 线程?

 线程分为用户级线程,和内核级线程。用户级线程,从用户的视角能看到的线程,是用户能看到的线程,线程之间的转换不需要操作系统内核,有写好的线程库来实现。

内核级线程从操作系统内核的视角能看到的线程,由操作系统实现,操作系统内核级线程才是处理机分配的单位。

还有由以上两种方式组合而成,计算机老生长谈的话题了什么都要组合到一起才能达到性能的最优。

一共有三种方式,没错第三种是前两种的组合。

第一种多个用户级线程对应一个操作系统的内核级线程,多对一一旦有一个发生故障就会发生阻塞。

第二种一对一,开销太大不太行。

第三种类似,三对二或者五对三,总之就是多个用户级线程对应更少的操作系统级的线程。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值