- 博客(8)
- 收藏
- 关注
原创 页面置换算法实验(Java模拟)
实验中,使用Java语言实现了四种常见的页面置换算法:OPT、FIFO、LRU和LFU。OPT算法:作为理论最优的算法,OPT算法通过预测未来页面的使用情况,选择最迟使用的页面进行替换。虽然在实际操作中很难实现,但它提供了一个性能基准,帮助我们评估其他算法的效果。FIFO算法:FIFO算法简单直观,它总是淘汰最先进入内存的页面。实验结果表明,在内存块数量为3时,FIFO算法的缺页率和缺页次数都较小,表现出较好的性能。然而,当内存块数量增加到4时,出现了Belay现象,性能有所下降。
2025-01-16 06:30:00
1468
原创 连续存储分配管理实验(Java模拟)
在本次实验中使用JAVA语言模拟了四种内存分配算法–首次适应算法(FF)、循环首次算法(NF)、最佳适应算法(BF)和最坏适应算法(WF)。此外还实现了内存回收算法。在设计方面设计了三个类分别为Work、MemoryBlock和RequestView三个类分别代表作业,内存块和请求实体。请求实体中只有作业名称和请求内存大小。而在Work类中有作业名称、作业使用内存的首地址,请求的内存大小和实际申请到的内存大小。MemoryBlock类中有起始地址字段、大小和状态三个字段。
2025-01-15 06:30:00
1441
原创 银行家算法模拟实验(Java模拟)
银行家算法是一种避免死锁的算法,它通过动态地分配资源来避免进程死锁。在银行家算法中,每个进程在请求资源时,系统会先判断该进程请求资源后是否会导致系统进入不安全状态,如果不会,就分配资源给该进程,否则就让该进程等待。银行家算法的核心思想是安全性检查,即在分配资源之前,先检查分配资源后系统是否处于安全状态,如果是,则分配资源,否则就等待。通过这种方式,可以避免死锁的发生。在操作系统中,银行家算法通常用于管理多个进程对有限资源的请求。在实验中,可以通过模拟多个进程对资源的请求和释放,来验证银行家算法的正确性。
2025-01-14 06:30:00
249
原创 进程控制和调度实验(Java模拟)
如果只看时间片轮转调度算法,对于本次的五个时间片中,当时间片大小为所有进程平均所需的时间大小时,平均周转时间和平均带权周转时间最小,而时间片为所有进程平均所需的时间大小的0.1倍和0.2倍时结果差距不是非常大。从实验的结果可以看出,在所有的调度算法中(FCFS, SJF, PSA和RR)中对于本次程序随机产生的五个进程的调度中SJF调度算法的平均周转时间和带权平均周转时间都是最小的,所以对于本次的五个进程短作业优先调度算法是最好的。2、计算了每种算法的平均周转时间和平均带权周转时间。
2025-01-13 09:07:35
270
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅