本次课程设计中采用 Microsoft Visual Studio 2005作为开发平台,并且采用MFC进 行相关的设计。在这里可以设计三个资源,三个进程的不同分配方案。在资源预设中,有一个“默认值”按钮是用来设置资源,系统定义的默认值,该默认值来源于上面所述的银行家算法之例。控制面板中的“重置”按钮是用来将所有设置的值进行清空,“MAX”和“A_CA”按钮是分别用于设置MAX和Allocation的默认值的。而Request是用于设置当前分配后,再对某一进程进行资源的请求分配。“计算”按钮是用于计算Need和Available的相应的值的。“安全序列”按钮则是用于判断安全状态并生成相应的安全序列的。
2022-10-27 12:37:09 10.86MB 银行家算法
1
LINux系统内核定时器机制的操作系统课程设计。内有LInux操作系统内核定时器机制的详细讲解
1
资源包含文件:设计报告word+代码 完成到thread的部分,这部分的最终任务就是在threads/中跑make check的时候,27个test全部pass 。详细介绍参考:https://blog.csdn.net/newlw/article/details/124091981
2022-10-20 09:03:22 7.61MB 操作系统 Pintos thread makecheck
使用C++编写的可在Linux系统运行的主存空间的分配与回收的课设报告,包含一个主程序和七个分程序,分程序使用头文件展示,完整地模拟了主存空间的分配与回收系统。含有一个主程序流程图,五个算法的流程图以及在Linux下运行的结果截图。
1
本资源为 2022 操作系统课程设计--xv6-labs-2021 的课程设计报告 ·实验环境:VMware Ubuntu 20.04 ·所有代码已上传至github:https://github.com/Bestom927/MIT-6.S081 ·本实验报告完成了2021年版本出来networking外的剩余九个lab
2022-09-28 12:00:36 1.9MB xv6 操作系统 OS
1
 在计算机系统中,为了提高主存利用率,往往把辅助存储器(如磁盘)作为主存储器的扩充,使多道运行的作业的全部逻辑地址空间总和可以超出主存的绝对地址空间。用这种办法扩充的主存储器称为虚拟存储器。通过本实验帮助理解在分页式存储管理和请求分页式存储管理中怎样实现虚拟存储器。2.1 在内存的分页式存储管理中,包含很多内存块、一个页表,页表中包含许多页表项,页表项中包含页号、内存块号、块号状态。因为模拟的是虚拟内存管理,所以不多设置外存信息。在内存的分页式管理中封装Page类和Block类,核心的操作封装在类PagingStorage中。整体的仿真流程是将预设的两个作业输出到控制台,然后通过输入作业的作业号,系统将会自动为两个作业生成各自的页表。这时系统将提示输出选择的作业,选择任意一个。然后系统提示是否选择重定位。输入‘y’则进行重定位,输入‘n’则不做任何处理。若输入的是‘n’,系统则提“请输入页号和偏移量(p,w):”,根据提示输入之后系统会根据地址重定位算法计算出物理地址。2.2 在虚拟存储器的请求页式存储管理中,系统设置了输入数据显示、FIFO页面置换算法、LRU页面置换算法、两种算法的
1
操作系统课程设计报告资源原创
2022-08-24 09:01:11 340KB 操作系统 期末
1
本程序实现有限缓冲区问题,设计了两个进程,一个在地址空间运行,一个生产者进程 producer模拟生产产品,并把每个产品放到一个空缓冲中供消费consumer消费。消费者从缓冲区中取出产品,然后释放到空的缓冲池中。如果没有满缓冲,消费者就会被阻塞,直到生产者生产出新的产品。如果当生产者生产了配件后,没有空缓冲可用时,生产者就被阻塞,直到消费者线程释放出一个空缓冲。 程序使用共享内存的方法实现缓冲区,利用PV操作与信号量的方法实现生产者与消费者的同步。程序利用了三个信号量:mutex用于互斥地访问缓冲区;full用于判断缓冲区是否为满,用于指示消费者线程能否从缓冲区中取出产品;empty则是用于判断缓冲区是否为空,用于指示生产者线程能否进行生产。有限缓冲区问题的实现,其目的是为了了解UNIX的命令及格式,熟悉UNIX的常用基本命令以及相关的编译器。本程序用gcc、gdb编译、调试C程序,编写程序实现有限缓冲区问题。
2022-07-17 09:01:00 647KB 操作系统课程设计
1
操作系统课程设计_银行家算法.pdf
2022-07-09 19:08:18 338KB 文档资料
操作系统课程设计银行家算法模拟实现.pdf
2022-07-09 19:08:17 722KB 文档资料