이해 1. 공정
프로세스 (과정)
- 프로그램은 정적 파일입니다
- 프로세스는 실행중인 프로그램의 사본입니다
- 수명주기 (준비, 운영 기간, 종료 기간) 프로세스의 존재
프로세스 상태
상태 | 정의 |
---|---|
R (TASK_RUNNING) | 실행 상태 (RUNNING, READY) |
S (TASK_INTERRUPTIBLE) | 당신은 잠을 깨울 수 |
D (TASK_UNINTERRUPTIBLE) | 절전 상태에서 깨어 수 없습니다 |
T (TASK_STOPPED) | 일시 중단 된 상태 |
Z (EXIT_ZOMBIE) | 죽은 상태 |
2. 프로세스 뷰어
pstree
프로세스 트리를 참조 -> 프로세스를 트리 구조로 표시됩니다
프로세스와 스레드의
스레드가 실행하는 처리의 최소 단위이며, 처리의 자원 할당의 최소 단위 인
각 프로세스 자원이 또한 독립적 인
프로세스 [예컨대 스레드 걸레질이 프로세스는 연소 집 청소 등] 모든 스레드에 의해 공유되는 모든 자원
systemd -> 데몬은 시스템이 켜져 그와 동등한 과정의 리더십, 아래에 자동으로 열립니다
PS의
표시 전류 지령 실행 처리 상태 [각각 포함하는 두 가지 형식 UNIX, BSD]
ㅏ | 프로세스 (BSD)에 연결된 디스플레이 단말기 |
---|---|
엑스 | 단말 모든 프로세스 독립적 (BSD)를 표시 |
에 | 사용자 분류 프로세스 상태 정보를 표시합니다 (BSD) |
에프 | 계층 구조 표시 프로세스 정보 |
o | 보기 옵션, PID, 통신, 좋은 우선 순위, PRI, PCPU, 통계, PPID 지정 |
-이자형 | 보기 모든 프로세스 (uinx) |
-에프 | 전체 포맷 정보를 표시합니다 (UNIX) |
-H | 디스플레이 프로세스 계층의 구조에 대한 정보 |
-o | 보기 옵션, PID, 통신, 좋은, %의 CPU %의 MEM, 좋은 지정 |
- 프로세스 (BSD)에 연결된 디스플레이 단말기
- 디스플레이 터미널 프로세스와 아무 상관이있다 (BSD)
- 모든 프로세스를 표시
- 모든 프로세스의 디스플레이 계층 구조
- 모두에 대한 정보를 표시합니다 BSD 스타일을 처리
- 보기 모든 프로세스 (uinx)
- 전체 포맷 정보를 표시합니다 (UNIX)
- 관련 정보 표시 처리 계층 구조
상세 - 指定查看选项,pid,comm,nice优先级,pri,pcpu,stat,ppid【BSD风格】
- 指定查看选项,pid,comm,nice,%cpu,%mem,nice【UNIX风格】
- ps命令对当前的程序或者某些资源进行排序
1.根据cpu进行排序
正序:
倒序:
倒序显示前6行:
ps命令显示信息
字段 | 解释 |
---|---|
USER | 用户名称 |
PID | 进程id |
%CPU | cpu用量百分比 |
%MEM | 内存用量百分比 |
VSZ | 占用虚拟内存大小 |
RSS | 常驻内存集大小 |
TTY | 字符终端 |
STAT | 进程状态 |
START | 运行时间 |
TIME | 占用cpu时间 |
COMMAND | 进程名称 |
pgrep
显示指定信息进程–>注意此环境之下必须要启动所查询的用户进程
命令 | 解释 |
---|---|
-u uid | 显示指定用户进程 |
-U name | 显示指定用户进程 |
-t tty | 显示指定终端进程 |
-l | 显示进程名称 |
-a | 显示完整格式进程名 |
-P pid | 显示指定进程的子进程 |
- 显示指定用户进程
1.查看用户 uid
2.进行筛选
- 显示进程名称&显示指定用户进程
![在这里插入图片描述](https://img-blog.csdnimg.cn/20200205224350977.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MzUxOTk1MQ==,size_16,color_FFFFFF,t_70 - 显示指定终端进程
1.查看指定进程的终端
2.命令查看
- 显示完整格式进程名
- 显示指定进程的子进程
1.创建子进程
2.查询
pgrep
根据进程名称获取pid
1.运行一个watch进程
2.查看该命令操作所对应的进程id
top
实时的对于进程信息进行扫描并且显示出来
1.top内部参数
P cpu百分比排序 |
---|
M 内存百分比 |
T 累计占用cpu时间 |
l 开启/关掉uptime信息 |
t 开启/关闭task&cpu信息 |
s 调整刷新频率 |
k 终止进程 |
u 查看指定用户进程 |
- 查看指定用户进程
2.top命令参数
-d 指定刷新间隔 |
---|
-b 以批次方式显示 |
-n 显示批次数量 |
- 指定刷新间隔
- 以批次方式显示
- 显示批次数量
3.top显示进程信息详解
top 系统当期时间 |
---|
up 系统运行时常 |
user 登录当前系统的用户数量 |
load average 平均负载1分钟 5分钟 15 分钟的队列长度(uptime) |
task 任务 |
%cpu cpu占用百分比 |
us 用户空间 |
sy 内核空间 |
ni nice调整时间 |
id 空闲时间 |
wa 等待io |
hi 处理硬件中断 |
si 处理软件中断 |
st 被虚拟化程序占用的百分比 |
mem 物理内存 |
swap 交换分区占用 |
3.进程优先级
按照资源占用划分进程类
资源使用量 | 进程类型 |
---|---|
cpu使用密集(计算量大) | CPU-Bound |
I/O使用密集 | I/O-Bound |
对于cpu使用密集的程序CPU分量会多,那么对于i/o可能会受阻。为了避免这样的情况发生,可以对cpu使用密集多分配,那么也要提高i/o使用密集程序的优先级。
优先级范围
- 对Linux而言优先级被划分成固定个数(0-139)
- 1-99为实时有优先级,数字越大优先级越高,不用手动处理系统自用【不能人为进行干预】
- 100-139为静态优先级,数字越小优先级越高
NICE值 - NICE值:-20~19对用静态优先级【对应的是上面优先级范围的100-139】
- 普通用户只可以调低优先级,超级用户任意调整
- 关于优先级的命令
1.ps ax –o nice,pid,comm
2.nice –n 优先级 程序
指定优先级进行开启
3.reince–n 优先级 程序pid
![在这里插入图片描述](https://img-blog.csdnimg.cn/20200206133124649.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MzUxOTk1MQ==,size_16,color_FFFFFF,t_70
4.进程前后台调用
进程前后台调用相关命令
指令 | 含义 |
---|---|
jobs | 查看后台任务 |
ctrl+z | 将前台运行进程打入后台 |
bg | 激活后台进程 |
fg | 调回进程 |
& | 运行在后台 |
1.占用终端的进程
2.将前台运行进程打入后台
ps查看发现已经被暂停,不能使用
3.查看后台任务
4.激活后台进程
然而,该操作不能将vim进程运行起来,因为该进程必需要占用终端提供操作界面,才能运行起来
5.调回进程
6.运行在后台
5.信号
可控信号类型
man 7 signal
可控信号 | 含义 |
---|---|
1 | 刷新【让进程再次读取配置】 |
2 | 中断键盘输入 |
3 | 退出键盘 |
9 | 强制结束 |
15 | 正常关闭 |
18 | 激活进程 |
19 | 强制暂停 |
20 | 正常暂停 |
-
中断键盘输入
-
退出键盘 ctrl+/
在看电影时,鼠标就会被隐藏起来 -
强制暂停
-
激活进程
-
正常暂停【被系统阻塞掉,没有效果】
系统认为这样做不对,hhh
-
强制结束
信号指令
kill 信号 pid
pkill 信号 进程名称
6.系统守护进程
设置实验环境
1.nm-connection-editor
2.检查是否设置正确
3.ssh建立连接
守护进程的定义
- 守护进程就是通常讲Daemon进程
- 是linux后台执行的服务进程
- 是独立于控制终端、周期性地执行某种任务或等待处理某些发生事件
- 不会随终端关闭而停止,直到接受停止信息才会结束
守护进程类型
守护进程类型 | 使用系统及特点 |
---|---|
Sysv init | 经典的守护进程类型延用到rhel6 |
upstart | 做到并行启动rhel6中应用 |
systemd | 独立完成启动,rhel7中使用 |
systemctl用法之一
指令 | 用途 |
---|---|
systemctl list-unit-files | 查看服务开机运行情况 |
systemctl list-units | 查看服务当前运行情况 |
systemctl list dependencies | 查看服务依赖性 |
systemctl status service | 查看服务状态 |
systemctl start service | 开启服务 |
systemctl stop service | 关闭服务 |
systemctl reload service | 重新加载服务配置 |
- systemctl list-unit-files 查看服务开机运行情况
- systemctl list dependencies 查看服务依赖性
- systemctl status service 查看服务状态
- systemctl stop service 关闭服务
- systemctl 시작 서비스 공개 서비스
- systemctl 다시로드 서비스 재 장전 서비스 구성
ID를하지 않습니다 변화
두 가지의 systemctl 사용
지시 | 용도 |
---|---|
systemctl 다시 시작 서비스 | 다시 시작 서비스 |
서비스를 활성화 systemctl | 공개 서비스 시작 설정 |
- 이제 서비스를 활성화 systemctl | 설정 서비스는-시작하고 서비스를 엽니 다 |
systemctl 해제 서비스 | 전원은 서비스 세트를 종료 |
systemctl 세트 기본 multi-user.target | 설정 시스템의 실행 수준이 더 그래픽 모드 네트워크입니다 |
systemctl 세트 기본 graphical.target | 수준의 그래픽 모드 네트워크를 실행하도록 시스템을 설정 |
- 서비스를 활성화 systemctl 서비스 개방을 시작하도록 설정되어
- 가까운 부팅 서비스 systemctl 해제 서비스 세트
- 서비스 설정 서비스 시작을 -now 활성화하고 서비스를 엽니 다 systemctl
- systemctl 세트 기본 multi-user.target 운영 시스템 레벨 설정의 네트워크 모드는 패턴 화되지 않은
그래픽 인터페이스없이 개방
- systemctl 세트 기본 graphical.target 시스템 동작 레벨 설정 패턴 네트워크 모드
GUI