进程和优先级

     什么是进程?我们先来了解一下进程的概念:我们知道操作系统最核心的概念就是进程。进程简单来说就是在操作系统中运行的程序,它是操作系统资源管理的最小单位。但是进程是一个动态的实体,它是程序的一次执行过程。进程和程序的区别在于:进程是动态的,程序是静态的,进程是运行中的程序,而程序是一些保存在硬盘上的可执行代码。1

   当多个任务要执行时怎么办呢?先执行谁呢?这时候就需要看优先级了。
进程优先级:
(1)系统优先级:数字越小优先级越高 0-139 各有140个运行队列和过期队列
(2)实时优先级:99-0 值越大优先级越高
(3)nice值:-20到19,对应系统优先级100-139或99

1

进程类型:

(1)守护进程:daemon,是运行在后台的一种特殊进程。它独立于控制终端并且周期性地执行某种任务或等待处理某些发生的事件。它不需要用户输入就能运行而且提供某种服务,不是对整个系统就是对某个用户程序提供服务。Linux系统的大多数服务器就是通过守护进程实现的。

守护进程一般在系统启动时开始运行,除非强行终止,否则直到系统关机都保持运行。守护进程经常以超级用户(root)权限运行,因为它们要使用特殊的端口(1-1024)或访问某些特殊的资源。一个守护进程的父进程是init进程,因为它真正的父进程在fork出子进程后就先于子进程exit退出了,所以它是一个由init继承的孤儿进程。守护进程是非交互式程序,没有控制终端,所以任何输出,无论是向标准输出设备stdout还是标准出错设备stderr的输出都需要特殊处理。

(2)前台进程:跟终端相关,通过终端启动的进程

       注:守护进程和前台进程可以相互转换

进程状态

(1)运行态(TASK_RUNNING)
指正在被CPU运行或者就绪的状态。这样的进程被成为runnning进程。运行态的进程可以分为3种情况:内核运行态、用户运行态、就绪态。

(2)睡眠态
可中断睡眠状态(TASK_INTERRUPTIBLE)
处于等待状态中的进程,一旦被该进程等待的资源被释放,那么该进程就会进入运行状态。
不可中断睡眠状态(TASK_UNINTERRUPTIBLE)
停止态(TASK_STOPPED)暂停与内存,但不会被调度,除非手动启动。
当进程收到信号SIGSTOP、SIGTSTP、SIGTTIN或SIGTTOU时就会进入暂停状态。可向其发送SIGCONT信号让进程转换到可运行状态。

(3)僵死态(TASK_ZOMBIE)
结束进程,父进程结束,前子进程不关闭

查看进程命令:ps

ps命令支持3种选项:1.unix选项:如 -A -e   2.BSD选项 :如a    3.GNU选项:如– help

ps  a 包括所有终端的中的进程

1

ps  x 包括不链接终端的进程

1

ps u 显示进程所有者的信息

1

ps f 显示进程的父进程

1

ps -e显示所有进程

ps -f显示完整格式程序信息

ps -o 选择指定要看的信息(如PID,%CPU等)

1

pstree 树状显示进程

pidoff  XX查看xx的进程编号

1

ps命令一般使用 ps aux 或者lax组合查看进程

ps 命令标头解释

USER 进程的属主;
PID 进程的ID;
PPID 父进程;
%CPU 进程占用的CPU百分比;
%MEM 占用内存的百分比;
NI 进程的NICE值,数值大,表示较少占用CPU时间;
VSZ 进程虚拟大小;
RSS 驻留中页的数量;
TTY 终端ID
STAT 进程状态(有以下几种)
D 无法中断的休眠状态(通常 IO 的进程);
R 正在运行可中在队列中可过行的;
S 处于休眠状态;
T 停止或被追踪;
W 进入内存交换(从内核2.6开始无效);
X 死掉的进程(从来没见过);
Z 僵尸进程;
< 优先级高的进程
N 优先级较低的进程
L 有些页被锁进内存;
s 进程的领导者(在它之下有子进程);
l 多进程的(使用 CLONE_THREAD, 类似 NPTL pthreads);
+ 位于后台的进程组;
WCHAN 正在等待的进程资源;
START 启动进程的时间;
TIME 进程消耗CPU的时间;
COMMAND 命令的名称和参数;

 

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/86778

(1)
李先生李先生
上一篇 2017-09-09 20:48
下一篇 2017-09-10 08:33

相关推荐

  • nginx模块–proxy,upstream,header,stream

    ngx_http_proxy_module     proxy模块的作用:将请求传递给对应的服务器     示例:     location / {        &nb…

    Linux干货 2016-10-29
  • awk应用和systemd

    一:练习 1、求每班总成绩和平均成绩 name class score wang   1    100 zhang  2    90 li     1    80 2、为编译安装的httpd服务,实现service unit文件 3、破解centos7 口令 …

    Linux干货 2016-09-22
  • net25-第14周作业

    系统的INPUT和OUTPUT默认策略为DROP; ~]# iptables -P INPUT DROP ~]# iptables -P OUTPUT DROP 1、限制本地主机的web服务器在周一不允许访问;新请求的速率不能超过100个每秒;web服务器包含了admin字符串的页面不允许访问;web服务器仅允许响应报文离开本机; ~]#iptables -…

    Linux干货 2017-05-15
  • 2016年8月6日作业练习

    练习: 1、显示/proc/meminfo文件中以大小s开头的行;(要求:使用两种方式) [root@localhost ~]# grep -i "^[sS]" /proc/meminfo SwapCached:      &nb…

    Linux干货 2016-08-07
  • 单用户模式破解密码与密码的加密

    当你坐在一台CentOS 6主机前,但是却不知道密码,要怎样破解掉密码进入系统呢? 答案很简单: 1、启动系统,当出现如下界面时,按任意键 2、你会看到这个画面 3、敲击“a”键,执行modifiy the kernel arguments 4、键入“1”键,进入单用户模式 5、至此,你已经成功进入系统,并修改了密码! 是不是觉得Centos6的系统这样安全…

    Linux干货 2016-09-13
  • linux入门及基本命令

    Linux的入门及基本命令     一.   磁盘分区 1.       分区类型 主分区:1-4,一个硬盘最多四个,最少可以没有,前提有别的硬盘存在,启动系统或存数据,不要再分小区,只有个活动状态。 2.    &nb…

    Linux干货 2017-07-15