发布时间:2014-09-05 17:42:08作者:知识屋
在linux每执行一个二进制文件都会产生一个进程并生成一个进程PID。进程除了自身的ID外,还有父进程ID(ppid),所有进程的祖先进程是同一个进程,它叫做init进程,PID为1。
当用户从一个终端登陆时,便获得一个此次执行的bash进程的PID。用户执行的每一条指令都是这个PID的子进程。
linux通过fork-and-exec的流程来产生子进程:首先会通过父进程以复制 (fork) 的方式产生一个一模一样的子进程, 然后被复制出来的子进程再以 exec 的方式来运行实际要进行的程序,最终就成为一个子进程的存在。僵尸进程:当该程序应该已经运行完毕,或者是因故应该要终止了,但是该程序的父程序却无法完整的将该程序结束掉,而造成那个程序一直存在内存当中,形成僵尸进程。
[zsp@sky]~$ vim a[1]+ 已停止 vim a[zsp@sky]~$ vim b[2]+ 已停止 vim b[zsp@sky]~$ jobs[1]- 已停止 vim a[2]+ 已停止 vim b那个+代表最近一个被暂停到后台的工作,且当执行fg命令时在后台下默认会被取用的那个工作。-代表最近最后第二个被暂停到后台中的工作号码
%可以指定处理哪一个后台任务
[zsp@sky]~$ fgvim b[2]+ 已停止 vim b[zsp@sky]~$ jobs[1]- 已停止 vim a[2]+ 已停止 vim b[zsp@sky]~$ fg %1vim a[1]+ 已停止 vim a[zsp@sky]~$ jobs[1]+ 已停止 vim a[2]- 已停止 vim b
输出格式规划:
l :较长、较详细的将该 PID 的的资讯列出;常用:
ps aux 列出系统所有的程序数据[zsp@sky]~$ ps -lF S UID PID PPID C PRI NI ADDR SZ WCHAN TTY TIME CMD0 S 1000 1955 1948 0 80 0 - 6086 wait pts/0 00:00:00 bash0 R 1000 2917 1955 0 80 0 - 2530 - pts/0 00:00:00 ps从左到右各个字段意思
[zsp@sky]~$ ps aux | head -n 2USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMANDroot 1 0.0 0.1 24440 2416 ? Ss 16:19 0:01 /sbin/initroot 2 0.0 0.0 0 0 ? S 16:19 0:00 [kthreadd]从左到右各个字段意思
动态观列出进程的变化
相对与 ps 是列出一个时间点的程序状态, top 则可以持续侦测程序运行的状态[zsp@sky]~$ top -d 3 -p 2308 -n 3 > top.txt[zsp@sky]~$ cat top.txt top - 17:47:09 up 1:27, 1 user, load average: 0.36, 0.51, 0.56Tasks: 1 total, 0 running, 1 sleeping, 0 stopped, 0 zombieCpu(s): 0.8%us, 0.5%sy, 0.0%ni, 97.8%id, 0.8%wa, 0.0%hi, 0.0%si, 0.0%stMem: 1965880k total, 1403864k used, 562016k free, 146084k buffersSwap: 2009084k total, 0k used, 2009084k free, 503384k cached PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 2308 zsp 20 0 422m 41m 23m S 2 2.1 1:24.12 plugin-containe每一行解释:
linux一键安装web环境全攻略 在linux系统中怎么一键安装web环境方法
Linux网络基本网络配置方法介绍 如何配置Linux系统的网络方法
Linux下DNS服务器搭建详解 Linux下搭建DNS服务器和配置文件
对Linux进行详细的性能监控的方法 Linux 系统性能监控命令详解
linux系统root密码忘了怎么办 linux忘记root密码后找回密码的方法
Linux基本命令有哪些 Linux系统常用操作命令有哪些
Linux必学的网络操作命令 linux网络操作相关命令汇总
linux系统从入侵到提权的详细过程 linux入侵提权服务器方法技巧
linux系统怎么用命令切换用户登录 Linux切换用户的命令是什么
在linux中添加普通新用户登录 如何在Linux中添加一个新的用户
2012-07-10
CentOS 6.3安装(详细图解教程)
Linux怎么查看网卡驱动?Linux下查看网卡的驱动程序
centos修改主机名命令
Ubuntu或UbuntuKyKin14.04Unity桌面风格与Gnome桌面风格的切换
FEDORA 17中设置TIGERVNC远程访问
StartOS 5.0相关介绍,新型的Linux系统!
解决vSphere Client登录linux版vCenter失败
LINUX最新提权 Exploits Linux Kernel <= 2.6.37
nginx在网站中的7层转发功能