《Unix&Linux大学教程》学习笔记七:进程与作业控制
1:进程:一个内存中的程序+程序所需数据+管理程序的各种状态信息。
2:进程由内核进行管理,内核使用调度器,给予进程一个时间片来运行,然后切换到下一个进程。
3:进程分叉
fork :创建一个子进程
wait :强制进程暂停,等等另一个进程执行完毕
exec :改变当前进程执行的程序(在当前进程启动一个程序)
exit :终止当前进程
kill :杀死一个进程
4:区分父进程or子进程
父进程调用fork返回子进程的进程ID;
子进程调用fork返回0。
5:系统进程的源头——init进程
在系统引导过程中,内核手动创建一个空闲进程#0,空闲进程创建初始化进程#1,然后处于无限循环状态,不做任何事,因此进程表上找不到它,认为它不存在。
而进程#1进行内核的相关设置以及结束引导的相关操作,在此期间打开控制台、挂载文件系统、运行系统初始化脚本等,进程#1分叉出众多子进程,所以成为init进程。
系统中有任何子进程成为“孤儿进程”时,init进程会自动接过父进程的角色,确保子进程能正常结束。
6:前台进程与后台进程
前台进程:启动后,shell等待它运行结束。
后台进程:启动后,在后台运行进程,shell直接等待下一条命令。
command & :指令后加 & ,使该程序作为后台进程来执行
7:进程休眠
sleep 时间[s,m,h,d]
8:作业控制

9:作业挂起与恢复
在当前运行的作业中,按下 ^Z 挂起作业,输入 fg 恢复作业。
10:shell的挂起与恢复
suspend :挂起shell
fg :恢复
11:显示当前所有作业
jobs
12:将作业恢复(移到前台)
fg 作业

13:将作业移到后台
bg %job
14:查看进程信息、状态
ps

15:杀死进程
kill pid|jobid
16:较低优先级运行
nice command
17:守护进程

《Unix&Linux大学教程》学习笔记七:进程与作业控制的更多相关文章
- 《Unix&Linux大学教程》学习笔记一:历史与常识
“为什么说Unix/Linux是自由的: 因为我们可以自己组装一个操作系统:Unix/Linux内核+其他实用工具+编程工具+GUI 因为我们可以自由地获取开源工作者 ...
- unix&linux大学教程 目录
第1章unix简介 第2章什么是linux?什么是unix 第3章unix连接 第4章开始使用unix 第5章gui:图形用户界面 第6章unix工作环境 第7章unix键盘使用 第8章能够立即使用的 ...
- 《Unix&Linux大学教程》学习笔记6——Unix文件系统
1:Unix文件类型——3种 普通文件(常规文件):文本文件(纯文本.脚本.源程序.配置文件.html等).二进制文件(多媒体文件.数据库等) 目录:用于组织文件 伪文件:不存储数据,目的是提供一种服 ...
- 《Unix&Linux大学教程》学习笔记5 :正则表达式
1:Unix下正则表达式规则
- 《Unix&Linux大学教程》学习笔记四:标准I/O 与 过滤器
1:标准IO Unix中的标准IO主要包括:标准输入.标准输出(正常输出).标准错误(异常信息) 2:重定向输出 内容 > 文件名 :将内容输出到文件,并且覆盖文件原来内容:文件不存在则新建 内 ...
- 《Unix&Linux大学教程》学习笔记三:Shell常识
1:全局变量与局部变量 全局:可以从父进程传递给子进程的变量,如:环境变量. 局部:只能在特定的子Shell中使用的变量. 局部变量变全局:使用 “export 局部” 指令将创建的局部变量导出到环境 ...
- 《Unix&Linux大学教程》学习笔记二:指令常识
1:指令的本质——调用可执行程序 在Shell输入命令时,其实就是根据名称运行相应的程序. 2:在系统中查找程序 which 指令名 type 指令名 3:时间与日历 date [-选项] 参数 ca ...
- 《嵌入式Linux基础教程学习笔记一》
常用书目下载地址:http://www.cnblogs.com/pengdonglin137/p/3688029.html 第二章 1.进程上下文和中断上下文(Page20) 当应用程序执行系统调用, ...
- Linux System Programming 学习笔记(五) 进程管理
1. 进程是unix系统中两个最重要的基础抽象之一(另一个是文件) A process is a running program A thread is the unit of activity in ...
随机推荐
- whiledo循环输出9-0
var i=9 while(i>-1){ println(i); i--; } function println(a) { document.write(a+"<br>&q ...
- hdu 2157 从a点走到b点刚好k步的方案数是多少 (矩阵快速幂)
n个点 m条路 询问T次 从a点走到b点刚好k步的方案数是多少 给定一个有向图,问从A点恰好走k步(允许重复经过边)到达B点的方案数mod p的值把 给定的图转为邻接矩阵,即A(i,j)=1当且仅当存 ...
- springbank 开发日志 阅读spring mvc的源代码真是受益良多
决定模仿spring mvc的dispatcher->handlerMapping(return executorChain)->handler.execute 这样的流程之后,就开始看s ...
- SQL中IN和EXISTS用法的区别
结论 1. in()适合B表比A表数据小的情况 2. exists()适合B表比A表数据大的情况 当A表数据与B表数据一样大时,in与exists效率差不多,可任选一个使用. select * fro ...
- day17--JQuery实例
1.表格选择框--全选,反选,取消 <!DOCTYPE html> <html lang="en"> <head> <meta c ...
- 统计难题 HDU1251
简单方法: #include<bits/stdc++.h> using namespace std; int main() { ]; map<string,int>ma; ) ...
- EXIST子查询
已知关系模式:S(Sno,Sname,Sclass),C(Cno,Cname,Cteacher),SC(Sno,Cno,Scgrade).其中,S为学生关系:Sno学号, Sname姓名,Sclass ...
- 《Android进阶之光》--网络编程与网络框架
No1: Volley源码分析: Volley.newRequestQueue-> RequestQueue.start()-> CacheDispatcher.start()->C ...
- How to use Jackson to deserialise an array of objects
first create a mapper : import com.fasterxml.jackson.databind.ObjectMapper; ObjectMapper mapper = ne ...
- iOS webview加载时序和缓存问题总结
iOS webView的加载时序 UIWebView加载顺序: - (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSU ...