码迷,mamicode.com
首页 > 系统相关 > 详细

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

时间:2018-08-10 01:31:30      阅读:204      评论:0      收藏:0      [点我收藏+]

标签:状态   处理器   9.png   .com   存储   直接   互斥   缓冲   runtime   

二、进程管理

 

2.1进程与线程

2.1.1进程的基本概念

PID (ProcessID)

技术分享图片

2.1.1进程的概念

技术分享图片

技术分享图片

技术分享图片

技术分享图片

 

 技术分享图片

多道并发执行可能会发生的问题:

技术分享图片

不能让程序粗野的执行,我们必须给他们引入一些约束:

技术分享图片

技术分享图片

技术分享图片

进程包括什么:

进程控制块是一种数据结构,在Linux中是一个结构体

 技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

 

(答案就是上面的那张图)

技术分享图片

技术分享图片

挂起状态

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

(Linux代码)

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

2.1.6线程

技术分享图片

技术分享图片

技术分享图片

技术分享图片

设计之初进程是独立的,进程间不允许用相同的地址空间,必须得开辟一块新的存储空间,然后来取,线程的设计解决了这种问题。

技术分享图片

技术分享图片

技术分享图片

比如还是播放器问题:

单进程的话,读完了要把pcb中存储空间拿出来放到一个区域里,然后再解码,然后放出来,然后再去播放。

有了线程,在同一个存储空间中,调度进行读完,解码,播放。

线程是调度的单位 进程退化为资源的单位

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

 

技术分享图片

 

技术分享图片

 

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

内核级线程:

技术分享图片

 

 技术分享图片

用户级线程:

1.runtime

技术分享图片

2.lwp

技术分享图片

技术分享图片

网上资料:

用户线程指不需要内核支持而在用户程序中实现的线程,其不依赖于操作系统核心,用户进程利用线程库提供创建、同步、调度和管理线程的函数来控制用户线程。用户线程不需要用户态/核心态切换,速度快,操作系统内核不知道多线程的存在,因此一个线程阻塞将使得整个进程(包括它的所有线程)阻塞。由于这里的处理器时间片分配是以进程为基本单位,所以每个线程执行的时间相对减少为了在操作系统中加入线程支持,采用了在用户空间增加运行库来实现线程,用户线程是不能被操作系统所感知的。
内核线程和用户线程都有自己的优势和缺点,一般配合使用

 

2.3同步与互斥

2.3.1 进程同步的概念

技术分享图片

互斥:你和我没沟通交流,你拿走了我就没法用,等你拿走了我才能用

直接制约同步:你和我有沟通有交流,接力比赛,第二棒要等第一棒来了才能跑 棒子不能扔地上,你必须把棒子给我(而互斥就是互相抢资源)

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

同步:消费者必须等生产者生产出来才能消费,不能凭空消费

n个缓冲区:如果生产了n个放不进去就别放了

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

(挂着牌子并且拿着钥匙就能进去)

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

(类似于数据结构中的拓扑排序)

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

 拿左筷子 拿右筷子,吃饭

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片4

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

 

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

标签:状态   处理器   9.png   .com   存储   直接   互斥   缓冲   runtime   

原文地址:https://www.cnblogs.com/eret9616/p/9452319.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!