加入收藏 | 设为首页 | 会员中心 | 我要投稿 52站长网 (https://www.52zhanzhang.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 搭建环境 > Unix > 正文

UNIX操作系统处理机管理.ppt 22页

发布时间:2022-10-20 15:01:30 所属栏目:Unix 来源:互联网
导读: UNIX操作系统UNIX的系统结构UNIX的系统中的进程的特点 通常,一个进程要么是用户进程,要么是系统进程;UNIX不这么区分,而是将各种进程一视同仁,视为进程。 在UNIX系统中区分管态和目态。

UNIX操作系统UNIX的系统结构UNIX的系统中的进程的特点 通常,一个进程要么是用户进程,要么是系统进程;UNIX不这么区分,而是将各种进程一视同仁,视为进程。 在UNIX系统中区分管态和目态。 通常,用户进程和系统进程的运行状态是不同的,一个进程只能运行在同一个状态下,但UNIX中进程可以在两种状态下切换。 UNIX进程的组成 进程控制块 进程基本控制块常驻内存,进程扩充控制块不常驻,通常放在对话区。 把进程基本控制块的数据结构称为proc结构。 把进程扩充控制块的数据结构称为user结构。 进程控制块 正文段在多道程序设计中,不同的进程可能要调相同的程序。在UNIX中把可供多个进程共享的程序称为进程的正文段。正文表(text)用来管理可供共享的的正文段。 数据段 进程的数据段包括进程执行的非共享程序和程序执行时用到的数据; UNIX把进程的数据段分成用户栈区,用户数据区和系统工作区; 系统工作区又分为核心区和user区 不同的区的功能是有分工的 UNIX进程的状态 UNIX系统的任何一个进程在生命周期内状态会不断发生变化,在不同的时刻会处于不同的状态 进程按状态链入进程队列中,同一队列中的进程用进程基本快的p_link链接在一起 任何时刻进程只能在一个队列中 UNIX进程的状态 UNIX进程的状态切换图 线程 线程是在一个进程内的基本调度单位,线程可以看做是一个执行流,拥有记录自己状态和运行现场的少量数据(栈段和上下文)但没有单独的代码段和数据段,而是与其它线程共享 UNIX中基本没区分进程和线程,他们都使用相同的描述方法,使用相同的调度和管理策略。

unix 系统下载_unix系统管理_linux和unix系统

UNIX的进程调度在Unix 操作系统中,所以的程序,不论是用户级上还是在内核级上执行的,都出现在某个进程的现场内,所有的用户程序都在它们自己的进程现场中运行。当这些用户进程通过系统调用请求内核服务的时候,实现该系统调用的内核代码继续在请求进程的现场内执行,这就能让内核方便的访问进程的所有状态及其他地址空间。它还提供了一种代表用户程序记录内核执行的当前状态的方式。例如,如果需要挂起一次系统调用的执行来等待I/O 操作完成,那么内核有关系统调用处理的状态就要保存在进程中。UNIX的进程调度因为系统的所有活动,无论是用户级上的还是内核级上的unix系统管理,都发生在某个进程的现场内,所有UNIX 内核只调度需要执行的进程。当使用传统的分时调度策略的 时候,在用户级执行的进程不会被分入时间内执行。只有当前的内核进程明确允许的情况下,才能切换到在内核执行的另一个进程。在传统Unix 中进程优先级的设置是通过nice 和set priority 完成的;但不幸的是速两种系统调用无法使用最高优先级的进程得以立即进行,这是因为在循环调度(时间片调度)机制下。当进程的时闻片用完后。不论扰先级如何都让出CPU 。另外,由于它是非抢占式内核,优先级高的进程不能 立即打断当前正在运行的进程,获得CPU 资源。

unix系统管理_linux和unix系统_unix 系统下载

这对一些要求进程立即抢占CPU ,并且一次运行完成的实时应用是不能满足要求的. UNIX 系统是一个多用户分时系统, 其分时性是通过对用户进程频繁的调度来实现的, 系统的调度程序分成两部分, 即处理机调度程序( swtch) 和进程对换程序(sched) . 在这里我涉及的是处理机调度程序. 在如下几种情况下会调用处理机调度程序: (1) 若一个进程已到达它不能超过的某个点, 这时它就要调用“sleep ”, 而“sleep ”则调用“swtch ”; (2) 一个在核心态下运行的进程, 当它将要转入用户态之前, 会测试变量“runrun ”, 如果其值非0 , 则意味着更高优先权的进程已为运行准备就绪. 此时核心态进程也将调用“swtch ”.UNIX 进程调度策略是基于动态优先数, 优先数的设置有如下特点: swtch 由“trap ”、“sleep ”、“expand ”、“exit ”、“stop ”、“xalloc ”调用. 它是一个非常特殊的过程, 分为三段执行, 涉及3 个核心态进程. Unix 系统是多用户,多任务的操作系统,它通过向进程提供与机器无关的抽象服务,从而在Unix 实现之间提供了高度的程序的可移植性。

内核给每个进程提供了一个环境让这个环境显得好像该进程是系统中正在执行的唯一进程那样。这主要是赋予每个进程自己的虚拟地址空间来实现的。系统调用可以创建新进程,改变进程正在执行的程序,以及终止进程,还可以使用其他许多系统调用,其中包括动态分配未初始化数据的系统调用。 * 组员: 陈必冠、张晓荣董雷鸣、汤瀚宇、汪德忠 UNIX的系统结构 UNIX的系统中的进程的特点 UNIX的系统中的进程组成 UNIX进程的状态、(线程)状态切换图 UNIX的进程调度UNIX是一个分层的操作系统系统体系结构 1) 硬件:在这个层状结构中,最里层是为操作系统提供服务的硬件,是整个系统的物 “质基础”。 2)内核:顾名思义,是整个操作系统的核心部分,主要作用是一方面交互驱动协调硬件工作,另一方面交互为系统外层程序和用户程序提供服务,有了内核,系统外层程序和用户程序不需要关心关于硬件的任何具体信息,只需知道如何与内核交互操作即可,剩下的工作就交给内核去完成了。3) SHELL: UNIX使用shell程序使得核心程序和用户相互隔离。Shell程序只是一些比较简单的程序,它在核心程序顶部运行,并且处理所有用户的输入。具体而言,Shell起命令解释作用,接受用户输入的终端命令,并把命令转换成内核能够完成的动作,最后根据需要把结果反馈给用户。 正文段 *

(编辑:52站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!