导图社区 操作系统
操作系统之进程管理笔记,包括进程调度算法、后背队列、调度算法细节、死锁、进程与线程、临界资源和临界区等内容。
社区模板帮助中心,点此进入>>
互联网9大思维
组织架构-单商户商城webAPP 思维导图。
域控上线
python思维导图
css
CSS
计算机操作系统思维导图
计算机组成原理
IMX6UL(A7)
考试学情分析系统
操作系统
进程管理
进程与线程
概念
定义
由一组执行的指令、一个当前状态和一组相关的系统资源组成的活动单元
操作系统角度
操作系统运行一个程序,需要描述这个程序的运行过程,在Linux中这个描述通过一个结构体task_struct{}来描述,统称为PCB,因此对操作系统来说进程就是PCB(程序控制块)
用户角度
进程进程,简单来说就是 进行中的程序
进程状态
基本三态
运行态
阻塞态
就绪态
两态
新建态
退出态
进程切换
添加了阻塞挂起、就绪挂起
进程调度
主动切换
被动切换
时间片轮转调度
分时调度
优先级调度
进程间通信
信号量
信号
共享内存
消息队列
套接字
管道
命名管道
线程间通信
自旋锁
互斥锁
条件变量
读写锁
进程与线程的区别
进程比线程多了资源部分
linux
书里描述:同一进程内的多个线程共享该进程的资源,但线程不拥有资源,只是使用它们
windows
在PCB中增加一个包含指向该进程所有线程的指针,然后在每个线程中再去包含自己独占的资源
例子
浏览器输入网址,加载
linux中进程和线程是如何创建的,区别在哪
linux下进程和线程无本质区别,底层都是条用相同的函数close,只是传进去的参数不同
并发
互斥与同步
生产者与消费者问题
管程
读者/写者问题
饥饿
哲学者就餐问题
解决方法
基于信号量解决
基于管程解决
死锁
产生条件
保持和请求条件
互斥条件
环路等待条件
不抢夺条件
避免死锁
死锁预防
死锁检测
死锁避免
内存管理
分段
各个模式
实模式
保护模式
寻址方式:段基址+段内偏移
分页
多级页表
寻址方式:页目录项、多级页表项
缓存
多级缓存
缓存方式
直相联映射
全相联映射
n组相联映射
内容:组、行、块
虚拟内存
分段+分页
每个进程独享一个虚拟内存,多个线程共享一个虚拟内存
页面置换算法
首次匹配算法
下次匹配算法
最佳匹配算法
内存布局
从上到下依次:栈、共享库、堆、数据区、代码区