后端
文章平均质量分 90
中意你a
分享代码,分享helloworld
展开
-
操作系统C/C++实现银行家算法
银行家算法是由Dijkstra设计的最具有代表性的避免死锁的算法1.相关概念(1)安全状态定义:某时刻,对于并发执行的n个进程,若系统能够按照某种顺序如{p1,p2…pn}来为每个进程分配所需资源,直至最大需求,从而使每个进程都可顺利完成,则认为该时刻系统处于安全状态,这样的序列为安全序列,安全状态一定是没有死锁发生。(2)银行家算法(含安全性算法)描述当Pi发出资源请求后,系统按下述步...原创 2019-12-09 21:28:24 · 1491 阅读 · 0 评论 -
操作系统P、V操作,司机-售票员问题(c++实现)
问题描述及信号量设定设公共汽车上,司机和售票员的活动分别是:司机:启动车辆–正常行驶–到站停车;售票员:关车门–售票–开车门;信号量(semaphore)的数据结构为一个值和一个指针,指针指向等待该信号量的下一个进程。信号量的值与相应资源的使用情况有关。当它的值大于0时,表示当前可用资源的数量;当它的值小于0时,其绝对值表示等待使用该资源的进程个数。注意,信号量的值仅能由PV操作来改变。......原创 2019-12-06 16:08:17 · 13535 阅读 · 4 评论 -
c语言实现进程调度优先权调度算法和时间片轮转调度算法
**1.算法原理**时间片轮转调度算法a.在时间片轮转调度算法中,系统根据先来先服务的原则,将所有的就绪进程排成一个就绪队列,并且每隔一段时间产生一次中断,激活系统中的进程调度程序,完成一次处理机调度,把处理机分配给就绪队列队首进程,让其执行指令。当时间片结束或进程执行结束,系统再次将cpu分配给队首进程。b.时间片尚未结束,进程已经执行结束,立即激活调度程序,将其从就绪队列中删除,在...原创 2019-12-06 15:59:22 · 17342 阅读 · 8 评论