(1).Linux前台进程与后台进程的区别

  前台进程:是在终端中运行的命令,那么该终端就为进程的控制终端,一旦这个终端关闭,这个进程也随之消失。

  后台进程:也叫守护进程(Daemon),是运行在后台的一种特殊进程,不受终端控制,它不需要终端的交互;Linux的大多数服务器就是使用守护进程实现的。比如Web服务器的httpd等。

(2).进程的前台与后台运行

  与系统任务相关的几个命令(了解):

& 用在一个命令的最后,可以把这个命令放到后台执行
<Ctrl>+z 将一个正在前台执行的命令放到后台,并暂停
jobs 查看当前有多少在后台运行的进程。这是一个作业控制命令
fg(foregroud  process) 将后台中的命令调至前台继续运行。如果后台中有多个命令,可以用fg [jobnumber]将选中的命令调出,jobnumber是通过jobs命令查到的后台正在执行的命令的序号(不是pid)
bg(backgroud  process) 将一个在后台暂停的命令,变成继续执行。如果后台中有多个命令,可以用bg %jobnumber将选中的命令调出,%jobnumber是通过jobs命令查到的后台正在执行的命令的序号(不是pid)

(3).&的使用

  如果直接使用&,部分命令仍然在前台显示,例如"ping 127.0.0.1 &"。此时我们可以使用nohup命令帮助,"nohup ping 127.0.0.1 &",在执行时会创建一个nohup.out的文件。

(4).恢复被挂起的进程

  首先准备一个实验环境,创建三个被挂起的进程

[xf@xuexi ~]$ vim 1.txt

[1]+  已停止               vim 1.txt
[xf@xuexi ~]$ vim 3.txt [2]+ 已停止 vim 3.txt
[xf@xuexi ~]$ vim 2.txt [3]+ 已停止 vim 2.txt
[xf@xuexi ~]$ ps -aux | grep vim
xf 10277 0.2 0.2 151796 5372 pts/0 T 14:02 0:00 vim 1.txt
xf 10284 0.4 0.2 151796 5352 pts/0 T 14:02 0:00 vim 3.txt
xf 10291 1.5 0.2 151796 5376 pts/0 T 14:02 0:00 vim 2.txt
xf 10299 0.0 0.0 112724 988 pts/0 S+ 14:02 0:00 grep --color=auto vim

  接着查看后台进程

[xf@xuexi ~]$ jobs
[1] 已停止 vim 1.txt
[2]- 已停止 vim 3.txt
[3]+ 已停止 vim 2.txt

  恢复vim 3.txt的进程

[xf@xuexi ~]$ fg 2
vim 3.txt

  

Linux前后台进程切换的更多相关文章

  1. Linux学习笔记(16)Linux前后台进程切换(fg/bg/jobs/ctrl+z)

    关键词:Linux前后台进程切换,linux进程切换 fg.bg.jobs.&.ctrl + z都是跟系统任务有关的,虽然现在基本上不怎么需要用到这些命令,但学会了也是很实用的一.& ...

  2. 关于Linux前后台进程切换

    前言: 当使用SSH远程登录服务器时,对于运行时间较长的程序(如Caffe的训练可能需要十几个小时), SSH可能会在很长时间后断掉,导致程序没运行完就中断了. 为了解决这个问题,需要将在服务器运行的 ...

  3. linux内核——进程切换宏switch_to

    该宏有三个参数:prev, next, last.它们都是局部变量. prev:输入参数,变量值为旧进程描述符的地址. next:输入参数,变量值为新进程描述符的地址. last:输出参数,用来记录该 ...

  4. linux前后台任务切换管理

    liuyuan@ebuinfo:/var/www/projects/PHPExcel/Examples$ vi 33chartcreate-line.php & [] liuyuan@ebui ...

  5. Linux进程切换代码分析

    朱宇轲 + 原创作品转载请注明出处 + <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 这次我们来分析L ...

  6. linux进程解析--进程切换

    为了控制进程的执行,linux内核必须有能力挂起正在cpu上运行的进程,换入想要切换的进程,也就是恢复以前某个挂起的进程,这就是linux的进程切换.  1进程切换的时机 一般来说,进程切换都是发生在 ...

  7. Linux任务前后台的切换(转)

    Linux任务前后台的切换   Shell支持作用控制,有以下命令实现前后台切换: 1. command& 让进程在后台运行 2. jobs 查看后台运行的进程 3. fg %n 让后台运行的 ...

  8. 前后台 工作切换---------------Linux 任务管理器(一)

    继续下一章... 发现了一个好东东.就是前后台的切换.例如我们现在要vim一个文件.然后又要查找一些命令的时候,以前不知道,都是退出后,查完了,在vim进入.现在我们可以将该vim拿到后台,然后查完了 ...

  9. Linux内核分析——理解进程调度时机跟踪分析进程调度与进程切换的过程

    20135125陈智威 +原创作品转载请注明出处 +<Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 实验 ...

随机推荐

  1. ssh无密码登录认证失败

    http://www.2cto.com/os/201401/271150.html https://unix.stackexchange.com/questions/36540/why-am-i-st ...

  2. unity ugui消息透传

    公司要做一个这东西. A是滑动区域,ScrollRect组件. B是各种选项. C是拾取到鼠标(或触点)的选项. D是拖放区域. 大概要求是这样. 因为B的条目很多,放在A里可以滑动查看.如果要选择一 ...

  3. 洛谷金秋夏令营模拟赛 第2场 T11738 伪神

    调了一个下午只有八十分QAQ md弃了不管了 对拍也没拍出来 鬼知道是什么数据把我卡了QAQ 没事我只是个SB而已 这题其实还是蛮正常的 做法其实很简单 根据链剖的构造方法 你每次修改都是一段又一段的 ...

  4. 【BZOJ】1299: [LLH邀请赛]巧克力棒

    [算法]博弈论 [题解]这道题不是典型的SG函数题了. 不把它当成游戏看待,那么这道题是在说n个石子堆,每次可以加入若干个或进行Nim游戏. 我们当前先手,则考虑构造必败态来获胜. 当前已加入的NIm ...

  5. .NET Core Data Access

    .NET Core was released a few months ago, and data access libraries for most databases, both relation ...

  6. MSSQL数据库 事务隔离级别

    数据库事务的隔离级别有4个,由低到高依次为Read uncommitted .Read committed .Repeatable read .Serializable ,这四个级别可以逐个解 脏读 ...

  7. hasOwnProperty()方法与in操作符

    1.hasOwnProperty() 该方法检测属性存在于实例,还是存在于原型,对于存在于实例中的属性则返回true 2.in 使用该操作符时只要通过对象能够访问到的属性都会返回true

  8. Java多线程学习(五)线程间通信知识点补充

    系列文章传送门: Java多线程学习(二)synchronized关键字(1) Java多线程学习(二)synchronized关键字(2) Java多线程学习(三)volatile关键字 Java多 ...

  9. mysql 复制表结构 / 从结果中导入数据到新表

    这只会复制结构: mysql> create table a like mysql1; Query OK, 0 rows affected (0.03 sec) mysql> desc a ...

  10. mysql中的时间year/date/time/datetime

    year: mysql> create table y(y year); Query OK, 0 rows affected (0.03 sec) mysql> desc y; +---- ...