Linux下的进程和作业概念,以及作业管理

Linux 进程管理 [screen/ps/kill] 进程管理 进程的重要性:   我们在使用操作系统时,各项作业都是通过某个PID来执行的,因此,是否要执行某项作业就与该进程的权限相关   如果Linux系统很忙碌,当整个系统资源快要用完的时候,怎么找到大量占用系统资源的进程,删除该进程,让系统恢复正常   如果由于进程写 阅读详情

进程的一个比较正式的定义是:在自身的虚拟地址空间运行的一个单独的程序。

Linux操作系统包括三种不同类型的进程,每种进程都有自己的特点和属性。
交互进程——由一个shell启动的进程。交互进程既可以在前台运行,也可以在后台运行。
批处理进程——这种进程和终端没有联系,是一个进程序列。
监控进程(也称守护进程)——Linux系统启动时启动的进程,并在后台运行。


进程和作业的概念也有区别。一个正在执行的进程称为一个作业,而且作业可以包含一个或多个进程,尤其是当使用了管道和重定向命令。例如“nroff -man ps.1|grep kill|more”这个作业就同时启动了三个进程。

作业控制指的是控制正在运行的进程的行为。比如,用户可以挂起一个进程,等一会儿再继续执行该进程。shell将记录所有启动的进程情况,在每个进程过程中,用户可以任意地挂起进程或重新启动进程。作业控制是许多shell(包括bash和tcsh)的一个特性,使用户能在多个独立作业间进行切换。

一般而言,进程与作业控制相关联时,才被称为作业。


在大多数情况下,用户在同一时间只运行一个作业,即它们最后向shell键入的命令。但是使用作业控制,用户可以同时运行多个作业,并在需要时在这些作业间进行切换。这会有什么用途呢?例如,当用户编辑一个文本文件,并需要中止编辑做其他事情时,利用作业控制,用户可以让编辑器暂时挂起,返回shell提示符开始做其他的事情。其他事情做完以后,用户可以重新启动挂起的编辑器,返回到刚才中止的地方,就象用户从来没有离开编辑器一样。这只是一个例子,作业控制还有许多其他实际的用途。


直接将命令放到后台“执行”的&

 在bash的环境下,

 前台指:你可以控制的作业

后台指:在内存可以自行运行的作业,你无法直接控制它,除非以bg/fg等命令将该作业调用出来。

范例:

        [root@redflag ~]# tar –zpcf /tmp/etc.tar.gz /etc &

[1] 24874  <== [job number] PID

[root@redflag ~]#     <==可以继续工作,不受影响。

这里job1在后台继续工作,你可在前台继续操作linux。过了一会,会突然出现这个数据:

[1] + Done        tar –zpcf  /tmp/etc.tar.gz /etc  #这是表示[1]作业已经完成

该命令最大的好处就是不怕被“[Ctrl]+c”这个中断指令来中断了

这里就会出现一个问题,如果上面的命令是

[root@redflag ~]# tar –zpcvf /tmp/etc.tar.gz /etc &

 这时在后台执行的命令,如果有stdout和stderr时,它的数据是输出到屏幕上,所以我们无法看到提示符,也就无法完好地控制前台作业。所以,最好是使用数据流重导向,将输出数据传至某个文件中。我们可以这样做:
        [root@redflag ~]# tar –zpcvf  /tmp/etc.tar.gz  /etc > tpm/log.txt  2>&1  &
这样,数据都传送到/tmp/log.txt中,自然不会影响到前台作业。

  二、 将“当前”作业放到后台“暂停”:[crtl]+Z

如果你正在进行vi,但你想查找某个文件,需要到bash环境搜索。此时你可以暂时离开vi

    [root@redflag ~]# vi ~/.bashrc

 # 在vi 的一般模式下,按ctrl+z

[1]+  Stopped      /usr/bin/vim ~/.bashrc  #(+)表示当前在后台下默认的作业

[root@redflag ~]#   <== 获取了前台的控制权

三、 观察当前后台作业状态:jobs

  [root@redflag ~]# jobs [-lrs]

  参数:

   -l:除了列出作业号之外,同时列出PID

   -r:仅列出正在后台运行的作业

   -s:仅列出正在后台暂停的作业

  范例:

    [rot@redflag ~]# jobs –l

  [1]+ 24988 Stopped     /usr/bin/vim ~/.bashrc

  [2]- 25006 Stopped     /usr/bin/vim ~/.bash_history

   一般来说,直接执行jobs即可。在上面的输出中,有(+ -)号。(+)表示默认的作业。所以说“当前我有两个作业在后台,两个作业都是暂停的,如果我仅输入fg时,那么[1]会被拿到前台处理”

  四、 将后台作业拿到前台处理,fg

   [root@redflag ~]# fg %jobnumber

   范例:

      [root@redflag ~]# jobs

    [1]+ 24988 Stopped     /usr/bin/vim ~/.bashrc

    [2]- 25006 Stopped     /usr/bin/vim ~/.bash_history

   [root@redflag ~]# fg   <==默认取出+的作业,即[1]

   [root@redflag ~]# fg %2 <==直接规定取出的作业号码

  五、 作业在后台运行:bg

   之前都是将作业放到后台去“暂停”,而bg实现一个作业在后台运行。

     [root@redflag ~]# find / -perm +7000

    #此时,请立刻按ctrl+z暂停

    [1]+ stopped       find / -perm +7000

   [root@redflag ~]# 

   [root@redflag ~]# jobs ; bg %1 ; jobs

    [1]+ Stopped         find / -perm + 7000

    [1]+ find / -perm +7000 &

    [1]+ Running         find / -perm +7000 &

    此时Stopped变成了Running,命令行的最后多了一个&符号,表示该作业在后台启动了。

注意:1-5操作过程中“%jobnumber”可以将“%”省略直接加jobnumber即可。

六、 管理后台作业:kill

   [root@redflag ~]# kill –signal %jobnumber

   [root@redflag ~]# kill –l

    参数:

    -l:列出当前kill能够使用的信号(注意是小写L)

    -1:重新读取一次参数的设置文件(类似reload)   ---对应的信号为SIGHUP

     -2:表示与由键盘输入ctrl+c同样的动作         ---对应的信号为SIGINT

     -9:立刻强制删除一个作业                    ---对应的信号为SIGKILL

     -15:以正常方式终止一项作业                 ---对应的信号为SIGTERM 

      [root@redflag ~]# jobs

    [1]+ Stopped         vim bashrc

   [root@redflag ~]# kill -9 %1             #以强制方式删除

   [1]+ 已删除          vim bashrc     

   [root@redflag ~]# kill –SIGTERM %1      #-SIGTERM与15是一样的

   说明一下以正常方式与强制方式来终止作业的区别:例如,用vi编辑文件的时候会产生一个.filename.swp文件,如果以正常方式来结束作业,那么.filename.swp文件会主动被删除;相反以强制的方式来结束作业,那么.filename.swp文件会继续存在文件系统中。

   注意:kill可以帮我们将信号传送给某个作业(%jobnumber)或者是某个PID(直接输入数字),也就是说,kill后面直接加数字与加上%的情况是不同的。


Linux基础命令-进程与系统性能 Linux基础命令-进程网络配置和相关命令一、基本网络配置 网络配置和相关命令 一、基本网络配置 阅读详情

相关推荐

极化码自适应CA-SCL译码(极化码译码)

我们知道最初极化码提出来是运用SC译码,但短码和中等长度其译码性(误码率)能不如LDPC码码,,为了提升有限长度极化码的译码性能,我们主要从译码器的性能和极化码的纠错性能来考虑。 SCL:在增加复杂度的情况下,大幅度增加极化码纠错性能,在高信噪比下,与最优ML性能相同(L=32) CA-SCL:改善最小汉明距离(最小汉明距离增大),增加其纠错性能。把CRC和极化码极联。 自适应CA-SCL:CA-SCL译码虽然提升几乎没的纠错性能,但是导致复杂度大幅度增加,为了降低其复杂度,让L自适应,从而降低其复杂度

m0_52610504的博客 3294

操作系统之进程管理(1)——进程和进程原语

进程管理(courses 1) 一、程序的并发执行 1 程序的顺序执行   我们把一个具有独立功能的程序独占处理机直到最终结束的过程叫做程序的顺序执行。   程序的顺序执行具有以下特点:   1. 顺序性   2. 封闭性   3. 可再现性 2 多道程序系统中的程序执行环境   这样的执行环境具有以下3个特点:   1. 独立性   2. 随机性   3. 资源共享性 3 并发执行 两...

weixin_30338497的博客 3036

aubo i5 + realsense D435i识别抓取实践二

aubo i5 + realsense D435i识别抓取实践二前言一、手眼标定是什么?二、标定软件安装1.aruco_ros安装2.vision_visp安装3.easy_handeye安装4.realsense驱动安装5.安装realsense ROS软件包三、配置1.launch文件修改2.打印二维码四、手眼标定1.启动launch文件2.标定步骤3.发布tf关系 前言 前面配置好了aubo机械臂的ROS软件包,机械臂可以正常运行后,接下来我们进行机械臂与相机的手眼标定。手眼标定分为eye_on_ha

转角 6375

Linux操作系统笔记——进程和作业

目录一、进程(一)进程的概念(二)进程的生命周期(三)获取进程信息(ps)(四)暂停进程(sleep)(五)终止进程(kill)六、作业(一)作业的概念(二)作业号(三)作业的状态(四)作业的挂起(五)作业的切回(fg)(六)jobs命令 一、进程 (一)进程的概念 经过前面的知识点,我们知道Linux是一种多用户、多任务、支持多线程和多CPU的操作系统,即系统可以有多个用户同时工作,且每个用户又可以完成多个任务,这其中通过对进程的管理,来实现对用户和系统的各种命令和程序的运行管理。 进程与程序的区别是,

小宇y的博客 3516

ADS版图优化中的参数化设计技巧

本文详细介绍了在ADS中进行射频电路版图参数化设计的核心技巧。通过将版图关键尺寸定义为变量,并与电磁仿真及优化器联动,实现从手动修改到自动迭代的转变,极大提升了PA、LNA等电路的设计与优化效率。文章以阶梯阻抗变换器为例,阐述了变量创建、绑定及协同仿真的完整流程,并提供了避免网格冲突、变量混乱等常见问题的实用指南。

weixin_29296241的博客 405

NVIDIA Jetson Xavier NX刷机+ROS安装+深度学习配置

.NVIDIA Jetson Xavier NX 完整说明流程 V1.0.0 – by Holden Date : 2021-03-19 文章目录.NVIDIA Jetson Xavier NX 完整说明流程1. Jetson Xavier NX简介2. Jetson Xavier NX刷机介绍2.1 工具准备工作2.2 下载镜像以及烧录工具2.3 烧录原生镜像到TF卡2.4 开机启动2.5 组件配置4. 镜像克隆制作5. 镜像重烧写6. NX调控命令 1. Jetson Xavier NX简介 ​ NVI

李老板Holden的博客 7619

进程管理(1.0)

linux是一个多用户、多任务操作系统。在这样的系统中,各种计算机资源的分配和管理都以进程为单位,为了协调多个进程对这种共享资源的访问,操作系统要跟踪多个进程的活动,以及他们对系统资源的使用情况,从而实施对进程和资源的动态管理。进程和作业的基本概念进程和作业简介1.进程进程是指一个具有独立功能的程序的一次运行过程,也是系统进行资源分配和调度的基本单位,即每个程序模块和它执行所处理的数据组成了进程。...

mez_Blog的博客 381

【论文精读】DisCo: Graph-Based Disentangled Contrastive Learning for Cold-Start Cross-Domain Recommendat

源域中具有相似偏好的用户在目标域中可能会表现出不同的兴趣。因此,直接迁移嵌入可能会引入不相关的源域协同信息。提出了一个基于图的解耦对比学习框架,以捕捉细粒度的用户意图并过滤掉不相关的协同信息,从而避免负迁移。 具体而言,对于每个域,我们使用多通道图编码器来捕捉多样化的用户意图。然后,我们在嵌入空间中构建亲和图,并执行多步随机游走以捕捉高阶用户相似性关系。将一个域视为目标域,我们提出了一种以用户相似性为指导的解耦意图对比学习方法,以优化跨域的用户意图桥接。

qq_52342142的博客 1228

linux: 进程与作业的概念

进程与作业一.进程和作业的定义1.进程的定义(一).进程的状态(二).进程的优先级(三).进程调度2.作业的定义3.两者的联系与区别二.作业的安排 一.进程和作业的定义 1.进程的定义 进程是具有独立功能得程序的一次运行过程,是系统进行资源分配和调度的基本单位。linux创建新进程时会为其指定一个唯一的号码,即进程号(PID),以此区分不同的进程。 (一).进程的状态 (二).进程的优先级 (三).进程调度 2.作业的定义 进程和作业的概念也有区别。一个正在执行的进程称为一个作业,而且作业可以包含一

qq_44667165的博客 1023

YOLOv11改进 | 注意力篇 | YOLOv11引入24年最新的ELA注意力机制,并构建C2PSA_ELA

为了解决这些限制,本文介绍了一种高效的本地注意力(ELA)方法,实现了一个简单的结构,大幅度的性能改善。我们精心设计了ELA中的三个超参数,产生了四个不同的版本:ELA-T,ELAB,ELA-S和ELA-L,以满足不同视觉任务的具体要求,如图像分类,目标检测和语义分割。到此本文的正式分享内容就结束了,在这里给大家推荐我的YOLOv11改进有效涨点专栏,本专栏目前为新开的,后期我会根据各种前沿顶会进行论文复现,也会对一些老的改进机制进行补充,如果大家觉得本文帮助到你了,订阅本专栏,关注后续更多的更新~

tsg6698的博客 1286

制作INCA和CANape通用的A2L

CANape和INCA通用的A2L配置与修改

赞的博客 5966

linux进程管理二

文章目录本章节目标控制作业作业与会话作业分类在后台运行作业进程间的通信使用信号控制进程监控进程活动IO负载实时进程监控 本章节目标 控制作业 进程间的通信 使用信号控制进程 监控进程活动 控制作业 作业与会话 作业控制是shell的一种功能,它允许单个shell实例运行和管理多个命令。 作业与在shell提示符中输入的每个管道相关联。该管道中的所有进程均是作业的一部分,并且是同一个...

mylovewxl 884

机器学习实战5-天气预测系列:利用数据集可视化分析数据,并预测某个城市的天气情况

大家好,我是微学AI,最近天气真的是多变啊,忽冷忽热,今天再次给大家带来天气的话题,机器学习实战5-天气预测系列,我们将探讨一个城市的气象数据集,并利用机器学习来预测该城市的天气状况。该数据集包含年平均温度和湿度等信息。

微学AI的博客 1万+

linux进程和作业的区别,Linux下的进程和作业概念,以及作业管理

进程的一个比较正式的定义是:在自身的虚拟地址空间运行的一个单独的程序。Linux操作系统包括三种不同类型的进程,每种进程都有自己的特点和属性。交互进程——由一个shell启动的进程。交互进程既可以在前台运行,也可以在后台运行。批处理进程——这种进程和终端没有联系,是一个进程序列。监控进程(也称守护进程)——Linux系统启动时启动的进程,并在后台运行。进程和作业的概念也有区别。一个正在执行的进程称...

weixin_35748508的博客 565

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

Linux作业管理,Linux作业管理

1、前台作业与后台作业(1)概念前台作业:通过终端启动,并且在启动后一直占据终端。后台作业:启动时与终端无关,或者通过终端启动后转入后台运行(即释放终端),不影响用户继续在终端中工作。(2)如何将前台作业转入后台正在运行中的作业使用Ctrl+Z组合键将命令调至后台并停止运行;尚未启动的作业则直接在命令后面添加“&”字符即可。注意:后台作业虽然被送往后台运行,但其依然与程序的启动...

weixin_42610010的博客 720

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

深入理解linux操作系统---第6讲 进程、任务与作业管理

通过本章内容,读者可以全面掌握Linux系统的进程管理机制,从底层原理到实用命令,覆盖日常运维和高级调优场景。

小李独爱秋的博客 1226

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

进程管理和作业管理

进程管理什么是进程?所谓进程就是将一个二进制文件加载到内存形成的一个个体,这就是一个进程。在我们的linux系统中,系统只识别二进制文件,所以一个系统要想正常的运行时,必须启动一些二进制文件,从而形成进程,在以这些进程的方式去执行相应的任务。我们常常听到所谓的程序,那么程序和进程是什么关系呢?刚刚说过进程是由二进制文件加载到内存中形成的。而这些二进制文件就是程序。可以这么来理...

weixin_34248849的博客 1246

linux查看hdfs进程,LInux 网络及相关进程作业管理

马哥教育网络班23期+第四周课堂练习Linux 网络及相关进程作业管理一、概述1.1 简介:进入Linux学习第四周,这一周讲的知识点非常的多,也特别的碎,感觉这一周的内容掌握起来有很大的难度,主要是要记的命令很多,包括yum 的一些安装的命令,配置yum 源,相关的网络的命令和参数,还有就是进程管理和作业管理中的相关工具的使用,最后还讲了bash脚本编程的内容和while until 循环的实现...

weixin_32247165的博客 437

Linux实验_linux进程管理

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档。

CoralBiber的博客 2496

linux把作业号3的进程转为,Linux基础之进程及作业管理(二)

Linux进程及作业管理(2)CentOS 6: http://172.16.0.1/fedora-epel/CentOS 7: http://172.16.0.1/fedora-epel/进程管理类命令:htop命令:选项:-d #:指定延迟时间间隔;-u UserName:仅显示指定用户的进程;-s COLUME:以指定字段进行排序;子命令:l:显示选定的进程打开的文件列表;s:跟踪选定的进程...

weixin_29920047的博客 161

linux运维进程,Linux运维之进程管理

一、进程概念进程是内核的一个功能,在Linux中,运行一个程序或命令可以出发一个事件而驱动一个PID,在linux系统中,系统只识别二进制程序文件,我们可以通过执行系统上的二进制程序来运行程序,进而产生进程。在linux系统中第一个进程是init程序,它是系统开机第一个加载的程序,用来支撑系统的正常运行的一个程序,内核启动的一个用户级进程。1.进程优先级进程优先级被分为系统优先级和实时优先级系统优...

weixin_32817047的博客 211

Linux进程及job管理

一、进程管理 ps:查看进程状态      a:所有与终端有关的进程      u:      x:所有与终端无关的进程 进程的分类      跟终端相关的进程      跟终端无关的进程 进程状态      D:不可中断的睡眠      R:运行或就绪      S:可中断的睡眠      T:停止      Z:僵死        

Next_FSE的博客 1251

只要你认真看完一万字☀️Linux操作系统基础知识☀️分分钟钟都吊打面试官《❤️记得收藏❤️》

小白到大佬必看的一万字以上☀️Linux操作系统基础知识☀️《❤️记得收藏❤️》目录????️‍????开讲之前我们先庆祝我国赢得37金牌。????️‍????中国加油!!????️‍???? ????开讲啦!!!! 目录 ????️‍????开讲之前我们先庆祝我国赢得37金牌。????️‍????中国加油!!????️‍???? ????开讲啦!!!! ...

苏州程序大白的博客 7万+

shell浅谈之九子shell与进程处理

一、简介 Linux是一种用户控制的多作业操作系统,系统允许多个系统用户同时提交作业,而一个系统用户又可能用多个shell登录,每个系统用户可以用一个shell提交多个作业。了解Bash Shell在多作业管理和进程处理方面的命名和机制有助于理解多用户、多作业的系统。 二、详解 1、子Shell (1)父子Shell是相对的,它描述了两个Shell进程的fork关系,父Shel...

乌托邦 2万+
上一篇: 数据库事务和范式
下一篇: vim基础配置及常用插件配置
ancient_wind
博客等级 码龄18年 14粉丝 22原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值