【操作系统导论 1-4进程】

作业源码GitHub地址:https://github.com/remzi-arpacidusseau/ostep-homework/tree/master/cpu-intro
1.用以下标志运行程序:./process-run.py -l 5:100,5:100。CPU利用率(CPU使用时间的百分比)应该是多少?为什么你知道这一点?利用 -c标记查看你的答案是否正确。
在这里插入图片描述
进程1、2均使用cpu资源,包含5条指令
cpu利用率为100%,进程1的5个指令执行完执行进程2的5个指令

2.现在用这些标志运行:./process-run.py -l 4:100,1:0。这些标志指定了一个包含4条指令的进程(都要使用CPU),并且只是简单地发出I/O并等待它完成。完成这两个进程需要多长时间?利用-c检查你的答案是否正确
在这里插入图片描述
进程1使用cpu资源,进程2发起含1条指令的io请求。
花费时间为:进程1的完成4条指令时间(使用cpu资源)+进程2发起io请求时间(使用cpu资源)+进程阻塞时间(读取磁盘/内存数据)

3.现在交换进程的顺序:./process-run.py -l 1:0,4:100。现在发生了什么?交换顺序是否重要?为什么?同样,用-c看看你的答案是否正确。
在这里插入图片描述
交换进程顺序后,先执行io操作,再执行非io操作
交换顺序重要。交换顺序后,在进程1阻塞时,进程2执行,减少了整个命令(进程1+进程2)的运行时间

4.现在探索另一些标志。一个重要的标志是-S,它决定了当进程发出I/O时系统如何反应。将标志设置为SWITCH_ON_END,在进程进行I/O操作时,系统将不会切换到另一个进程,而是等待进程完成。当你运行以下两个进程时,会发生什么情况?一个执行I/O,另一个执行CPU工作。(-l 1:0,4:100 -c -S SWITCH_ON_END)
在这里插入图片描述
设置-S 标志为SWITCH_ON_END时,进程1阻塞时进程2不会执行,而是等待进程1执行完毕后才开始执行

5.现在,运行相同的进程,但切换行为设置,在等待I/O时切换到另一个进程(-l 1:0,4:100 -c -S SWITCH_ON_IO)。现在会发生什么?利用-c来确认你的答案是否正确。
在这里插入图片描述
设置-S 标志为SWITCH_ON_IO时,进程1阻塞时进程会同时执行

6.另一个重要的行为是I/O完成时要做什么。利用-I IO_RUN_LATER,当I/O完成时,发出它的进程不一定马上运行。相反,当时运行的进程一直运行。当你运行这个进程组合时会发生什么?(./process-run.py -l 3:0,5:100,5:100,5:100 -S SWITCH_ON_IO -I IO_RUN_LATER -c -p)系统资源是否被有效利用?
在这里插入图片描述
-I IO_RUN_LATER,当I/O完成时,发出它的进程不一定马上运行。由上图可以看出,cpu资源未被有效利用。好的解决方案是当I/O完成时,使发出它的进程继续运行,此时发出它的进程继续发起I/O请求,进程阻塞,而此时其它进程可执行,提高cpu资源利用率。如题7

7.现在运行相同的进程,但使用-I IO_RUN_IMMEDIATE设置,该设置立即运行发出I/O的进程。这种行为有何不同?为什么运行一个刚刚完成I/O的进程会是一个好主意?
在这里插入图片描述
8.现在运行一些随机生成的进程,例如-s 1 -l 3:50,3:50, -s 2 -l 3:50,3:50, -s 3 -l 3:50,3:50。看看你是否能预测追踪记录会如何变化?当你使用-I IO_RUN_IMMEDIATE与-I IO_RUN_LATER时会发生什么?当你使用-S SWITCH_ON_IO与-S SWITCH_ON_END时会发生什么?
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
操作系统导论》是一本关于操作系统基本概念和原理的教材。操作系统是计算机系统中最核心的软件之一,它管理和控制计算机硬件资源,并提供给用户和应用程序一个简单易用、高效稳定的接口。 《操作系统导论》主要内容包括操作系统的历史、发展背景,以及操作系统的基本概念、功能和特性等。通过对操作系统的研究,读者能够了解操作系统的架构和组成,掌握操作系统的重要原理和算法,并能够利用这些知识进行操作系统的设计和开发。 在《操作系统导论》中,读者将深入学习操作系统的各个模块,比如进程管理、内存管理、文件系统等。通过对这些模块的学习,读者能够理解操作系统的核心功能,并能够掌握操作系统的基本工作原理。此外,书中还介绍了操作系统的各种经典算法和策略,如调度算法、页面置换算法等,这些算法是实现操作系统功能的基础。 除了基本概念和原理外,《操作系统导论》还涵盖了一些研究热点和前沿技术,如分布式系统、虚拟化技术和云计算等。通过深入了解这些新领域的内容,读者可以了解到操作系统在不同领域的应用和发展趋势。 总之,《操作系统导论》是一本系统介绍操作系统的教材,内容丰富、深入浅出,适合计算机科学与技术相关专业的学生和从业人员阅读使用。通过学习这本书,读者能够全面了解操作系统的基本概念和原理,提高操作系统的设计和开发能力。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值