OS学习笔记-20(清华大学慕课)死锁和进程通信
死锁和进程通信
资源分类
- 可重用资源
资源不能被删除,且任何时刻只能有一个进程使用
可能出现死锁
进程释放后,其他进程可以重用 - 消耗资源
可能出现死锁
死锁的条件
- 互斥:不是共享资源,只能一个进程同时使用
- 持有并等待:进程持有至少有一个资源,并在等待其他的资源
- 非抢占:进程不会抢占其他资源
- 循环等待:存在循环等待
处理死锁的办法:
- 死锁预防:限制死锁的申请资源
- 死锁避免:申请资源需要满足条件
- 死锁检测和恢复
银行家算法
- 银行家算法是著名的死锁避免算法
- Need=Max-Allocation
- 先用Max减去Allocation矩阵得到Need矩阵
- 将Availabe向量与Need矩阵各行相比,找出比Availiable向量更小的行向量
- 选择满足条件的一个行向量对应的进程,释放分配给他的资源
- 更新Max和Allocation矩阵和行向量Available向量,重复上诉操作,得到安全序列
死锁检测
进程通信
信号
管道
消息队列
共享内存
OS学习笔记-20(清华大学慕课)死锁和进程通信相关推荐
- 【OS学习笔记】三十八 保护模式十:中断和异常的处理与抢占式多任务对应的汇编代码----微型内核汇代码
本文是以下几篇文章对应的微型内核代码汇编代码: [OS学习笔记]三十四 保护模式十:中断和异常区别 [OS学习笔记]三十五 保护模式十:中断描述符表.中断门和陷阱门 [OS学习笔记]三十六 保护模式十 ...
- 【OS学习笔记】三十七 保护模式十:中断和异常的处理与抢占式多任务对应的汇编代码----主引导扇区代码
本文是以下几篇文章对应的主引导扇区代码汇编代码: [OS学习笔记]三十四 保护模式十:中断和异常区别 [OS学习笔记]三十五 保护模式十:中断描述符表.中断门和陷阱门 [OS学习笔记]三十六 保护模式 ...
- 【OS学习笔记】三十二 保护模式九:分页机制对应的汇编代码之---内核代码
本片文章是以下两篇文章: [OS学习笔记]三十 保护模式九:段页式内存管理机制概述 [OS学习笔记]三十一 保护模式九:页目录.页表和页三者的关系详解 对应的内核汇编代码. ;代码清单16-1;文件名 ...
- 【OS学习笔记】三十 保护模式九:段页式内存管理机制概述
上几篇文章学习了任务切换相关知识,如下: [OS学习笔记]二十六 保护模式八:任务门-任务切换 [OS学习笔记]二十七 保护模式八:任务切换的方法之----jmp与call的区别以及任务的中断嵌套 今 ...
- 【OS学习笔记】二十八 保护模式八:任务切换对应的汇编代码之内核代码
本汇编代码对应以下两篇文章对应的内核汇编代码: OS学习笔记]二十六 保护模式八:任务门-任务切换 [OS学习笔记]二十七 保护模式八:任务切换的方法之----jmp与call的区别以及任务的中断嵌套 ...
- 哈工大操作系统学习笔记十——信号量与死锁
哈工大os学习笔记十(信号量与死锁) 文章目录 哈工大os学习笔记十(信号量与死锁) 一. 信号量临界区保护 1.为什么要保护信号量 2.临界区 3.保护信号量的方法 3.1 轮换法 3.2 标记法 ...
- 【OS学习笔记】二十五 保护模式七:任务和特权级保护对应的汇编源代码
本汇编代码是以下两篇文章讲解的内容的内核代码; [OS学习笔记]二十三 保护模式七:保护模式下任务的隔离与任务的特权级概念 [OS学习笔记]二十四 保护模式七:调用门与依从的代码段----特权级保护 ...
- Hadoop学习笔记—20.网站日志分析项目案例(一)项目介绍
Hadoop学习笔记-20.网站日志分析项目案例(一)项目介绍 网站日志分析项目案例(一)项目介绍:当前页面 网站日志分析项目案例(二)数据清洗:http://www.cnblogs.com/edis ...
- 【OS学习笔记】四十 保护模式十:中断和异常的处理与抢占式多任务对应的汇编代码----动态加载的用户程序/任务二代码
本文是以下几篇文章对应的微型动态加载的用户程序/任务二代码: [OS学习笔记]三十四 保护模式十:中断和异常区别 [OS学习笔记]三十五 保护模式十:中断描述符表.中断门和陷阱门 [OS学习笔记]三十 ...
最新文章
- 4项无线技术对比:谁更适合物联网领域?
- 文本分类实战(七)—— Adversarial LSTM模型
- DevExpress的XtraReport中的Report Bands介绍和使用心得(帮助文档)
- nextcloud php工程师,教你如何基于宝塔面板和nextcloud搭建自己的网盘
- Simulink之变压器隔离的直流-直流变换器
- redis——通过redis实现服务器崩溃等数据恢复
- javascript读取用户名和计算机名
- PHP百度收录量查询接口源码,PHP百度收录量查询接口源码
- 即使不会node.js,拖拽就可完成数据的可视化展示
- 搜狗开源最新NLP研究成果,打造业内最全机器阅读理解工具包SMRC
- 【渝粤教育】电大中专电子商务网站建设与维护_1作业 题库
- Matlab画图常用命令
- 如何朴实无华的双开微信?
- Win32Forth初学者指导-前言
- [功能改进]Ctrl+Enter直接提交评论
- 操作系统:文件共享的实现方法
- 数据仓库系列:初识数仓
- git使用报错:fatal: Couldn‘t find remote ref master的解决方法
- 解决IDEA中maven创建web项目时新建无jsp选择项
- 软件工程是不是教会不怎么会写程序的人开发软件?你的观点?