UNIX操作系统介绍71绪言UNIX操作系统的结构_第1页
UNIX操作系统介绍71绪言UNIX操作系统的结构_第2页
UNIX操作系统介绍71绪言UNIX操作系统的结构_第3页
UNIX操作系统介绍71绪言UNIX操作系统的结构_第4页
UNIX操作系统介绍71绪言UNIX操作系统的结构_第5页
已阅读5页,还剩48页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

内核:就是操作系统本身,是常驻内存部分,它包括进程管理、存储管理、设备管理、文件系统管理四大经典管理技术及其他重要技术。外壳:从内核分离出来以核外形式出现并在用户环境下运行的核外部分。SHELL2.UNIX操作系统的特点A、交互式分时多用户多任务。UNIX系统是一个可供多用户同时操作的会话式分时操作系统。B、UNIX向用户提供了两种友好的用户界面或接口。

程序一级的界面----------系统调用系统调用是程序一级的编程接口,是用户程序取得操作系统服务的唯一方式,也是用户程序与系统内核的接口。

操作一级的界面------------命令命令是用户与系统的交互式操作,它由Shell进行解释,并调用系统内核的相应部分执行。Shell有三类特征:命令语言,命令解释程序和程序设计语言。C、UNIX具有一个可装卸的分层树型结构的文件系统。D、UNIX系统把所有的外部设备都当作文件,并分别赋予它们对应的文件名。E、可移植性。UNIX系统核心程序的绝大部分源程序系统上的支持软件都用C语言写的。三、UNIX的系统可分为四层:1、硬件层2、最内层的UNIX操作系统核心(内核层)。它包括文件控制系统和进程控制系统两部分。3、中间层是SHELL命令解释层(核外层)、用程序,库函数。4、最外层是用户程序(应用层),包括许多应用软件。

7.2UNIX进程管理一、UNIX进程的概念UNIX进程由三部分组成:进程控制块、数据段、共享正文段。数据段:由进程运行时用到的数据及工作区构成。是一个非常驻内存的整体部分。数据段分成三部分:系统数据区,用户数据区和用户栈区。共享正文段:能够被多个进程共享的程序进程控制块:由基本控制块proc结构和扩充控制块use结构两部分组成。Proc结构记录着一个进程最基本、中、最常用的信息。不管进程当前是否占用处理机,系统都要经常对每一个进程的proc结构内容进行查询和处理,因此一个进程创建后它的proc结构常驻内存。Use结构记录着存放着只有进程运行时才用到的数据和状态信息。其为非常驻内存部分。UNIX进程三个部分的联系:(看图)二、进程的用户态、核心态执行操作系统程序的进程称为“系统进程”,执行用户程序的进程称为“用户进程”。UNIX中一个进程既可以执行用户程序也可以执行操作系统程序。进程执行的两种状态:核心态:进程在执行操作系统程序,并可以访问所有的内存空间和对象。在进程此状态时是不可剥夺。用户态:进程在执行用户程序,在进程此状态时是可剥夺。这两种状态会在一定时机时进行转换。进程从用户态转入核心态,由中断或陷阱实现进程从核心态转入用户态,需通过设置状态寄存器PSW才能实现。其中0#进程只在核心态运行。三、进程的创建UNIX系统中还未创建出其他新用户进程之前,只有0#进程,1#进程,以及终端管理进程与shell进程存在。除0#、1#进程之外,UNIX系统中的其他进程都是由父进程创建的,人们称1#进程是所有用户进程的祖先。父进程通过系统调用fork()函数来创建子进程。0#进程功能:启动系统时加载相关的数据结构。系统调用fork完成的功能:⑴为子进程在proc结构表中分配一个空项⑵为子进程赋一个唯一的进程标识号pid⑶复制一个父进程上下文的逻辑副本。(只复制不共享的部分)⑷增加与父进程相关联的有关文件系统的进程引入计数。⑸对父进程返回子进程的进程标识号,对子进程返回零。当父进程使用fork()创建了子进程后,子进程就继承了父进程的正文段,数据段和栈。子进程的状态为创建态。四、进程生命期的状态(9种):1、进程的初始状态2、内存中就绪3、就绪且换出4、进程在核心态下的执行态:5、进程在用户态下的执行态:6、内存中睡眠7、睡眠且换出8、被剥夺状态9、僵死状态睡眠且换出就绪且换出内存中睡眠内存中就绪初始状态核心态执行用户态执行被剥夺态僵死状态间的转换fork内存足够内存不够换出换入调度返回系统调用、中断调度,剥夺返回exit等待,sleep换出唤醒唤醒五、进程调度1、调度算法:在UNIX中,对进程的调度采用的是多级反馈轮转调度方式。即系统给进程分配一个时间片,当时间片结束时,动态计算进程的优先级,若有进程的优先级高于当前进程的内存就绪进程时,系统调度该进程运行。2、优先级:

A、分类:核心级优先级、用户级优先级

B、优先数的算法:优先数=最近使用CPU的时间/2+基本的用户优先数六、进程通信软中断通信:软中断通信是对硬件中断的一种模拟,发送软中断就是向接收进程的进程表项结构中的相应项发送一个软中断信号。接收进程在收到软中断信号后将按事先的规定去执行一个软中断处理程序。但是软中断处理程序不是收到信号后立即被启动,它必须等到接收进程执行时才能生效。软中断:指在处理机和内存内部产生的中断。也叫内部中断、陷阱。如地址非法,除数为0,算术操作溢出,用户程序执行了特权指令。管道通信:指能连接某些读进程和写进程专门用于进程通信的共享文件(以称pipe文件),它允许读、写进程按先进先出的方式传送数据,即写进程从管道的一端向管道写入数据,而读进程从管道的另一端读出数据。消息通信:消息是一格式化的可变长的信息单元,消息机制允许由一个进程给其他任何进程发送一个消息。当一个进程收到多个消息时可将它们排成一个消息队列。共享存储区通信:该机制可使若干进程共享主存中的某一个区域,并且使该区域出现在多个进程的虚地址空间中。另一方面,一个进程的虚地址空间中,又可连接多个共享存储区,每个共享存储区都有自己的名字。当进程需要通过共享存储区进行通信时,必须首先在内存中建立一个共享存储区,然后将它附接在自己的虚地址空间上。此后,进程对该区的访问操作与对其虚地址空间其他部分的访问操作完全相同,进程之间便可通过对共享存储区中数据的读、写来进行直接通信。信号量通信:采用由一组信号量构成的信号量集机制。7.3存储管理一、存储管理的分类1、主存的管理(以内存块为分配和释放的单位。每个内存块的大小一般为64B)2、磁盘交换区的管理(以磁盘块为分配和释放的单位。每个磁盘块的大小一般为512B)交换区:是一块用来转储运行进程的硬盘空间。二、早期UNIX的存储区管理:1、所用数据结构:可用资源表,对应于存储管理的两大分类,在系统中也有两个可用资源表(交换映射表,可用存储区表),每个表目由两部分组成,分别为可用区的大小和可用区的起始地址,该表随着交换空间的分配释放而动态更新,随时准确地反映存储空间的使用情况。2、存储区分配策略:最先适应策略3、存储区的分配与释放三、现代UNIX操作系统的存储管理1、管理方式:请求调页的存储管理2、内存空间的管理

A、位示图

B、页的大小:512B-----4KBC、所用的数据结构:页表一个进程的虚地址空间在逻辑上被分成三个区段:系统区段(常驻内存)、进程控制区段、进程程序区段。每个区段都有自己的虚拟地址空间,故每个区段都有自己的页表。进程空间进程程序区段P0进程控制区段P1系统空间系统区段保留区段UNIX进程虚拟地址空间的划分03130299800:P0区段01:P1区段10:系统区段11:保留区段UNIX的虚拟地址结构VPROTM物理块号03126252120修改位,1为已修改过访问权限“页面”错中断位,0为页不在内存UNIX页表表项的格式页内位移页号系统区段页表P0区段页表基址寄存器长度寄存器基址寄存器长度寄存器系统区段P0区段页内位移物理块号虚拟地址物理地址请求页式地址映象过程四、交换与请求调页的区别:

交换技术换入换出整个进程,因此,一个进程的大小受物理存储器的限制;而请求调页策略在内存与外存之间来回传递的是存储页而不是整个的进程,从而使得地址的映射具有更大的灵活性,且允许进程的大小比可用的物理存储空间大的多。7.3设备管理一、UNIX设备管理的特点1、外部设备统一于磁盘文件,它们的目录都在子目录dev下。2、具有完善的绶冲技术。二、分类1、存储设备,主要代表是磁盘,也称为块设备2、输入/输出设备,主要代表是键盘和打印机,也称为字符设备。三、缓冲区管理在UNIX操作系统中,分别为字符设备和块设备设置了缓冲池。字符设备缓冲区的大小以字节为单位,而块设备缓冲区则以盘块大小为单位。1、字符设备缓冲管理

A、以字节为单位,设置了一组字符缓冲区,供各种字符设备使用。

B、每个缓冲区大小为70B,包括4项,即第一个字符位置,最后一个字符位置,指向下一个缓冲区的指针和余下用于存放64个字符的缓冲区。C、所有空闲缓冲区通过指针形成一个空闲缓冲区队列D、缓冲区的分配和回收通过GETCF()和PUTCF()函数完成。2、块设备缓冲区管理A、组成用于真正存放数据的缓冲区用于管理的缓冲区控制块B、分配和回收它们二者一一对应C、UNIX块设备的缓冲区构成三个队列:空闲缓冲区队列:UNIX将系统中的空闲缓冲区控制块用两个指针构成双向链表,并对这个队列采用先进先出的管理算法,当释放一个空闲缓冲区时,将它链入队列尾,当申请一个缓冲区时,就从队列首摘下分配。输入/输出请求队列:

将对某一设备提出的I/O请求所对应的缓冲区控制块用一个指针构成单向链表。UNIX对这个队列采用先进先出的管理算法。服务完一个就把它从队首摘下,然后再为下一个服务。设备缓冲区队列:

为了对缓冲区中的资源进行充分地利用,UNIX一方面让被释放缓冲区所对应的缓冲区控制块链入空闲缓冲区队列尾,以便系统能够重新分配它,一方面又设置一个新的队列:把为某个设备服务的缓冲区所对应的缓冲区控制块全都汇集在一起,形成这个设备的设备缓冲区队列。当系统以要对该设备的这些内容进行操作时,就不必通过启动I/O获得盘块上的数据,只需从该设备的设备缓冲区队列中拿来用就是了。四、磁盘块的读写1、读磁盘的方式

A、一般读方式:把磁盘中的信息读入缓冲区

B、提前(预先)读方式:在一个进程顺序地读一个文件各盘块时,会预先看见下一个要读的盘块,因此可以在读出指定盘块的同时,要求提前将下一个盘块的信息读入缓冲区。2、写磁盘的方式

A、一般写方式:把缓冲区的数据写入磁盘,调用者进程因为等待写操作完成而进入睡眠状态,写操作完成后释放缓冲区。

B、异步写方式:启动输出后,调用者进程不用等待写操作的完成就返回。C、延迟写方式:不真正启动磁盘,只是在缓冲区首部设置延迟写标志,然后便释放该缓冲区,并将它加入到空闲区缓冲区链表的尾部。以后,当有进程申请到这个缓冲区时,才将该缓冲区中的信息写入磁盘。7.4文件管理一、UNIX文件系统的特点1、树形结构2、文件可以动态的增长或减少3、文件数据可由文件拥有者设置相应的访问权限而受到保护4、外部设备,例如终端用磁带、磁盘设备、键盘等都能被当作文件。从而,设备可通过文件系统隐蔽掉设备特性。二、UNIX文件的分类1、普通文件:即存储用户和系统的有关的数据和程序的文件。它是无结构、无记录概念的字符流式文件。2、设备文件:它与普通文件和目录文件不同,它除了在目录文件和文件说明表中占据相应的位置外,它并不占据实际的物理存储块。因此,对设备文件的读、写操作将实际上变为对设备的操作,而以对文件的保护也将变为对设备的保护。3、目录文件:

由文件系统中的各个目录所形成的文件。这种文件在形式上和普通文件上一一样。由系统将其解释为目录文件。UNIX中,将一个文件的目录项中所包含的内容分为二部分:目录项部分和索引节点部分(即文件控制块)简称为i节点。目录项中只包含:文件名和这个文件的索引节点编号;索引节点包含:文件的长度、文件类型、文件在辅存的位置、存取权限、共享信息等。在UNIX文件目录项中,用14个字节存放文件名,2个字节存放该文件的i节点号。三、文件的逻辑结构无结构、无记录概念的字符流式文件。文件系统以512B为一块,文件在块内连续存放,对于普通文件和连续文件来说,文件的存取方式即可以是顺序存取,也可以是直接存取。四、文件的物理结构

UNIX文件的物理结构是多级索引结构,也称为混合索引结构。(如图)五、UNIX操作系统的文件存储空间的管理1、在UNIX操作系统中的文件存储介质可以采用磁盘或磁带。通常把磁盘或磁带看作是一个文件卷,在每个文件卷上可以存放一个具有独立目录结构的文件系统。为了使文件系统易于扩充和更改。

NIX文件系统分成基本文件系统和可装卸的子系统两部分。(如图)2、UNIX文件系统的磁盘空间可分为引导块、超级块、索引节点区和文件存储区等几个部分。(看图)3、UNIX操作系统采用成组链接法对空闲块加以组织。线程二、线程的概念:线程(轻权进程):一个进程内一段程序的基本调度单位。一、引入线程的原因:为了提高系统的执行效率,减少CPU的空转时间和高度切换的时间,便于管理。三、线程与进程的区别1、进程是资源分配的基本单位。线程与资源分配无关,它属于一个进程,并与该进程内的其它线程一起共享进程的资源。2、当进程发生调度时,不同进程拥有不同的虚拟地址空间,而同一进程内的线程共享同一地址空间。3、切换时进程所花的开销比线程大。进程切换时将涉及到有关资源指针的保存和地址空间的变化。而线程切换则不涉及。四、线程的分类线程的两个基本类型是:用户级线程和系统级线程(核心级线程)用户级线程的管理过程由用户程序完成,操作系统内核只提供一个在用户空间执行的线程库,该线程库提供创建、调度、撤销线程功能。用户级线程的调度由用户进程确定。在用户级线程系统中,操作系统的内核的调度单位仍是进程且用户线程的调度只在线程上下文切换不进行处理机切换。1、用户级线程核心级线程的管理过程由操作系统内核完成。操作系统内核负责线程的调度2、核心级线程:7。5作业管理一、UNIX的两种用户界面1、命令控制界面——这些命令通过SHEEL提供给用户使用。2、编程界面——系统调用,它以标准实用的子程序形式提供给用户在编程中使用,从而减少了用户程序设计和编程难度,节省用户的程序设计和编程时间。二、命令控制界面1、SHELLA、SHEEL是UNIX系统为用户提供的键盘命令解释程序的集合。B、即是一种交互命令解释程序,也是一种命令级程序设计语言解释程序。2、SHELL命令的两种使用方式A、会话式输入方式B、命令文件方式3、SHEEL命令A、一般形式COMMANDARG1,ARG2,。。。。ARG3B、分类。基本类

1)系统访问命令如:LoginLogout

2)编辑和文件管理命令如:Ed行编辑

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论