linux之进程管理(一)
进程
定义
一个正在执行的程序
产生来源(仅针对linux中的进程)
通过fork复制一份与父进程一模一样的子进程。然后再以exec的方式执行实际需要执行的进程即
fork-and-exec
流程
从中我们可以发现,任何一个进程都是PID为1进程的子进程。也就是说,在linux环境下,进程的整体数据结构是一颗树
我们把常驻内存的进程称之为服务
多用户、多任务模式
为什么linux中每个用户登录系统的系统后取得的权限不一样呢?
其实每个用户在登录系统后会根据从/bin/bash文件结合用户的UID/GID而取得属于自己的shell(不同用户的shell PID是不同的),每个用户的环境变量以及一些私有配置文件是存放在~/.bashrc文件中的。
我们知道,当前时代的CPU主频高达nG Hz,那就意味着CPU美妙可以执行
n x 1024(M) x 1024(K) x 1024(Byte) ≈ n x 10^9
条命令
很显然,这是一个非常庞大的数字。我们学计算机操作系统时知道——当代CPU不具备并行(同一时刻同时执行N条指令)工作能力。都是并发处理事务的。所以我们眼中的多用户多任务多进程多线程实际上都只是cpu的障眼法而以,根本原因就是一个字——快。cpu通过在短时间内不停的切换任务,在我们人眼和思维中造成了同时执行的假象(正如视频的本质是图片一样)。
那么我们如何感受一下这个所谓的多用户多任务模式呢?
其实,在linux中,默认提供了7个登录窗口。可以通过
ctrl + alt + [f1~f6]
或
alt + [f1~f6]
来切换
工作管理(job control)
job control是工作于bash环境下的,也就是说,我们仅仅需要一个终端界面便可以利用job control同时处理多条指令和任务
.那么既然我们可以用多终端执行多个任务,那么为什么还需要用job control呢?其实,大家可以想一想作为普通工作人员,管理员可能给你多个账号吗?
注意事项:
前台:主窗口界面
后台:利用job control控制的其他任务
(1)job control是针对于bash的,也就是说,你不可以以user1的身份去管理user2中的job control
(2)后台程序不可以与用户有交互过程(比如vim,nano)
(3)后台程序不可以通过ctrl + c来中断
(4)可以通过bg/fg来调用它
1.如何将指定任务放在后台进行
通过在命令后面加 & 操作符
eg:
find / -name info.txt &
从图中我们可以发现该命令确实被放在后台了,那么下面的
[1] 5115
分别代表什么呢?
[1]代表工作号码
5115代表进程ID ==》 PID
2.如何处理后台任务的标准输出问题
这是什么意思?大家请看
我们发现,面对一些具有标注输出的命令,这些东西会严重阻碍我们的工作,那么如何处理这类问题呢?简单,数据流重定向
eg:
sudo find / -name info.txt > log.txt 2>&1 &
3.如何将当前工作丢到后台中去暂停?
ctrl + z
4.如何查看目前后台中运行的任务?
jobs -[lrs]
-l:
列出后台工作,并显示其进程PID
-r:
仅列出正在后台run的工作
-s:
仅列出正在后台当中暂停(stop)的工作
5.将后台工作拿到前台来处理
fg %[jobnumber]
eg:
fg &1
6.将后台暂停的工作(被ctrl + z)变成在后台执行
bg %[jobnumber]
7.管理后台的工作
kill -[信号] %作业号码
具体的信号可以使用Kill -l来查看
我们可以看出,9信号量代表着杀掉这个作业,所以可以这样写
kill -9 %1
代码中的1和2表示作业序号,具体情况依据个人查询情况而定。
还有一点需要注意的是,kill 后面可以直接跟PID,如果跟工作的话,则需要 %number 了
eg:
linux之进程管理(一)的更多相关文章
- .Neter玩转Linux系列之五:crontab使用详解和Linux的进程管理以及网络状态监控
一.crontab使用详解 概述:任务调度:是指系统在某个时间执行的特定的命令或程序. 任务调度分类: (1)系统工作:有些重要的工作必须周而 复始地执行. (2)个别用户工作:个别用户可能希望执 行 ...
- Linux:进程管理
Linux:进程管理 进程间通信 文件和记录锁定. 为避免两个进程间同时要求访问同一共享资源而引起访问和操作的混乱,在进程对共享资源进行访问前必须对其进行锁定,该进程访问完后再释放.这是UNIX为共享 ...
- Linux操作系统的进程管理和作业管理
Linux操作系统的进程管理和信号 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.lsof命令详解 1>.lsof概述 list open files查看当前系统文件的工 ...
- Linux操作系统的进程管理
Linux操作系统的进程管理 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.进程相关概念 1>.进程概述 内核的功用: 进程管理.文件系统.网络功能.内存管理.驱动程序. ...
- linux 系统管理--进程管理
目录 linux 系统管理--进程管理 一.进程基本概述 二.监控进程状态 三.进程的优先级[进阶] 四.企业案例,Linux假死是怎么回事 五.后台进程管理 六.系统平均负载[进阶] linux 系 ...
- Linux内核——进程管理与调度
进程的管理与调度 进程管理 进程描写叙述符及任务结构 进程存放在叫做任务队列(tasklist)的双向循环链表中.链表中的每一项包括一个详细进程的全部信息,类型为task_struct,称为进程描写叙 ...
- linux系统管理--进程管理
这两天一直维护公司的服务器,主要对进程管理和linux工作管理,把一些零散的知识整理一下,书归正传~ 什么进程? 以下是百度给的解释的进程,说实话,云里雾里的,其实linux进程和windows进程 ...
- 【linux之进程管理,系统监控】
一.进程管理 前台进程:一般是指占据着标准输入和/或标准输出的进程后台进程:不占据默认开启的进程都是前台进程ctrl+C 中断ctrl+z 从前台转入后台bg 后台进程编号 让其在后台运行ls -R ...
- [Linux]系统管理: 进程管理(ps/top/pstree/kill/pkill), 工作管理, 系统资源查看, 系统定时任务
进程管理:查看与终止 进程查看 1. 进程是正在执行的程序或命令. 2. 进程管理的作用: 判断服务器健康状态, 查看系统中所有进程 杀死进程 3. 查看系统中所有进程 ps aux # 查看系 ...
- linux 使用进程管理工具 supervisor
1.supervisor是使用python进行开发的运行在linux服务器上的进程管理工具 老版本的supervisor需要运行在python2环境,如果需要使用supervisor管理python3 ...
随机推荐
- js 模拟鼠标绘制方块
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- 普通索引和唯一索引如何选择(谈谈change buffer)
假设有一张市民表(本篇只需要用其中的name和id_card字段,有兴趣的可以翻看“索引”篇,里面有建表语句) 每个人都有一个唯一的身份证号,且业务代码已经保证不会重复. 由于业务需求,市民需要按身份 ...
- webStorm -> Version Control _> Repository -> Filter By User 查看svn日志
webStorm -> Version Control _> Repository -> Filter By User 查看svn日志
- java-选中排序(新手)
//排序 选择排序 数组中每个元素都进行比较public class Test { //公共静态的主方法. public static void main(String[] args) { //创建一 ...
- Fiddler5 发送HTTP请求
1.Fiddler Composer发送HTTP请求 Composer的编辑模式主要有2种:Parsed模式和Raw模式. 实例1:Composer发送get请求 实例2:Composer发送post ...
- Journal of Proteome Research | Global Proteomic Analysis of Lysine Succinylation in Zebrafish (Danio rerio) (解读人:关姣)
文献名:Global Proteomic Analysis of Lysine Succinylation in Zebrafish (Danio rerio)(斑马鱼赖氨酸琥珀酰化的全球蛋白质组学分 ...
- priority_queue 中存放pair时,自定义排序的写法
struct cmp {template <typename T, typename U> bool operator()(T const &left, U const & ...
- python浅学【网络服务中间件】之Redis
一.关于NoSQL: NoSQL(NoSQL = Not Only SQL ),"不仅仅是SQL". 相比MySQL等关系型数据库,NoSQL为非关系型的数据存储 Nosql中比较 ...
- 条件随机场 CRF
2019-09-29 15:38:26 问题描述:请解释一下NER任务中CRF层的作用. 问题求解: 在做NER任务的时候,神经网络学习到了文本间的信息,而CRF学习到了Tag间的信息. 加入CRF与 ...
- HDU-1051 一个DP问题
Problem Description There is a pile of n wooden sticks. The length and weight of each stick are know ...