Linux Guard Service - 前台进程和后台进程切换
把一个正在执行的程序放入后台
[root@localhost 01]# Ctrl+Z
此使程序被移动到后台,但不能继续输出(处于暂停态)
[root@localhost 01]# ./test1-1
1552227
1552227
1552227
1552227
^Z
[1]+ 已停止 ./test1-1
[root@localhost 01]#
[root@localhost 01]#
[root@localhost 01]# jobs
[1]+ 已停止 ./test1-1
让该后台程序继续在后台运行
[root@localhost 01]# bg %1
[1]+ ./test1-1 &
1552227
[root@localhost 01]# 1552227
1552227
1552227
^C
列出后台程序列表
[root@localhost 01]# jobs
显示已经进入后台的程序列表
[root@localhost 01]# jobs
[1] 已停止 ./test1-1
[2]- 已停止 ./test1-1
[3]+ 已停止 man jobs
其中+是倒数第一个后台进程,-是倒数第二个后台进程,前方是后台进程的序号
[root@localhost 01]# jobs
[1]- 已停止 ./test1-1
[2]+ 已停止 ./test1-2
将某个特定后台程序切换到前台
[root@localhost 01]# fg %n
其中n是jobs列表中的后台进程序号
[root@localhost 01]# fg %1
./test1-1
1552227
1552227
查看父进程标识
[root@localhost 01]# ps f
PID TTY STAT TIME COMMAND
49561 pts/1 Ss 0:00 -bash
49959 pts/1 T 0:00 \_ ./test1-1
49960 pts/1 T 0:00 \_ ./test1-2
49962 pts/1 R+ 0:00 \_ ps f
2496 tty1 Ss+ 0:00 -bash
使用ps f以树形显示所有进程可以查看到test1-1 test1-2的父进程都是-bash
在新终端查看进程标识
[root@localhost ~]# ps f
PID TTY STAT TIME COMMAND
50060 pts/3 Ss 0:00 -bash
50093 pts/3 R+ 0:00 \_ ps f
50010 pts/2 Ss+ 0:00 -bash
49561 pts/1 Ss+ 0:00 -bash
49959 pts/1 T 0:00 \_ ./test1-1
49960 pts/1 T 0:00 \_ ./test1-2
2496 tty1 Ss+ 0:00 -bash
在新终端打开后test1-1和test1-2的父进程是pts/1 的-bash也就是旧终端,新终端的-bash是pts/3,此使用jobs没有test1-1和test1-2了
按Ctrl+D时登出终端
[root@localhost 01]# 登出
显示有停止的任务,再使用ps -ef查看列表,后台任务依然存在
再按一次Ctrl+D,终端已经登出,切换到另一个终端查看
Last login: Sun Oct 15 18:26:48 2017 from 192.168.80.1
[root@localhost ~]# ps -ef | grep test
root 49959 1 0 18:27 ? 00:00:00 ./test1-1
该进程被init进程收养后继续运行,称孤儿进程
直接把程序放到后台执行 &
[root@localhost 01]# ./test1-1 &
此使程序会自动在后台继续运行,并进行输出
[root@localhost 01]# ./test1-1 &
[1] 49856
[root@localhost 01]# 1552227
1552227
保持后台程序在终端结束后依然存在
使用守护进程让进程不以终端为父进程
daemon(0,0);
ps -ef 中的状态含义
D 不可中断 Uninterruptible sleep (usually IO)
R 正在运行,或在队列中的进程
S 处于休眠状态
T 停止或被追踪
Z 僵尸进程
W 进入内存交换(从内核2.6开始无效)
X 死掉的进程
< 高优先级
N 低优先级
L 有些页被锁进内存
s 包含子进程
+ 位于后台的进程组;
l 多线程,克隆线程 multi-threaded (using CLONE_THREAD, like NPTL pthreads do)
Linux Guard Service - 前台进程和后台进程切换的更多相关文章
- Linux Guard Service - 进程分裂与脱离
进程分裂更名 void set_ps_name(char *name) { prctl(PR_SET_NAME, name); } 修改进程长名称 备份进程环境变量空间 for (i = 1; i & ...
- Linux Guard Service - 守护进程再次分裂子进程
当系统区内存不能再申请新进程的时候申请会失败 在512MB内存下最多分配的子进程数 3331 [root@localhost 05]# ./test5-1 50000 expect 50000 sub ...
- Linux Guard Service - 杀死守护进程
杀死某个子进程 杀死守护进程的子进程后,改进程会变为僵尸进程 14087 ? Ss 0:00 ./test4-1 14088 ? S 0:00 \_ ./test4-1 14089 ? S 0:00 ...
- Linux Guard Service - 守护进程分裂
分裂守护进程 由于fork()后第一行仍然在循环中,使用fork()返回值鉴别当前进程的性质 int i = 0; for (i = 0; i < 10; i++) { // sleep(1); ...
- Linux Guard Service - 守护进程的作用、用途、父进程标识的特点
让test2直接成为守护进程 [root@localhost 02]# cat test2.c //test2 #include<stdio.h> #include<unistd.h ...
- 操作系统中前台进程与后台进程(适用于Linux)
两种进程的主要区别: 1.前台进程用户可以操作,后台进程用户不能操作(除了把它关闭). 2.前台进程不全是由计算机自动控制,后台进程全都是由计算机自动控制. 3.后台进程一般用作系统服务,可以用cro ...
- 将Apache加入到linux系统service
将Apache加入到linux系统service 将apache加入到linux系统服务,用service命令来控制apache的启动和停止. 本文由乌合之众瞎写http://www.cnblogs. ...
- Linux: service network/Network/NetworkManager
Linux:service network/Network/NetworkManager start 这三种有什么不同? 1.network service的制御网络接口配置信息改动后,网络服务必须从 ...
- Linux图形界面和命令界面切换
转至:https://blog.csdn.net/weixin_43683466/article/details/85727723 1.若虚拟机内热键被占用,可通过下图所示修改,移出快捷键ctrl+a ...
随机推荐
- postman 中url有动态变换的值时,可以按下面方式变换。
get 和post均适用.
- 嵌入式app框架
推荐两个html5在手机app开发方面好的框架:phonegap + sencha. sencha touch是一个html5的重型框架,自带组件较多,一般应用可以凑合着使. phonegap可以将h ...
- ATL接口返回类型&&ATL接口返回字符串BSTR*
感觉在ATL中做COM组件,添加方法的时候,其返回值只能是HRESULT,我想返回其他数据类型,可以吗? 非也非也 HRESULT指示返回的状态,即正确与否, 返回值是这样的 HRESULT MyMe ...
- C#异步编程的一些认识
1.使用委托类型的BeginXXX,EndXXX 2.使用事件 3.使用aysnc,await关键字,会自动切换回UI线程,启动方法的线程可以被重用,线程没有阻塞.内部其实是封闭了Task类的Cont ...
- ubuntu 18.04 - server版 开机启动脚本
ubuntu 18.04 不再使用 inited 管理系统,改用 systemd systemd 默认读取 /etc/systemd/system 下的文件,该目录下的文件会链接/lib/system ...
- 如何查看Mysql服务器上的版本
select version(); 1,mysql 的守护进程是mysqld [root@localhost ~]# service mysqld start 启动 MySQL: [确定] 你可以看看 ...
- 数组和集合(三):Set集合的使用总结
一.概述 · 继承collection接口 · 无序(不记录添加顺序).不允许元素重复.只允许存在一个null元素 二.实现类 1. HashSet · 底层其实是包装了一个HashMap实现的 · ...
- 关于SharePoint 2016
在刚刚过去的Ignite 2015技术会议上,微软发布了一些有关SharePoint 2016的消息.下面是对相关消息的一个简短总结: 1.首先,本地部署版本的SharePoint 2016还会有,嗯 ...
- 【LA3211 训练指南】飞机调度 【2-sat】
题意 有n嫁飞机需要着陆.每架飞机都可以选择“早着陆”和“晚着陆”两种方式之一,且必须选择一种.第i架飞机的早着陆时间为Ei,晚着陆时间为Li,不得在其他时间着陆.你的任务是为这些飞机安排着陆方式,使 ...
- 【HDU4405】Aeroplane_chess
题意 飞行棋.有n+1格,开始时在0号格子,每一步都要扔一个dice(六个面,概率相同)哪一面朝上他就会向前走x+i步.当x+i大于等于N的时候,游戏结束.另外,地图上有m条航线.第i条航线可以直接从 ...