《操作系统功能.pptx》由会员分享,可在线阅读,更多相关《操作系统功能.pptx(23页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、总述 在多道程序环境下,系统通常无法同时满足所有作业的资源要求,为使多道程序能有条不紊地运行,操作系统应具有这样几方面的功能,以实现对资源的管理:处理机管理功能、存储器管理功能、设备管理功能、文件管理功能和作业管理功能。此外,为了方便用户使用操作系统,还须向用户提供一个使用方便的用户接口。用户接口(命令接口,程序接口,图形用户接口)对对象操纵和管理的软件集合(处理机管理软件、存储器管理软件、设备管理软件、文件管理软件)操作系统对象(处理机、存储器、设备、文件和作业)核心第1页/共23页存储器管理的功能 存储器管理的主要任务,是为多道程序的运行提供良好的环境,方便用户使用存储器,提高存储器的利用
2、率,以及能从逻辑上来扩充内存。为此,存储器管理应具有以下功能:内存分配、内存保护、地址映射和内存扩充等。第2页/共23页存储器管理的功能一、内存分配 内存分配的主要任务,是为每道程序分配内存空间,使它们“各得其所”,提高存储器的利用率,以减少不可用的内存空间,允许正在运行的程序申请附加的内存空间,以适应程序和数据动态增长的需要。OS在实现内存分配时,可采取以下两种方式:1.静态分配:每个作业的内存空间是在作业装入时确定的。2.动态分配:每个作业所要求的基本内存空间,是在装入时确定的,但允许作业在运行过程中,继续申请新的附加内存空间,以适应程序和数据的动态增长,也允许作业在内存中的“移动”。为了
3、实现内存分配,在内存分配的机制中应具有以下结构和功能:1.内存分配数据结构:该结构用于记录内存空间的使用情况,作为内存分配的依据。2.内存分配功能:系统按照一定的内存分配算法为用户程序分配内存空间。3.内存回收功能:系统对用户不再需要的内存,通过用户的释放请求,去完成系统的回收功能。第3页/共23页存储器管理的功能二、内存保护 内存保护的主要任务,是确保每道用户程序都在自己的内存空间中运行,互不干扰。进一步说,绝不允许用户程序访问操作系统的程序和数据;也不允许转移到非共享的其它用户程序中去执行。一种比较简单的内存保护机制,是设置两个界限寄存器,分别用于存放正在执行程序的上界和下界。系统需要对每
4、条指令所访问的地址进行越界检查,发果发生越界,便发出越界中断请求,以停止该程序的执行。如果这种检查完全用软件实现,则每执行一条指令,便需要增加若干条指令去进行越界检查,这将显著地降低程序的运行速度。因此,越界检查都由硬件实现。当然,对发生越界后的处理,还须与软件配合来完成。第4页/共23页存储器管理的功能三、地址映射 一个应用程序(源程序)经编译后,通常会形成若干个目标程序;这些目标程序再经过链接而形成可装入程序。这些程序的地址都是从“0”开始的,程序中的其它地址都是相对于起始地址计算的;由这些地址所形成的地址范围称为“地址空间”;其中的地址称为“逻辑地址”或“相对地址”。此外,由内存中的一系
5、列单元所限定的地址范围称为“内存空间”;其中的地址称为“物理地址”。在多道程序环境下,地址空间中的逻辑地址和内存空间中的物理地址是不可能一致的。因此,存储器管理必须提供地址映射功能,以将地址空间中的逻辑地址转换为内存空间中与这对应的物理地址。该功能同样应在硬件的支持下完成。第5页/共23页存储器管理的功能四、内存扩充 由于物理内存的容量有限,因而难于满足用户的需要,势必影响到系统的性能。在存储器管理中的内在扩充任务,并非是去增加物理内存的容量,而是借助于虚拟存储技术,从逻辑上扩充内存容量,使用户所感觉到的内存容量比实际内存容量大得多。为了能从逻辑上扩充内存,系统必须具有内存扩充机制,用于实现下
6、述功能:1.1.请求调入功能。请求调入功能。允许在仅装入一部分用户程序和数据的情况下,启动该程序运行。在运行过程中当发现继续运行时所需的程序和数据尚未装入内存时,可向OS发出请求,由OS将所需部分调入内存,以便继续运行。2.2.置换功能。置换功能。若内存中已无足够的空间来装入需要调入的部分时,系统应能将内存中的一部分暂时不用的程序和数据调至磁盘上,以便腾出内存空间,然后再将所需部分调入内存。第6页/共23页处理机管理的功能 处理机管理的主要任务,是对处理机进行分配,并对其运行进行有效的控制和管理。在多道程序环境下,处理机的分配和运行都是以进程为基本单位,因而对处理机的管理可归结为进程的管理。它
7、包括以下几个方面:(一)进程控制(二)进程同步(三)进程通信(四)调度第7页/共23页处理机管理的功能(一)进程控制 在多道程序环境下,要使作业运行,必须先为它创建一个或几个进程,并为之分配必要的资源。进行运行结束时,要立即撤消该进程,以便及时回收该进程所占用的各类资源。进程控制的主要任务,便是为作业创建进程,撤消已结束的进程,以及控制进程在运行过程中的状态转换。在OS中通常是利用若干条进程控制原语或系统调用,来实现进程控制。所谓“原语”,是指用以完成特定功能的,具有“原子性”的一段程序。“原子性”是指在程序中的一组动作,要么全做,要么全不做,是不可分割的。在进程控制中所使用的最基本的原语有:
8、用于创建一个新进程的创建进程原语。用于撤消一个已结束的进程的撤消进程原语。第8页/共23页处理机管理的功能(二)进程同步 进程是以异步方式运行的,并以人们不可预知的速度向前推进。为使多个进程能有条不紊地运行,系统中必须设置进程同步机制。进程同步的主要任务是对诸进程的运行进行协调。有两种协调方式:1.进程互斥方式。这是指诸进程在对临界资源进行访问时,应采用互斥方式。最简单的用于实现进程互斥的机制,是为每一种临界资源配置一把锁w,并为该锁设置一对关锁原语Lock(w)和开锁原语Unlock(w)。当锁已打开时,进程可以对临界资源进行访问;而关上时,则禁止进程访问该临界资源。2.进程同步方式。指在相
9、互合作完成共同任务的进程间,由同步机构对它们的执行次序加以协调。第9页/共23页处理机管理的功能(三)进程通信 在多道程序环境下,可由系统为一个应用程序建立多个进程。这些进程相互合作去完成一个共同任务,而在这些相互合作的进程之间,往往需要交换信息。进程通信的任务,就是用来实现在相互合作进程之间的信息交换。当相互合作的进程处于同一计算机系统时,通常是采用直接通信方直接通信方式式。即由源进程利用发送命令直接将消息(message)挂到目标进程的消息队列上,以后由目标进程利用接收命令从其消息队列中取出消息。当相互合作的进程处于不同的系统中时,常采用间接通信方式间接通信方式,即由源进程利用发送命令将消
10、息送入一个存放消息的中间实体中,以后由目标进程利用接收命令从中间实体中取走消息。该中间实体通常称为邮箱,相应的通信系统称为电子邮件系统。第10页/共23页处理机管理的功能(四)调度 等待在后备队列上的每个作业,通常要经过调度,包括作业调度和进程调度两步,才能执行。作业调度的基本任务,是从后备队列中按照一定的算法,选择出若干个作业,为它们分配必要的资源(首先是分配内存)。在将它们调入内存后,便为它们建立进程,使之成为可能获得处理机的就绪进程;并将它们按一定算法插入就绪队列。进程调度的任务,则是从进程的就绪队列中,按照一定的算法选出一新进程,把处理机分配给它,并为它设置运行现场,使进程投入运行。第
11、11页/共23页设备管理的功能 设备管理的主要任务,是完成用户提出的I/O请求,为用户分配I/O设备;提高CPU和I/O设备的利用率;提高I/O速度;以及方便用户使用I/O设备。为实现上述任务,设备管理应具有缓冲管理、设备分配和设备处理,以及虚拟设备等功能。第12页/共23页设备管理的功能(一)缓冲管理 缓冲管理的基本任务是管理好各种类型的缓冲区,如字符缓冲区和字符块缓冲区,以缓和CPU和I/O速度不匹配的矛盾,最终达到提高CPU和I/O设备利用率,进而提高系统吞吐量的目的。在不少系统中,还通过增加缓冲存储容量的办法,来改善文件系统的性能。对于不同的系统,可以采用不同类型的缓冲区机制。最常见的
12、缓冲区机制有单缓冲机制,能实现双向同时传送数据的双缓冲机制,以及能供多个设备同时使用的公用缓冲池机制。第13页/共23页设备管理的功能(二)设备分配 设备分配的基本任务,是根据用户的I/O请求,为之分配其所需的设备。如果在I/O设备和CPU之间还存在着设备控制器和I/O通道时,还须为分配出去的设备分配相应的控制器和通道。在进行设备分配时,应针对不同的设备类型而采用不同的设备分配方式。对于独占设备(临界资源)的分配,还应考虑到该设备被分配出去后,系统是否安全。设备用完后,还应立即加以回收。第14页/共23页设备管理的功能(三)设备处理 设备处理程序又称为设备驱动程序。其基本任务通常是实现CPU和
13、设备控制器之间的通信。即由CPU向设备控制器发出I/O指令,要求它完成指定的I/O操作;并能接收由设备控制器发来的中断请求,给予及时的响应和相应的处理。处理过程是:设备处理程序首先检查I/O请求的合法性、了解设备的状态是否空闲、了解有关传递参数以及设置设备的工作方式。然后,便向设备控制器发出I/O命令,启动I/O设备去完成指定的I/O操作。最后是及时响应由控制器发来的中断请求,并根据该中断请求的类型,调用相应的中断处理程序进行处理。对于设置了通道的计算机系统,设备处理程序还应能根据用户的I/O请求,自动地构成通道程序。第15页/共23页设备管理的功能(四)设备独立性和虚拟设备1.设备独立性:基
14、本含义是指应用程序独立于物理设备,以使用户编制的程序与实际使用物理设备无关。这种独立性不仅能提高用户程序的可适应性,使程序不局限于某具体的物理设备,而且易于实现输入、输出的重定向。即,在I/O操作中所使用的设备可方便地重新指定,而无须改变原有程序。2.虚拟设备功能:可把每次仅允许一个进程使用的物理设备,改造为能同时供多个进程共享的设备。或者说,它能把一个物理设备变换为多个对应的逻辑设备,以使一个物理设备能供多个用户共享。这样,不仅提高 了设备的利用率,而且还加速了程序的运行,使每个用户都感到自己在独占该设备。第16页/共23页文件管理的功能 在现代计算机系统中,总是把程序和数据以文件的形式存储
15、在磁盘上,供所有的或指定的用户使用。文件管理的主要任务,是对用户文件和系统文件进行管理,以方便用户使用,并保证文件的安全性。为此,文件管理应具有对文件存储空间的管理,目录管理,文件的读、写管理以及文件的共享与保护等功能。第17页/共23页文件管理的功能(一)文件存储空间的管理 其主要任务是为每个文件分配必要的外存空间,提高外存的利用率,并能有助于提高文件系统的工作速度。为了提高存储空间的利用率,对存储空间的分配通常是采用离散分配方式,以减少外存零头,并以盘块为基本分配单位。盘块的大小通常为512字节至4K字节。第18页/共23页文件管理的功能(二)目录管理 为了使用户能方便地在外存上找到他所需
16、的文件,通常由系统为每个文件建立一个目录项。目录项包含文件名、文件属性、文件在磁盘上的物理位置等。由若干个目录项又可构成一个目录文件。目录管理的主要任务是为每个文件建立其目录项,并对众多的目录项加以有效的组织,以实现方便的按名存取。其次,目录管理还应能实现文件共享,这样,只需在外存上保留一份该共享文件的副本。此外,还应能提供快速的目录查询手段,以提高对文件的检索速度。第19页/共23页文件管理的功能(三)文件的读、写管理和存取控制1.文件的读、写管理 读、写管理是最基本的功能。这是根据用户的请求,从外存中读取数据;或将数据写入外存。在进行文件读(写)时,系统先根据用户给出的文件名,去检索文件目
17、录,从中获得文件在外存中的位置。然后,利用文件读(写)指针,对文件进行读(写)。一旦读(写)完成,便修改读(写)指针,为下一次读(写)做好准备。由于读和写操作不会同时进行,故可以合用一个读/写指针。第20页/共23页文件管理的功能(三)文件的读、写管理和存取控制2.文件的存取控制为了防止系统中的文件被非法窃取和破坏,在文件系统中必须提供有效的存取控制功能,以实现下述目标:(1)防止未经核准的用户存取文件;(2)防止冒名顶替存取文件;(3)防止以不正确的方式使用文件。多级保护设施来达到这一目标:第一是进行系统级存取控制,这通常是以使用口令并对口令加密的方法,来防止非法用户进入系统,从而不可能进行文件访问。第二是用户级存取控制,这常常是通过对用户进行分类和为用户分配适当的“文件存取权限”等方法来实现。第三是文件级存取控制,这是通过设置文件属性(如只读、只执行、读/写等属性)来控制对文件的存取。第21页/共23页作业上作业本子:1.内存管理有哪些主要功能?它们的主要任务是什么?2.处理机管理具有哪些主要功能?它们的主要任务是什么?3.设备管理有哪些主要功能?其主要任务是什么?4.文件管理有哪些主要功能?其主要任务是什么?第22页/共23页谢谢您的观看!第23页/共23页
限制150内