进程管理
1、程序与进程的区别
程序:保存在硬盘、光盘等介质中的可执行代码和数据;是静态保存的代码
进程:在CPU及内存中运行的程序代码; 是动态执行的代码;
父、子进程:每个进程可以创建一个或多个进程
2、查看进程信息
1)、ps命令
用途:查看静态的进程统计信息
格式:ps aux ==>显示系统所有进程
ps -elf ==>以长格式显示
2)、top命令
用途:查看动态的进程排名信息
格式:top
3)、pgrep命令
用途:根据特定条件查询进程PID信息
[root@localhost ~]# pgrep "init" 1 [root@localhost ~]# pgrep -l "log" 2538 syslogd 2541 klogd 3221 login [root@localhost ~]# pgrep -l -U teacher -t tty1 27483 bash 27584 vim
4)、pstree命令
用途:以树型结构显示各进程间的关系
格式:pstree [-aup]
3、进程的不同启动方式
1)手工启动
前台启动:用户输入命令直接执行程序
后台启动:在命令行尾加入“&”符号(即把这个命令放在后台执行,执行后,会显示一个后台任务顺序号和一个PID号)
[root@localhost ~]# ls -l & [1] 28453 ==>后台任务序号为1(这个要记住,因为唤醒时要用到),PID号为28453
2)调度启动
使用at命令,设置在某个特定的时间,执行一次任务
使用crontab命令,设置按固定的周期(如每天、每周等)重复执行预先计划好的任务
3)、进程的前后台调度ctrl+Z : 将当前进程挂起,即调入后台并停止执行
jobs :查看处于后台的任务列表
fg : 将处于后台的进程恢复到前台运行,需指定任务序号
4)、终止进程的运行
Ctrl + C :中断正在执行的命令
kill、killall : kill 用于终止指定PID号的进程
killall 用于终止指定名称的所有进程
-9选项用于强制终止
下面是我使用top命令获取当前正在运行的进程(部分)
这里有两条top的进程,是因为我打开了两个terminal,然后都运行了top命令,若我现在要将另一个终端的top命令杀掉,则如下:
[root@localhost ~]# kill 3792 ==>此时另一个额终端将退出top命令
若杀掉所有正在打开的文本文件:killall -9 geidt
终止进程的运行——pkill命令
[linuxidc@localhost ~]$ w | grep -v "root" ==>查看除root用户外哪些用户在使用终端 11:17:38 up 1:18, 3 users, load average: 0.14, 0.05, 0.01 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT linuxidc :0 - 10:01 ?xdm? 18.56s 0.22s /usr/bin/gnome- linuxidc pts/1 :0.0 11:17 0.00s 0.02s 0.01s w linuxidc pts/2 :0.0 11:17 10.00s 0.01s 0.01s bash [linuxidc@localhost ~]$
上述pts有2个,是因为我打开了两个terminal,并且都是以linuxidc用户登录的,现在我要停止pts/1里的所有进程:
[linuxidc@localhost ~]$ pkill -9 -t pts/1 ==>这个命令一旦运行,则pts/1这个终端将立即关闭
再次查看时只有一个pts/2了:
[linuxidc@localhost ~]$ w | grep -v "root" 11:22:13 up 1:22, 2 users, load average: 0.09, 0.12, 0.05 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT linuxidc :0 - 10:01 ?xdm? 18.56s 0.22s /usr/bin/gnome- linuxidc pts/2 :0.0 11:17 00.00s 0.01s 0.00s w [linuxidc@localhost ~]$
操作系统DOS命令复习点汇总
[DOS]2015年5月11日操作系统DOS命令复习点(120)
[DOS]2015年4月14日操作系统DOS命令复习点(119)
[DOS]2015年4月13日操作系统DOS命令复习点(118)
[DOS]2015年4月13日操作系统DOS命令复习点(117)
[DOS]2015年4月13日