进程与任务或作业管理.ppt

  1. 1、本文档共54页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第六章 进程与任务或作业管理 程序、进程、作业和任务的概念 Linux操作系统的启动过程 进程状态及转换 进程调度、信号与软中断 suid、sgid和sticky属性 进程调度命令 作业和任务管理 图形界面下的进程管理 6.1程序和进程的概念 操作系统的重要任务之一是使用户充分、有效地利用系统资源,也就是在系统资源一定或有限的情况下,要同时执行更多程序,高效率地完成更多的任务。 进程、作业和任务调度是操作系统的重要任务之一。 本章的主要内容是从系统的外部来观察系统中与进程(process)和作业(job)或任务(task)相关的行为,并实施某些控制让系统工作的更好,或按照用户的意图来完成指定工作。 6.1.1程序、进程、作业和任务 程序(program)是一个存储在存储介质上的文件。 进程(proccess)是一个程序的执行过程。 作业(job)或任务(task)是用户需要计算机完成某项任务时要求计算机所做工作的集合,一个作业可能需要几个程序联合完成。 作业和进程主要的区别与关系如下: 作业是用户向计算机提交的任务实体; 一个进程是作业或任务的某个执行过程; 一个作业可由多个进程组成。 6.1.2 三类进程 前台进程: 是指用户直接控制的用于完成某个任务的进程,因此也叫终端交互式进程。它从标准输入读数据,向标准输出写数据,将错误信息输出到标准错误。也可以是用户直接交互控制的完成某种功能的程序。 后台进程 是指在系统后台运行的、不与用户交互进程。 前台的进程也可放在后台运行,这时可能要用到输入输出的重定向。 守候进程也叫服务器或精灵进程,它是后台进程的一种。 批处理进程 是用户按照某种意图将一批作业和任务通过编程的方法提交给系统,让系统在某个合适的时间来调度和执行的进程。 批处理进程是在某个shell程序的控制下解释执行的。 6.1.3 Linux操作系统的启动 Linux的启动是通过加电和系统自检后,将主引导程序MBR装入内存并把控制权交给它。 在MBR的控制下装入Linux的引导程序LBR并把控制权交给它。 在LBR的控制下系统继续引导,核心装入内存。 系统开始进一步的初始化过程:首先初始化系统内部数据结构(比如构造空闲缓冲区、初始化区表结构、页表项等),然后将根文件系统安装到根“/”下,并创建系统的0#进程、设置它的运行环境。至此内核启动完成。 接着继续创建1#进程,然后由1#进程做进一步的初始化工作。 Linux操作系统的启动(续) 1#进程继续初始化过程,按照/etc/inittab文件的内容和规定启动服务、管理进程,为每个终端生成一个子进程,等待用户在终端上注册,至此启动过程完毕。 6.1.4 0#进程与1#进程 在UNIX系统中0#进程是唯一只在核心态下执行的进程。它的功能有三:调度分配处理机;负责进程交换;初始化时创建1#进程。在Linux系统中,0#进程在创建出1#进程后,变成了空闲进程(Idler),当系统中没有其它进程就绪时运行。 1#(init)进程是系统启动时创建的创建进程的进程。它的主要作用是根据/etc/inittab的内容创建系统运行所需的进程。系统初始化完成后,1#进程了变成回收进程,专门领养没有父进程的孤儿进程或回收状态为ZOMBIE的僵尸进程。 Linux的进程树 0#进程创建了1#进程,它是1#进程的父进程。1#进程在系统启动过程中创建了系统所需要的其它进程。而子进程又可创建属于自己的子进程。因此除0#进程外,1#进程是其它所有进程的祖先进程。 6.1.5 进程及运行模式 在UNIX/Linux系统中,进程可在用户态和核心态两种执行模式下执行。 当用户进程需要系统核心提供服务而由用户态转向核心态执行时,需要依靠中断或陷阱机制来实现,这时要切换处理机(CPU)的工作状态。两种状态之间的主要区别是,核心态下的进程具有较高的优先级,能够存取核心和用户数据。而用户态下的进程能存取它自己的指令与数据,但不能存取核心指令和数据。 6.1.6 进程状态及转换 在操作系统中,一个CPU上同时只能运行一个进程,但在多用户、多任务环境下,从宏观上来讲,同时运行着很多进程,因此在这些正在运行着的进程中,在任一时刻只能有一个进程占有处理机而真正运行。也就是说众多运行着的进程中,它们宏观上是并行的,但微观上是串行的。因此就存在着有的进程在运行,有的进程在等待问题。 事实上进程的状态远不只执行和等待两个,还有用户态执行、核心态执行、等待、睡眠、就绪等状态。 UNIX系统的进程状态及转换 ①进程在用户态运行。 ②进程在系统态运行。 ③ 就绪状态。 ④进程因等待资源而在内存中睡眠。 ⑤进程在外存中睡眠。 ⑥ 外存就绪。 ⑦进程从系统态返回。 ⑧进程刚被创建时的状态。 ⑨ 僵尸

文档评论(0)

湘雅书斋 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:5220142302000001

1亿VIP精品文档

相关文档