操作系统(7)

来源:互联网 发布:知乎每日精选 rss 编辑:程序博客网 时间:2024/06/15 15:37

操作系统的主要功能有:

处理机管理功能:在传统的多道程序系统中,处理机的分配和运行都是以进程为基本单位的,因而对于处理机的管理可归结为对进程的管理。处理机管理的主要功能有:创建和撤销进程,对诸进程运行进行协调,实现进程之间的信息交换,以及按照一定的算法把处理机分配给进程。

1.进程控制主要功能就是为作业创建进程,撤销(终止)已结束的进程,以及控制进程在运行过程中的状态转换。

2.进程同步包括进程互斥方式和进程同步方式,进程互斥方式是指诸进程在对临界资源进行访问的过程中,应采用互斥访问的方式。进程同步方式是指互相合作去完成共同任务的诸进程,在同步机构对他们的同步机构加以协调。最简单用于进程互斥的机构就是为每一个临界资源都配置一把锁,当锁打开时,进程可以对该临界资源进行访问;而当锁关闭的时候,则禁止进程访问该临界资源。而实现进程同步的时,最常用的方式就是信号量机制。

3.进程通讯

当有一组相互合作的进程去完成一个共同的任务的时候,在他们之间往往需要交换信息。相互合作的进程处于同一计算机系统时,通常是在他们之间采用直接通信的方式,即由源进程利用发送命令直接将消息挂到目标进程的消息队列上,以后由目标进程利用接收命令从其消息队列中取出信息。

4.调度

作业调度:作业调度的基本任务是后备队列中按照一定的算法选择出若干个作业,为他们分配运行所需的资源,在这些作业调入内存以后,就给他们分别建立进程,使他们都成为可能获得处理机的就绪进程,并将它们插入就绪队列。

进程调度:进程调度的任务就是从进程的就绪队列中按照一定的算法选出一个进程,将处理机分配给他,并为他设置运行现场,使其投入执行。

存储器管理功能

1.内存分配

分为静态分配方式和动态分配方式

静态分配方式:每个作业的内存空间是在作业装入的时候确定的,在作业装入后的整个运行期间,不允许作业再申请新的内存空间,也不允许作业在内存中浮动

动态分配方式:每个作业所要求的基本内存空间虽然也是在装入时确定的,但是允许作业在运行的过程中继续申请新的附加的内存空间,以适应程序和数据的动态增长,也允许作业在内存中移动。

2.内存保护:内存保护的主要的任务就是确保每道用户程序都仅在自己内存空间内运行,彼此互相不干扰。绝不允许用户程序访问操作系统程序的程序和数据,也不允许用户程序转移到非法共享的其他用户程序中去。为了确保每道程序都只在自己的内存区中运行,最简单的方法就是设置一个两个界限寄存器,分别用于存放正在执行程序的上界和下界。在程序运行时,系统对每条指令所要访问的地址进行检查,如果发生越界就会发出越界中断请求,停止该程序的执行。

3.地址映射

将地址空间中的逻辑地址转换为内存空间中与之对应的物理地址,该功能应在硬件的支持下完成。


4.内存扩充

借助虚拟技术,在逻辑上扩充内存容量。

5.设备管理功能:完成用户进程提出的I/O请求,为用户进程分配所需的I/O设备,并完成指定的I/O操作。提高cup和I/O设备的利用率,提高I/O设备的速度,方便用户使用I/O设备

1.缓冲存储

2.设备分配

为实现设备分配,系统中应该设置控制表,控制器控制表等数据结构,用于记录设备及控制器等标识符和状态。这些表格可以了解指定的设备是否可用,是否忙碌,以供进行设备分配时参考。

3.设备处理

又称为设备驱动程序,其基本功能就是实现cup和设备控制器之间的通行,即由CPU向设备控制器发出I/O命令,要求他完成指定的i/o操作,反之,当CPU接收从控制器发来的中断请求,并给予迅速的相应和相应的处理。

设备处理的过程就是首先要检查I/O请求的合法性,了解设备状态是否为空闲,读取有关的传递参数以设置设备的工作方式,然后向设备控制器发出I/O命令,启动I/O设备完成指定的操作。此外设备驱动程序还能及时地相应由控制器发来的中断请求,并根据中断请求的类型,调用相应的中断处理程序来处理进行处理,对于设置了通道的计算机系统,设备处理程序还应该根据用户的I/O请求自动的构成通道。


6.文件管理功能

1.文件存储空间的管理

2.目录管理

目录管理的主要任务就是为每个文件建立一个文件项,目录项包括文件名,文件属性,文件在磁盘上的物理位置等,对众多的文件项进行有效的组织,以实现方便的按名存取。及用户只提供文件名,即可对文件进行存取。目录管理还应该能实现文件的共享,这样只需要在外存上保留一份共享文件的副本。此外还应该提供快速的目录查询手段,以提供对文件检索的速度。

3.文件的读/写管理和保护



7.操作系统与用户的接口:为了方便用户对操作系统的使用,操作系统向用户提供了用户与操作系统的接口,包括下面两种:

1.用户接口

为了用户直接或者间接地控制自己的作业,操作系统向用户提供了命令的接口。用户可通过该接口向作业发出命令已控制作业的运行。

1)连接用户接口

这是为联机用户提供的,他有一组键盘命令及命令解释程序组成。当用户在终端或者控制台输入一条命令后,系统便立即转入命令解释程序,对该命令加以解释执行,在完成指定的功能后,系统便又回到终端或者控制台上等待用户键入下一条命令。

2)脱机用户接口

这是为批处理的用户提供的。用户用作业控制语言JCL把所需要对作业进行调控和和干预的命令事先写在作业说明书上,然后将它与作业一起提交给系统,当系统调用到该作业运行时,通过调用命令解释程序去对作业说明书上的命令逐条解释执行,直到遇到作业结束语句的时候停止该作业的运行。

3)图形用户化界面

2.程序接口

程序接口就是为用户在程序执行中访问系统资源而设置的,是用户取得操作系统服务的唯一途径,它是由一组系统调用组成的,每一个系统调用就是能完成特定功能的子程序。每当要应用程序要求OS提供某种服务的时候,便调用调用具有相应功能子程序。早期的系统调用都是用汇编语言写的,只有汇编语言编写的程序中才能直接使用系统调用。在高级语言以及C语言中,往往提供了与各个系统调用一一对应的库函数。这样程序便可以通过调用对应的库函数来使用系统调用。但在近几年所推出的操作系统中,如unix,os/2版本中,其系统调用本身就是用C语言编写,并以函数的形式提供,故在C语言的编制的过程中,可直接使用系统调用。


现代操作系统的新功能

1.系统安全

1)认证技术

2)密码技术

3)访问控制技术

4)反病毒技术


2.网络的功能和服务

1)网络通信

2)资源管理

3)应用互操作

3.支持多媒体

1)接纳控制功能

2)实时调度

3)多媒体文件的处理



原创粉丝点击