谦让度与进程优先级的调整

谦让度与进程优先级的调整

ID:21878667

大小:94.06 KB

页数:6页

时间:2018-10-25

谦让度与进程优先级的调整_第1页
谦让度与进程优先级的调整_第2页
谦让度与进程优先级的调整_第3页
谦让度与进程优先级的调整_第4页
谦让度与进程优先级的调整_第5页
资源描述:

《谦让度与进程优先级的调整》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、实验:进程和线程的应用实验目的:1.向进程发送信号以控制进程。2.调整进程优先级。实验内容:设罝进程的谦让度来调整进程的优先级实验步骤:一、谦让度与进程优先级的调整由于CPU资源的有限性造成了进程间耑要轮流使用CPU,而操作系统更倾向于让优先级更岛的进程获得CPU资源。谦让度反映了进程对CPU资源要求的迫切程度,用户可以通过设罝进程的谦让度来调整进程的优先级,从而让目标进程在CPU资源竞争屮更具优势或者相反。本案例将通过实验演示进程谦让度是如何调整进程的优先级并以此影响进程在竞争CPU资源时的表现。实验的思路是编写一个对CPU资源要求较

2、高的脚本,通过同时启动若干个关于该程序的测试进程,并且对这些进程分别设置不同的谦让度,以此观察它们CPU竞争中是处于优势还是劣势。以下是本案例的操作步骤:1、编写并执行测试脚木。编写测试脚本的0的是创建一个大量消耗CPU时间的进程,测试脚本process.sh的代码如下:#!/bin/shcount=$1while[$count-gtOJdocount=$f$count-1]sleep0.0()1doneecho“process$$finish.”脚本根据用户所给的第一个参数执行若干次循环,每次循环内部通过sleep命令延迟0.001秒

3、。为简化脚木代码,这里并没有检查用户输人参数的合法性2、测试和检查硬件情况。在测试脚本pmcess.sh中设定脚本需要一个参数来设置脚本执行的循环次数,然而脚本的执行时间不仅取决于所设参数,还与当前执行脚本的CPU硬件条件有关。为了在后面设置一个较为合理的参数,建议用以下命令测试到前硬件条件下脚本的执行速度,其中设置了系统吋间的显示格式为“分钟:秒”:[root@localhost#date+“%M:%S”;./process.sh1000;date+“%M:%S”57:02Process12401finish.57:10从测试结果可知

4、当给定参数为1000时脚木执行时间约为8〜10秒。注意不同CPU硬件条件下脚本执行的速度会略有所不同,在后面的实验中可以根据实际情况设定合适的参数值。此外,值得注意的是为了突出实验效果,应在VMware中设置虚拟机的CPU个数仅为1个(CPU核心),这样能够避免向虚拟机提供过多的CPU资源而导致了进程间竞争不明显。3、启动两个测试进程并观察竞争结果。一个进程的谦让度设为“-20”,而另一进程的谦让度设为“19”,也即设置两个测试进程之间在谦让度上差异最大。以下是启动进程的命令:[root@localhost〜]#(nice-n-20./

5、process,sh100000&);(nice-n19./process,sh100000&);top-d10top-21:58:02up1day,20:40,4users,loadaverage:0.98,1.69,1.02Tasks:162total,2running,160sleeping,0stopped,0zombieCpu(s):8.5%us,88.0%sy,1.4%ni,2.0%id,0.0%wa,0.1%hi,0.0%si,0.0%stMem:15511512ktotal,770104kused,781408kfree

6、,84368kbuffersSwap:4161528ktotal,0kused,4161528kfree,365980kcachedPIDUSERPRNIVIRTRESSHRS%CPU%MENTIME+COMMAND0.10:01.87process.sh0.10:00.58process.sh23120root0-20663611561020S14.123122root3919663611561020S3.9从CPU占用率(字段%0?11)以及累计使用的CPU时间(字段TIME+)的结果上可见,谦让度“-20”的进程在竞争中明显优于谦

7、让度为“19”的进程。注意记录两个测试进程的PID后及吋进人第4步操作。4、暂停两个测试进程并调整谦让度。记荣下两个测试进程PID后,需要在其他终端上向两个测试进程发送SIGSTOP信号让它们暂停运行,然后缩小两个进程在谦让度上的差距:[root@localhost〜1#kill-SIGSTOP2312023122[root@localhost〜]#renice-n-523120231200:oldpriority-20,newpriority-5[root@localhost〜]#renice-n-52312223122:oldpri

8、ority19,newpriority55、恢复执行两个测试进程并观察竞争结果。调整好两个进程的谦让度后,继续输入如下命令:[root@localhost-]#kill-SIGSTOP2312023122继

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。