ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

进程和计划任务管理

2022-01-01 19:34:44  阅读:121  来源: 互联网

标签:占用 程序 信息 任务 计划 内存 进程


进程和计划任务管理

一,进程

1.程序与进程的关系

程序(静态):

保存在硬盘,光盘等介质中的可执行代码和数据;静态保存的代码。

进程(动态):

在CPU及内存中运行的程序代码,

动态执行的代码;父子进程(每个程序可以创建一个或多个进程)

【程序:二进制的文件,静态】

【进程:程序运行的过程,是动态的,有生命周期及运行状态,并发多个线程,每个线程执行不同的任务】

程序,进程,线程的关系:

线程包含在进程之中,是进程中的实际运作单位,也是操作系统中能够独立运行的基本单位,也称作轻量进程,一个进程中可以并发多个线程,每一条线程可以并行执行不同的任务,在任务管理器中的一个个进程由下载的应用程序所产生的,一个应用程序也可以包含多个进程。

2.ps查看静态进程信息

ps命令:查看静态的进程统计信息

1)ps -aux:将以简单列表的形式显示出进程信

-a:当前终端下的所有进程信息

-u:以用户为主的格式输出进程信息

-x:当前用户在所有终端下的进程信息

上述输出信息中,第一行为列表标题,其中各字段的含义描述如下。

USER:启动该进程的用户账号的名称。
PID:该进程在系统中的数字ID号,在当前系统中是唯一的。

%CPU:CPU占用的百分比。
%MEM:内存占用的百分比。
vsz:该进程使用的虚拟内存量(KB)。

RSS:该进程占用的物理内存量(KB)。
TTY:表明该进程在哪个终端上运行。不是从终端启动的进程则显示为?。

简说:

pts是远程登录终端ctrl+ALT F1-F6 tty1 图像界面2和6
字符界面?系统本身白身执行的进程

打开一个终端,这个终端就叫pts/0,如果你再打开一个终端,这个新的终端就叫pts /1。

STAT:该进程的状态(D:不可中断的休眠状态:R:正在运行状态;s :处于休眠状态,可被唤醒;

T:停止状态,可能是在后台暂停或进程处于跟踪调试状态:
z:僵尸进程,进程已经中止,但是部分程序还在内存当中)
D:系统守护进程
T:调式、程序执行一般停止
R:该程序目前正在运作,或者是可被运作;
s :该程序目前正在睡眠当中(可说是 idle 状态啦!),但可被某些讯号(signal)唤醒。

T:该程序目前正在侦测或者是停止了;
Z:该程序应该已经终止,但是其父程序却无法正常的终止他,造成 zombie疆尸)
程序的状态

D不可中断状态.
它们含意如下::
<:表示进程运行在高优先级上

N:表示进程运行在低优先级上

L:表示进程有页面锁定在内存中

s:表示进程是控制进程
l:表示进程是多线程的
+:表示当前进程运行在前台

D:系统守护进程
T调式、程序执行一般停止
START:启动该进程的时间。|
TIME:该进程占用的cPU 时间。

COMMAND:启动该进程的命令的名称

2)ps -elf :将以长格式显示系统中的进程信息

-e:显示系统内的所有进程信息。
-1:使用长格式显示进程信息。
-f:使用完整的格式显示进程信息。

3.top查看动态进程信息

top命令:查看动态进程信息

top命令-查看进程动态信息
上述输出信息中,开头的部分显示了系统任务(Tasks ) 、CPu占用、内存占用(Mem)、交换空
间(Swap)等汇总信息,汇.总信息下方依次显示当前进程的排名情况。相关信息的含义表述如下
uptime
13:22:30当前时间
up 20days系统运行时间,说明此服务器连续运行20天了

user当前登录用户数
load average:0.06,0.60,0.48系统负载,即任务队列的平均长度。三个数值分别为1分钟、5分钟、15 分钟前到现在的平均值。

系统任务(Tasks)信息:

total,总进程数;

running,正在运行的进程数;

sl休眠的进程数;

stopped,中止的进程数;

zombie,僵死无响应的进程数。

CPU占用信息:

us,用户占用;

sy,内核占用;

ni,优先级调度占用;

id,空闲cPU;

wa,I/o等待占用;

hi,硬件中断占用;

si,软件中断占用;

st,虚拟化占用。要了解空闲的cPU百分比,主要看%id部分。

内存占用(Mem)信息:

total,总内存空间;free,空闲内存;used,已用内存;
buff/ cache,物理内存和交换内存的缓冲区总和。

交换空间(Swap)占用:

total,总交换空间;

free,空闲交换空间;

used,已用交换空间;

avail Mem,可用物理空间。

4.pgrep根据特定条件查询进程PID信息

-l:选项可同时输出对应的进程名以及PID
-U:选项查询特定用户的进程
-t:选项查询在特定终端运行的进程

5.pstree:以树形结构列出进程信息

-p:选项使用时可以同时列出对应的PID号
-u:选项可以列出对应的用户名
-a:选项可以列出完整的命令信息

二,进程启动方式:

1.手工启动

前台启动:用户输入命令,直接执行

后台启动:在命令行尾加"&"符

【jobs -l:查看后台运行的任务列表】

2.调度启动

at命令:设置一次性计划任务

crontab命令:设置周期性计划任务

3.进程的前后台调度

ctrl+Z:将当前进程挂起,即调入后台并停止执行

jobs:查看处于后台的任务列表

fg:将后台进程恢复到前台运行,可指定任务序号

4.终止进程的运行

当用户在前台执行某个进程时,可以按Ctrl+C组合键强制进行中断(如命令长时间没有响应的情况下)。
中断前台进程的运行后,系统将返回命令行提示符状态等待用户输入新的命令。当按 Ctrl+C 组合键无法终止程序或者需要结束在其他终端或后台运行的进程时, 可以使用专用的进程终止工具 kill、killall 和 pkill。

kill -15信号只是通知对应的进程要进行"安全、干净的退出",程序接到信号之后,退出前一般会进行一些"准备工作",如资源释放、临时文件清理等等,如果准备工作做完了,再进行程序的终止。但是,如果在"准备工作"进行过程中,遇到阻塞或者其他问题导致无法成功,那么应用程序可以选择忽略该终止信号。这也就是为什么我们有的时候使用kill命令是没办法"杀死"应用的原因,因为默认的kill信号是SIGTERM(15),而SIGTERM(15)的信号是可以被阻塞和忽略的。

相比于kill -15命令,kill -9在执行时,应用程序是没有时间进行"准备工作"的,所以这通常会带来一些副作用,数据丢失或者终端无法恢复到正常状态等。

三,设置计划任务

1.at命令:设置一次性计划任务


2.crontab命令:设置周期性计划任务




周期性计划任务修改一次,需要重启一次。

标签:占用,程序,信息,任务,计划,内存,进程
来源: https://www.cnblogs.com/qfzr2508/p/15755933.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有