ImageVerifierCode 换一换
格式:DOCX , 页数:13 ,大小:254.73KB ,
资源ID:7287337      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/7287337.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(实验9 linux进程管理与系统监视.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

实验9 linux进程管理与系统监视.docx

1、实验9 linux进程管理与系统监视广东技术师范学院实验报告学院:广东技术师范学院专业:软件工程班级:09软件成绩:姓名:学号:组别:组员:实验地点:工业中心204实验日期:2011.10.27指导教师签名:预习情况操作情况考勤情况数据处理情况实验 9 项目名称: 进程管理 1、 实验目的理解进程管理的基本原理方法,掌握在Linux系统中查看进程状态、控制进程以及调整进程优先级等基本方法。2、 实验内容2.1 进程管理的基本概念 什么是进程管理?要理解这个概念,就必须理解什么是进程。进程是在操作系统原理课程中的一个核心概念。进程(Process)是程序的一个执行过程。进程需要占用各种系统资源,

2、包括CPU、内存等,需要读写各类文件,调用各种系统功能。自然,从进程的创建到撤销,操作系统会为它安排一切。不过,操作系统的安排是根据固定的算法所进行,纵使这些算法能根据当前情况不断调整,但不可能预先知道你的需要,然后让某个进程在特定某个时间挂起,让某个进程的优先级升高等等。因此,进程管理是指根据当前实际需求,对进程加以特定的控制。 作为一个管理员,定时查看当前系统中各个进程的具体状态,捕捉各种进程运行的异常,合理分配各类资源,特别是CPU资源给不同的进程,对各类进程有计划地控制等等,都属于进程管理的内容。系统为管理员提供了一系列的工具和命令,以让管理员完成管理工作。2.2进程管理的基本方法2.

3、2.1 查看进程状态获知进程状态是进程管理的第一步。UNIX系统为进程留了许多接口、命令和工具。最典型的是/proc文件系统。这是一个特殊的文件系统。在此文件系统中,每个目录对应于一个进程,目录的名称即为进程的PID号。进入某个进程对应的目录,里面有若干文件,这些文件记录了该进程当前运行的各种相关状态信息。应用程序可通过对这些文件打开并读取(部分甚至还能通过写文件控制进程)来获取进程信息。例子:查看/proc文件系统#cd /proc/#ls0 12294 16392 213144 28686 376918 53274 688280 8642561 1245238 163974 217238

4、295118 381008 561308 69666 876674#cd 1#ls#cred lwp psinfo sigact status 对于管理员,更常用的方法是利用ps命令来获知进程的基本状态。请参考以下例子并完成问题。命令:ps 功能:列出当前活动进程的状态格式:ps 选项 参数选项:如果不使用任何选项,则列表显示当前工作站的活动进程,并且仅显示部分字段的内容。由于关于ps的选项很多,没必要全部列出并记忆,更常用的做法是记住一些有特定功能的选项组合。常用的选项含义如下:-f:生成一个长列表(部分字段仍然省略了,但比不加该选项的要多)-l(list):显示进程的全部列表字段信息-e:

5、显示除内核进程外的全部进程-a:显示用户的全部进程-u(user):显示特定用户的进程,-k(kernel):显示内核进程ps命令的一些常见的选项组合示例如下:(1)仅显示当前工作站的活动进程# ps PID TTY TIME CMD 270396 pts/9 0:00 ps 725186 pts/9 0:00 bash(2)显示系统中除内核外的所有进程 # ps -e -f UID PID PPID C STIME TTY TIME CMDroot 1 0 0 Aug 24 - 0:02 /etc/initZianed 1343542 741620 0 19:29:52 - 0:00 ssh

6、d: Zianedpts/1(3)显示关于特定用户的进程 # ps -lu userF S UID PID PPID C PRI NI ADDR SZ WCHAN TTY TIME CMD 40001 A 85287 421918 905408 0 60 20 1d966400 1012 - 0:00 sshd 240001 A 85287 503876 421918 0 60 20 3b49400 1168 f1000600021e1478 pts/7 0:00 bash(4)显示系统内核的进程 # ps -k PID TTY TIME CMD 0 - 0:29 swapper 8196 -

7、 2395:12 wait 12294 - 0:00 sched(5)查看各个进程占用CPU的情况 #ps auxUSER PID %CPU %MEM SZ RSS TTY STAT STIME TIME COMMANDroot 8196 12.1 0.0 384 384 - A Aug 24 3630:51 wait上述每个例子返回结果都是以列表形式出现,列表中主要字段的含义如下, PID:进程标识号 PPID:进程的父进程标识号 UID:进程所属的用户ID TTY:进程所属的终端号 TIME:进程的执行时间总和 CMD(command):进程的命令名 STIME:进程的启动时间 PRI(p

8、riority):进程的优先级,数字越大优先级越低 NI(nice):进程的谦让度 S(status):进程的状态,对于一般进程主要状态有:A(活动的)、T(已停止)、Z(已取消)等。对于内核进程主要状态有:R(正在运行)、S(休眠)、T(已停止)、Z(已取消)等。2.2.2 控制作业的基本操作除对进程进行控制外,作业(job)是另一个与进程控制密切相关的概念。简单来说,作业是用户向系统提交的一个任务请求,系统根据请求创建相应的进程完成该任务。用户每输入的一个shell命令其实都是一个作业,这个作业经解释后对应于一个到多个进程加以执行。作业可以在前台执行,这是用户可以跟作业进行交互。当用户并不

9、需要与作业交互,则作业也可以在后台执行。如果用户想作业启动之初就让其在后台运行,就需要在关于该作业的shell命令结尾加上“&”。作业执行时有作业号,用户可根据作业号对作业进行相应的控制,最基本的控制是将作业在终端的前后台之间切换。命令:jobs 功能:查看当前用户的作业情况格式:jobs命令:bg 功能:将前台作业切换到后台执行格式:bg 作业号命令:fg 功能:将后台作业切换到前台执行例子:作业控制的基本命令。# vi jobtest &1 1110094# jobs -l1+ 1110094 Stopped vi jobtest#fg 1 将作业1调出调到前台,按ctrl+z可将其切换到

10、后台vi jobtest# bg 1 利用bg命令将作业1调到后台(功能与ctrl+z一样)1+ vi dd &2.2.3 进程与信号量在UNIX系统中,用户可通过向进程发送相应的信号量来控制进程。AIX中一些常用的信号量如下,信号量旁的括号内标示的是该信号量的编号: SIGINT(2):程序终止(interrupt)信号,用于通知前台进程组终止进程,用户键入ctrl+c后前台进程终止。 SIGQUIT(3):与SIGINT相似,进程终止后会生成文件core,用户键入ctrl+后进程终止。 SIGKILL(9):该信号不能被忽略,因此常用于强行终止某进程。 SIGTSTP(18):终止进程,但

11、该信号可以被处理和忽略. 用户键入ctrl+z发出这个信号,进程转入后台并挂起。命令:kill功能:向特定某个进程发送信号。格式:kill -信号编号 进程PID例子:利用kill命令向进程发送信号。 #vi test & 1 761968#kill -9 7619681+ Stopped vi test#ps -a PID TTY TIME CMD 761976 pts/11 0:00 ps 1032196 pts/15 0:00 ksh 1359972 pts/0 0:00 ksh1+ Killed vi test例子:利用kill命令列出所有的信号量及其编号#kill -l 1) SIG

12、HUP 2) SIGINT 3) SIGQUIT 4) SIGILL 5) SIGTRAP 6) SIGABRT 7) SIGEMT 8) SIGFPE 9) SIGKILL 10) SIGBUS 11) SIGSEGV 12) SIGSYS13) SIGPIPE 14) SIGALRM 15) SIGTERM 16) SIGURG17) SIGSTOP 18) SIGTSTP 19) SIGCONT 20) SIGCHLD21) SIGTTIN 22) SIGTTOU 23) SIGIO 24) SIGXCPU25) SIGXFSZ 27) SIGMSG 28) SIGWINCH 29) S

13、IGPWR30) SIGUSR1 31) SIGUSR2 32) SIGPROF 33) SIGDANGER34) SIGVTALRM 35) SIGMIGRATE 36) SIGPRE 37) SIGVIRT38) SIGALRM1 39) SIGWAITING 60) SIGKAP 61) SIGRETRACT62) SIGSOUND 63) SIGSAK 2.2.4 进程与优先级进程的优先级是指系统在进程调度时用于判决进程是否能够获取CPU的依据。进程的优先级越高,则越能在竞争中胜出而获得CPU时间。在Linux系统中,进程的优先级以一个整数表达,数值越低,优先级越高。每个普通进程的优先

14、级默认为60。根据动态优先级原理,操作系统会在调度进程的过程中对进程优先级进行调整。同时,管理员可以根据实际需要自行对某些进程的优先级加以调整。这里涉及到另外一个概念,进程的“nice”值。nice值可翻译为“谦让度”,因为nice是一个从-2019的值,nice默认等于0(也即不起作用),进程的nice值为负数时,其优先级升高(也即代表优先级的数值下降),而进程的nice值为正数时,则进程的优先级下降(也即优先级的数值升高了)。在Linux中,普通用户一般只能调高优先级数值,也即让自己的进程“谦让”一点。如果要让某个服务进程能够及时响应请求,可将其nice值提高。命令:nice功能:设定要启

15、动的程序的优先级格式:nice -增量 启动的命令及其选项和参数,nice=原nice值+增量,nice默认为0。命令:renice功能:调整进程的优先级格式:renice -n 增量 进程PID号例子:nice命令与renice命令的使用,注意进程的优先级(PRI)和nice值(NI)的变化。 # nice -2 vi 按ctrl+z将vi程序切换到后台 # ps -alF S UID PID PPID C PRI NI ADDR SZ WCHAN TTY TIME CMD200811 T 85287 749588 757858 0 64 22 303f1400 876 pts/15 0:0

16、0 vi # renice -n 5 749588 # ps -alF S UID PID PPID C PRI NI ADDR SZ WCHAN TTY TIME CMD200811 T 85287 749588 757858 0 74 27 303f1400 876 pts/15 0:00 vi2.3 守护进程Linux在启动时需要启动很多系统服务,提供这些服务的程序是由运行在后台的守护进程(daemons)来执行的。守护进程独立于控制终端,周期性地执行某种任务或等待处理某些发生的事件。守护进程的生存期较长,常常在系统引导装入时启动,在系统关闭时终止。一些重要的守护进程: init:系统的

17、1号进程,主要工作是为系统提供初始化服务。 kudzu:硬件自动检测程序,会自动检测硬件是否发生变动,并相应进行硬件的添加、删除工作。 crond:周期性地运行用户调度的任务。 syslog:日志记录的守候进程。 sshd:OpenSSH服务器守护进程。 smb:Samba文件共享/打印服务守护进程。 network:激活/关闭启动时的各个网络接口的守护进程。 httpd:Web服务器Apache守护进程。 vsftpd:vsftpd服务器的守护进程。 named:DNS(BIND)服务器守护进程。 dhcpd:动态主机控制协议(Dynamic Host Control Protocol)的服

18、务守护进程。作业:请完成如下作业,并给出详细的步骤和截图。(1) 启动vi编辑器,并将其调入后台,再调出前台,最后退出vi。 (2) 启动vi编辑器,并将其调入后台,再将该作业杀死。 (3) 启动两个vi编辑器,均调入后台后,查看当前有那些作业正在执行。使用ctrl+z 将作业放到后台: (4) 列出你在当前系统中的所有进程。指出你在该系统中最早启动的进程是那个,在什么时候启动? 最早在:15:58分启动。(5) 列出当前系统中占用CPU时间比例最高的进程。 Root中id为3578占用时间最长。(6) 系统内核的进程中那个进程的运行时间最长,为什么? # ps -k PID TTY TIME

19、 CMD 0 - 0:29 swapper 8196 - 2395:12 wait 12294 - 0:00 sched(7) 获得ls命令的帮助手册后,将其转入后台,在转出到前台,并退出手册。 (8) 先后新建文件a和文件b,并相应启动vi对它们进行编辑。一开始要求文件a在前台执行,b在后台执行。对文件a输入一些文字后,将其切换到后台,然后将文件b调到前台,同样输入一些文字。最后将打开a文件的vi进程杀死,b文件保存并退出vi。 (9) 列出当前系统中的所有进程(包括普通进程和守护进程),并指出哪些进程的优先级较高,这些进程有什么特点? (10) 守护进程中那些进程优先级比较高,那些进程的优

20、先级比较低,你能发现优先级比较低是些什么样的进程?优先级比较高的又是什么样的进程?请找一两个典型的进程加以说明(Google一下这些进程)。(11) 利用nice程序启动三个vi程序,其nice分别为5,10,15,观察这三个vi程序的优先级,nice值与进程的优先级呈怎样的数值关系?或者说,nice值每增加1,优先级的数值是否也增加1,还是增加得更多?(可利用renice命令不断调整进程的nice值以获得实际规律)。 nice值与进程的优先级呈关系:反比(12) 选取三个2.3节中所列的守护进程,列出他们的PID以及nice值。 init:系统的1号进程,主要工作是为系统提供初始化服务。PID为:1 nice值为:0 sshd:OpenSSH服务器守护进程。 PID为:3194 nice值为:0 syslog:日志记录的守候进程。PID为:2787 nice值为:0

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1