![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
os
文章平均质量分 59
congCongcong.
一个在互联网瑟瑟发抖的大学生
展开
-
《OS:PV操作 - 读者写者问题》
经典同步问题读者写者问题背景:有多个读者,也有多个写者。要保证其互斥性。要求应用对应的PV操作实现。定义:P,V操作均为原子操作原子操作是在执行的过程中,要么全做,要么全不做,不可被CPU打断P操作:简单说就是对一个信号量进行减一,如果小于零,表示当前无资源可用。等待V操作:简单说就是对一个信号量进行加一。信号量:一定程度上表征资源(不可抢占)的数目。假设题目:有多个人正在写文件,而在同一个系统给下有多个用户在读文件。试用PV操作模拟,并保证之间的互斥性。注:与上篇文章生产者消费者原创 2021-07-05 18:55:04 · 1614 阅读 · 0 评论 -
《OS:PV操作 - 生产者消费者问题》
经典同步问题生产者消费者问题背景:有多个生产者,也有多个生产者。要保证其互斥性。要求应用对应的PV操作实现。定义:P,V操作均为原子操作原子操作是在执行的过程中,要么全做,要么全不做,不可被CPU打断P操作:简单说就是对一个信号量进行减一,如果小于零,表示当前无资源可用。等待V操作:简单说就是对一个信号量进行加一。信号量:一定程度上表征资源(不可抢占)的数目。假设题目:桌子上有个能放得下10个糖果的空盘子,爸爸不停地向盘中放牛奶糖与酥糖,儿子不停地从盘中取出牛奶糖吃,女儿不停地从盘中原创 2021-07-05 17:30:21 · 657 阅读 · 1 评论 -
《OS:调度》
调度处理机调度分为三种类型1. 高级调度2. 中级调度3. 低级调度高级调度高级调度,又叫作业调度。目的是为了从一批输入的作业中选出若干作业,分配必要的资源。最后将这些作业调入内存,形成一个一个的进程(OS也会创建对应的PCB用来标识他们的存在,而PCB也会在低级调度中有所发挥)。作业表示的是用户的计算任务。作业从提交到完成任务吼退出系统,中间历经四个状态提交后备执行完成提交状态:例如以前输入程序是通过读卡器读取作业卡片读入的。这个时候被读取的作业叫做提交状态。简单一点说原创 2021-07-03 19:11:51 · 323 阅读 · 0 评论 -
《OS:死锁预防与死锁避免》
死锁预防法1:破坏进程间的互斥条件这个方法简单粗暴,由于死锁产生的原理即是因为不可抢夺的资源而产生的。程序之间存在互斥性。该方法就是让不可抢夺变成可抢夺。这样看起来有效,但是实际上因为某些资源本身具有不可抢占性而往往不能被抢占。该方法也不能被使用。例如在刻光盘的时候,我们难道去剥夺他的占有权吗,这会导致灾难性的后果,就像我在刻录一个计算机网络的资料,突然被剥夺了,刻到一半刻去了操作系统的内容,这显然是不合理的。这就是因为资源本身具备不可抢占性。法2:破坏占有且等待条件有两个实施方案:预分配资源策原创 2021-07-03 15:51:37 · 288 阅读 · 0 评论 -
《OS:死锁产生及其概念》
死锁在生活中也有体现:在一条窄巷子中,小明与小红相向而行。小明想去小红身后的冰淇淋店买雪糕;小红想去小明身后的水果店买荔枝。小明和小红关系不好,都不肯退让。结果他们如果没有外人的协助下他们就堵在那了。产生原因在计算机中,产生死锁的原因是由于资源分配不合理或者是资源总量不足而导致的。而资源又分为两种可抢占式资源不可抢占式资源1.可抢占式资源这类资源即使是被进程所占用时,也能被剥夺。故称为可抢占式2.不可抢占式资源这类资源是被进程所占用时,不能够被剥夺。故称为不可抢占式进程对资源的利原创 2021-07-01 15:21:40 · 91 阅读 · 0 评论 -
《OS:TLB与多层级页表》
TLB是什么?TLB是基于cache思想的一个设备,目的是为了增加访存速度。在上文中,由于页表本身也是存放在内存中的数据,如果要通过逻辑地址->物理地址的转换。那么整个访存过程应该是:可见,在整个程序通过逻辑地址访存的过程中其实是经过了两次内存的访问。由于CPU本身速度大于内存速度。所以执行的效率就变慢了。解决的方案的思路是计组中内存与CPU之间的处理方案。我们在CPU上提供一个TLB,这个TLB是由相关存储器实现的,由于其靠近CPU,速度很快,所以访存速度一定程度上得到了减少TLB的结原创 2021-06-15 16:34:48 · 805 阅读 · 0 评论 -
《OS:分段分页机制》
《非连续的地址管理机制》概念一 页帧 页帧是物理地址的表现形式,用一个二元组<f,s>表达,页帧的大小一般是2的指数幂。 f表示的是该页帧的页帧号,s表示的是该访问地址在该页帧中的偏移量。 *注意:页帧号是从0开始计算的。* 例:要求<3,6>代表的物理地址。设地址空间用16bit表示,9bit表示页帧的大小。 答:该二元组表示,页帧号为3,在该页帧中的偏移是6。也就是说在该页前有(0,1,2)三个页帧, 每个页帧占据的空间用9个bit表示,也就是说:原创 2021-06-13 10:49:26 · 198 阅读 · 0 评论