![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
OS
操作系统
cb414
这个作者很懒,什么都没留下…
展开
-
LRU页面置换算法--基于栈
前言使用栈实现LRU页面置换算法的代码LRU页面置换算法可以使用基于计数器,或者基于栈两种方式进行实现基于计数器若有不当之处,请您指出,您的指点是我的荣幸代码实现import java.util.Scanner;/** * LRU页面置换算法--基于栈 */public class LRUStack { public static void main(String[] args) { //当链表未达到指定长度时,用来表示链表的长度 in原创 2020-09-13 17:21:27 · 1941 阅读 · 0 评论 -
LRU页面置换算法--基于计数器
1,前言有关LRU页面置换的学习记录若有不当之处,请您指出,您的指点是我的荣幸2,LRULRU页面置换,也称为最近最少使用算法每个进程运行时会被分配一定数量的帧,这是进程所占有的空间。程序的代码一般是存于外存(一般理解为磁盘)中执行代码的时候,只有当代码所在的页被操作系统从外存调入内存,并放置在进程所占有的空间中,代码才能执行而进程逻辑上占有的页数是远远大于分配到的帧数的(页是逻辑概念上的,帧是物理概念上的)就比如:进程A逻辑上占有的页数为20页,但执行的时候分配到的帧数只有3帧(对应原创 2020-09-08 21:13:33 · 1716 阅读 · 0 评论 -
死锁避免----银行家算法实现
前言有关银行家算法的记录因为这篇博客写的很棒,所以就不班门弄斧了,就不介绍基础概念了。直接放码过来!若有不当之处,请您指出,您的指点是我的荣幸实现给定4个进程,每个进程3个资源类型,每种资源的数量也是给定的/** * 银行家算法 */public class Banker { //统计有多少个进程执行完成了 public static int count=0; //每次用Available跟Need比较的时候,记录是否还有能执行的进程 public原创 2020-09-06 14:24:24 · 249 阅读 · 0 评论 -
同步问题----优先级反转
1,同步问题1.2,优先级的反转当一个高优先级的进程通过信号量机制访问共享资源时,发现这个资源正在被低优先级的进程所持有。而且因为内核数据通常是用锁保护起来的,所以高优先级的进程不得不等待低优先级的进程用完资源。这也就造成了高优先级进程被低优先级进程阻塞。1.3,示例假如有这么三个进程:A,B,C它们的优先级顺序:A<B<CC进程需要使用一个共享资源:X,但此时A进程正持有X资源,C进程不得不等待A进程完成任务释放资源;但此时,B进程到达了,抢占了A进程;间接的,B进程影响了原创 2020-09-04 13:38:40 · 235 阅读 · 0 评论 -
Peterson解答
前言有关Peterson解答的记录;若有不当之处,请您指出,你的指点是我的荣幸!Peterson解答Peterson解答是一个经典的基于软件的临界区问题的解决方案Peterson算法适用于两个进程交错执行临界区与剩余区在本文中,这两个进程分别是P0和P1Peterson解答要求两个进程共享两个数据项int turn;boolean flag[2];变量turn表示哪个进程可以进入临界区;即如果turn==i,那么进程Pi允许在临界区内执行。数组flag表示哪个进程准备进入临界区。例原创 2020-09-04 09:57:07 · 370 阅读 · 0 评论 -
进程调度----FCFS,SJF,优先级调度,RR
1,FCFS先服务先调度FCFS策略可以通过FIFO队列容易的实现。当一个进程进入就绪队列时,它的PCB会被连接到队列尾部。当CPU空闲时,它会分配给位于队列头部的进程,并且这个运行进程从队列中移去。缺点:平均等待时间往往很长。假设有这么三个进程P1,P2,P3按顺序到达,并且按FCFS顺序进行处理进程执行时间P124P26P36[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-6fa29zs7-1599115297171)(原创 2020-09-03 14:42:56 · 3336 阅读 · 0 评论