
计算机操作系统
文章平均质量分 83
光军ultra
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
操作系统————FCFS(先来先服务),优先级调度,SJF(短作业优先调度),RR(时间片轮转调度)四大算法的c++代码实现
RR算法较为灵活,时间片的大小我们可以自己指定,比较函数按照进程到达时间排序,我们给每个进程记录剩余执行时间和执行标记,roundRobin函数部分我们分两种情况讨论,第一种是剩余时间大于一个时间片,此时我们就不能计算完成时间,让时间线继续往后走,第二种就是剩余执行时间小于一个时间片,此时进程就可以执行完毕,我们也可以计算完成时间,周转时间等。SJF算法与前两种算法不同的是会发生抢占,我们在结构体中设置一个bool型标记,标记进程状态,这样被抢占的进程还会被重新调度。原创 2025-05-21 11:06:45 · 1081 阅读 · 0 评论 -
操作系统————四种动态分区分配算法详解(首次适应,最坏适应,最佳适应,邻近适应)
假设此时又有一个进程6需要5MB的空间,那么上次结束的位置是2号空闲分区,我们直接往后查找到10MB的空闲分区发现满足条件直接分配,这样指针移动的次数是1次。首次适应算法有一部分最佳适应算法的优点,而邻近适应算法包含了最坏适应算法的缺点,所以不能说邻近适应算法比一定首次适应算法好。我们假设现在内存有三个空闲分区,大小分别是20MB,10MB,4MB如上图所示。按容量递增的顺序就可以保证找出的分区是最合适的,不会太大造成空间的浪费。我们还是以上面的例子分析,按照容量递减的顺序排列空闲分区。原创 2025-05-20 22:31:08 · 1240 阅读 · 0 评论 -
操作系统————五种页面置换算法(OPT,FIFO,LRU,NRU,加强版NRU)大总结
🍬🍬🍬。原创 2025-05-19 21:37:53 · 969 阅读 · 0 评论 -
交互式调度算法学不会?————一文学懂(RR(时间片轮转调度算法),优先级调度算法,多级反馈队列调度算法)保姆式解析
那么有没有一种算法可以综合他们的优点呢?由此我们引入多级反馈队列调度算法。原创 2025-03-14 22:34:33 · 1303 阅读 · 0 评论 -
操作系统学不会?————一文速通(FCFS,SJF/SPF,SRTN,HRRN算法)保姆级解析
2时刻p2到达,p2运行4ms,运行时间小于p1剩余的5ms,于是抢占处理机,4时刻p3到达,p3运行1ms小于p1剩余的5ms和p2剩余的2ms,于是抢占处理机,到达5时刻。原创 2025-03-13 18:11:14 · 663 阅读 · 0 评论 -
操作系统考研真题的C++代码实现——CPU的闲置率
cout << "P2:" << "计算" << p2time1 << "ms" <<"\t" << "I/O操作" << p2io << "ms" <<"\t" << "计算" << p2time2 << "ms" << endl;cout << "P1:" << "计算" << p1time1 << "ms"<<"\t" << "I/O操作" << p1io << "ms" << "\t"<<"计算" << p1time2 << "ms" << endl;原创 2025-02-23 11:44:23 · 1234 阅读 · 0 评论 -
操作系统精讲4——记录型信号量解决(读者—写者问题)
读者1先上处理机,在执行读文件之前已经执行了P(W),V(W)操作所以W的值没变还是1,然后写者1执行P(W),W的值变为0,由于读者1已经执行了P(rw)但是并没有执行V(rw)所以rw的值为0,写者1会被阻塞在P(rw),此时读者2上处理机,由于W==0,所以读者2会被阻塞在P(W),因此写者1和读者2都被阻塞,当读者1读完后会执行V(rw)唤醒写者1,写者1结束后执行V(W)唤醒读者2。写进程执行时W的值为0,读进程会被阻塞在P(W),直到写进程结束释放W,读进程才能被唤醒,所以读写可以互斥访问。原创 2025-02-18 21:01:25 · 2045 阅读 · 1 评论 -
操作系统精讲3——信号量机制实现进程同步,进程互斥以及前驱关系
我们来简要分析一下,P1进程上处理机,即S1先执行,如果此时切换到进程2,执行P(a),而a的初值为0,所以P2进程阻塞,S2无法执行,只有当S1执行完,执行V(a)操作,a的值变为1,S2才能运行,S3同理,但是S2,S3是互不影响的,因为他们由a,b两个独立的信号量控制,而a,b的值又是由进程P1控制的。如上图所示,如果P1先使用处理机执行代码1,代码2,然后执行V操作,释放资源,S的值变为1,然后P2再使用处理机,先执行P操作,S为1不会被阻塞,然后执行代码4。下面再来看一下进程同步的实现。原创 2025-02-17 22:21:20 · 436 阅读 · 0 评论 -
操作系统———信号量机制介绍
现有的打印机资源数为1则初始S=1,p0先执行wait操作申请资源S自减1,S变为0,如果此时再有进程想访问打印机资源,先执行wait原语发现S=0则会卡在while循环中等待,只有当p0进程使用完打印机后执行signal原语将资源释放回收给系统后S的值增加1,又有可用资源,p1或者其他进程才能使用打印机,wait原语相当于把双标志检查法中的检查和上锁操作封装在了一起,避免了并发异步导致的问题。第八步:此时p3还没有执行完,p3执行完signal原语,系统回收资源,打印机资源又重新变为2。原创 2025-02-10 17:42:15 · 999 阅读 · 0 评论 -
操作系统———进程同步精讲<1>软硬件同步机制实现进程互斥及Peterson算法原理详解
上图是进程间的通信——管道通信,显而易见只有当写进程向管道中写入数据后读进程才能读取数据即写进程必须发生在读进程之前,管道为空的时候读进程是无法进行的,结合前面所学我们知道进程具有异步性,异步性是指各并发执行的进程以各自独立的,不可预知的速度向前推进,在管道通信中,读进程和写进程并发运行,并发必然导致异步性,因此读数据和写数据两个操作的先后顺序是不确定的,实际应用中写操作又必须发生在读操作之前,为了解决这种异步问题,产生了进程同步的概念。互斥,亦称间接制约关系。(即漫画中的共用卫生间)。原创 2025-02-08 21:28:53 · 1332 阅读 · 0 评论