
操作系统
文章平均质量分 59
学习使我可乐
这个作者很懒,什么都没留下…
展开
-
什么是死锁?
https://blog.youkuaiyun.com/hd12370/article/details/82814348所谓死锁,是指多个进程在运行过程中因争夺资源而造成的一种僵局,当进程处于这种僵持状态时,若无外力作用,它们都将无法再向前推进。 因此我们举个例子来描述,如果此时有一个线程A,按照先锁a再获得锁b的的顺序获得锁,而在此同时又有另外一个线程B,按照先锁b再锁a的顺序获得锁。如下图所示:产生死锁的原因?可归结为如下两点:a. 竞争资源系统中的资源可以分为两类:可剥夺资源,是指某进程转载 2021-04-15 21:59:15 · 351 阅读 · 0 评论 -
键盘敲入 A 字母时,操作系统期间发生了什么...
键盘敲入 A 字母时,操作系统期间发生了什么...转载连接:建议阅读原来的连接,更详细:https://mp.weixin.qq.com/s/04BkLtnPBmmx6CtdQPXiRA前言键盘可以说是我们最常使用的输入硬件设备了,但身为程序员的你,你知道「键盘敲入 A 字母时,操作系统期间发生了什么吗」?那要想知道这个发生的过程,我们得先了解了解「操作系统是如何管理多种多样的的输入输出设备」的,等了解完这个后,我们再来看看这个问题,你就会发现问题已经被迎刃而解了。正文设备控转载 2021-03-27 12:01:24 · 110 阅读 · 0 评论 -
内存页面置换算法
转载连接:https://mp.weixin.qq.com/s/JWj6_BF9Xc84kQcyx6Nf_g内存页面置换算法在了解内存页面置换算法前,我们得先谈一下缺页异常(缺页中断)。当 CPU 访问的页面不在物理内存时,便会产生一个缺页中断,请求操作系统将所缺页调入到物理内存。那它与一般中断的主要区别在于: 缺页中断在指令执行「期间」产生和处理中断信号,而一般中断在一条指令执行「完成」后检查和处理中断信号。 缺页中断返回到该指令的开始重新执行「该指令」,而一般中断返回回到该指转载 2021-03-27 10:54:23 · 1076 阅读 · 0 评论 -
进程调度算法
https://mp.weixin.qq.com/s/JWj6_BF9Xc84kQcyx6Nf_g进程调度算法进程调度算法也称 CPU 调度算法,毕竟进程是由 CPU 调度的。当 CPU 空闲时,操作系统就选择内存中的某个「就绪状态」的进程,并给其分配 CPU。什么时候会发生 CPU 调度呢?通常有以下情况: 当进程从运行状态转到等待状态; 当进程从运行状态转到就绪状态; 当进程从等待状态转到就绪状态; 当进程从运行状态转到终止状态; 其中发生在.原创 2021-03-27 10:35:08 · 490 阅读 · 0 评论 -
虚拟内存0
计算机操作系统 - 内存管理1.2 内存管理的概念操作系统作为系统资源的管理者,当然也需要对内存进行管理,要管些什么呢?操作系统负责内存空间的分配与回收。操作系统需要提供某种技术从逻辑.上对内存空间进行扩充。操作系统需要提供地址转换功能,负责程序的逻辑地址与物理地址的转换。(而逻辑地址到物理地址的转换(这个过程称为地址重定位(三种装入方式))应该由操作系统负责,这样就保证了程序员写程序时不需要关注物理内存的实际情况。)操作系统需要提供内存保护功能。保证各进程在各自存储空间内运行,互.原创 2021-03-27 10:21:52 · 243 阅读 · 0 评论 -
虚拟内存1
真棒! 20 张图揭开内存管理的迷雾,瞬间豁然开朗原创小林coding小林codinghttps://mp.weixin.qq.com/s/HJB_ATQFNqG82YBCRr97CA 2020-06-29每日英语,每天进步一点点前言之前有不少读者跟我反馈,能不能写图解操作系统?既然那么多读者想看,我最近就在疯狂的复习操作系统的知识。操作系统确实是比较难啃的一门课,至少我认为比计算机网络难太多了,但它的重要性就不用我多说了。学操作系统的时候,主要痛苦的地方,有太...原创 2021-03-27 10:21:34 · 144 阅读 · 0 评论 -
死锁
定义:如果没有死锁发生,并且即使所有进程突然请求对资源的最大需求,也仍然存在某种调度次序能够使得每一个进程运行完毕,则称该状态是安全的。原创 2021-03-27 08:03:02 · 92 阅读 · 0 评论 -
进程和线程
2. 线程线程是独立调度的基本单位。一个进程中可以有多个线程,它们共享进程资源。QQ 和浏览器是两个进程,浏览器进程里面有很多线程,例如 HTTP 请求线程、事件响应线程、渲染线程等等,线程的并发执行使得在浏览器中点击一个新链接从而发起 HTTP 请求时,浏览器还可以响应用户的其它事件。...原创 2021-03-27 07:41:29 · 70 阅读 · 0 评论 -
进程通信0
这种通信方式有什么缺点呢?显然,这种通信方式效率低下,你看,a 进程给 b 进程传输数据,只能等待 b 进程取了数据之后 a 进程才能返回。所以管道不适合频繁通信的进程。当然,他也有它的优点,例如比较简单,能够保证我们的数据已经真的被其他进程拿走了。我们平时用 Linux 的时候,也算是经常用。相比于 FIFO,消息队列具有以下优点:消息队列可以独立于读写进程存在,从而避免了 FIFO 中同步管道的打开和关闭时可能产生的困难; 避免了 FIFO 的同步阻塞问题,不需要进程自己提供同步方法;..原创 2021-03-26 16:51:01 · 94 阅读 · 0 评论 -
进程通信
小林牛逼:https://mp.weixin.qq.com/s/MnIcTR0KKpgnSoA3xaPUSA原创 2021-03-26 16:43:52 · 72 阅读 · 0 评论 -
多线程共享变量,结果不一致
引用小林博主,感谢博主,博主牛逼https://mp.weixin.qq.com/s/UWT1oMQsQUmmKzQ94xRwew原创 2021-03-26 15:40:57 · 270 阅读 · 0 评论 -
多个线程为了同个资源打起架来了
引用小林博主,感谢博主,博主牛逼https://mp.weixin.qq.com/s/UWT1oMQsQUmmKzQ94xRwew原创 2021-03-26 15:38:27 · 97 阅读 · 0 评论 -
2021-03-26
[进程和线程基础知识全家桶,30 张图一套带走](https://mp.weixin.qq.com/s/YXl6WZVzRKCfxzerJWyfrg)原创 2021-03-26 14:43:01 · 84 阅读 · 0 评论 -
内存管理
1.1.4 进程运行的基本原理(从写程序到程序运行)编译:由编译程序将用户源代码编译成若千个目标模块(编译就是把高级语言翻译为机器语言)链接:由链接程序将编译后形成的一组目标模块,以及所需库函数链接在一起,形成- -个完整的装入模块装入(装载) :由装入程序将装入模块装入内存运行1.1.5 装入内存的三种方式绝对装入:在编译时,如果知道程序将放到内存中的哪个位置,编译程序将产生绝对地址的目标代码。装入程序按照装入模块中的地址,将程序和数据装入内存。绝对装入只适用于单道程序环境,绝对地址可由程序员原创 2021-03-17 21:56:32 · 429 阅读 · 0 评论 -
系统调用和开机启动过程2020.04.15
![在这里插入图片描述系统调用](https://img-blog.csdnimg.cn/20200416001346462.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQwODI2ODE0,size_16,color_...原创 2020-04-16 00:28:43 · 134 阅读 · 0 评论