操作系统的主要功能

引入OS的主要目的是:

  1. 为多道程序的运行提供良好的运行环境,以保证多道程序能有条不紊地、高效地运行
  2. 能最大程度地提高系统中各种资源的利用率
  3. 方便用户使用

基本功能:

  1. 处理机管理
  2. 存储器管理
  3. 设备管理
  4. 文件管理

为了方便用户使用OS,还需向用户提供方便的用户接口。

1. 处理机管理

主要功能:

  1. 创建和撤销进程
  2. 对进程进行协调
  3. 实现进程之间的信息交换
  4. 按照一定算法把处理机分配给进程

进程控制
多道程序环境下,作业并发执行 ----- 必须为每道作业创建一个或多个进程,并为之分配资源

当进程运行结束时 ---- 立即撤销该进程 ---- 以便及时回收该进程所占用的各类资源,供其它进程使用

进程控制的主要功能: 为作业创建进程撤销已结束的进程, 以及控制进程在运行过程中的状态转换

进程同步
进程同步的主要任务是对多个进程(含线程)的运行进行协调 ----- 使多个进程能有条不絮地运行

常用的协调方式有两种:

  1. 进程互斥方式 ---- 对临界资源访问时,应采用互斥方式 ----- 每一个临界资源配置一把锁W
  2. 进程同步方式 ---- 在相互合作去完成共同任务的诸进程间,由同步机构对它们的执行次序加以协调 ---- 信号量机制

进程通信
当有一组相互合作的进程去完成一个共同任务时,在它们之间往往需要交换信息。

进程通信的任务是实现相互合作的进程之间的信息交换。

当相互合作的进程处于同一计算机系统时,通常在它们之间采用直接通信方式,即由源进程利用发送命令直接将信息挂到目标进程的消息队列上,以后由目标进程利用接收命令从其消息队列中取出信息。

调度
调度包括作业调度进程调度两步。

作业调度: 后备队列 ----- 一定算法 ----- 选择若干个作业 ----- 分配运行所需资源 ----- 调入内存 ---- 建立进程 ---- 使成为就绪进程并插入就绪队列

进程调度: 进程就绪队列 ---- 一定算法 ---- 选一个进程 ----- 分配处理机 ---- 设置运行现场,投入执行

2. 存储器管理

主要任务:

  1. 为多道程序的运行提供良好环境
  2. 提高存储器利用率
  3. 方便用户使用
  4. 逻辑上扩充内存

主要功能:

  1. 内存分配与回收
  2. 内存保护
  3. 地址映射
  4. 内存扩充

1. 内存分配
主要任务:
1) 为每道程序分配内存空间,使其各得其所
2) 提高存储器利用率,尽量减少不可用的内存空间(碎片)
3) 允许正在运行的程序申请附加的内存空间,以适应程序和数据动态增长的需要。

实现内存分配时,有两种方式:
1) 静态分配方式。 每个作业的内存空间是在作业装入时确定的,在作业装入后的整个运行期间不允许该作业再申请新的内存空间,也不允许作业在内存中“移动”

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

内存保护
主要任务:
1) 确保每道用户程序都仅在自己的内存空间内运行,彼此互不干扰
2) 绝不允许用户程序访问操作系统的程序和数据,也不允许用户程序转移到非共享的其他用户程序中去执行

为确保每道程序都只在自己的内存区中运行 ---- 设置内存保护机制
一种比较简单的内存保护机制是设置两个界限寄存器,分别用于存放正在执行程序的上界和下界。
在程序运行时,系统须对每条指令所要访问的地址进行检查,如果发生越界,便发出越界中断请求,以停止程序的执行。

地址映射
在多道程序环境下,每道程序经编译和链接后所形成的可装入程序其地址都是从开始的(逻辑地址),各程序的地址空间的逻辑地址与其在内存空间中的物理地址并不相一致。

地址映射:将地址空间中的逻辑地址转换为内存空间中与之对应的物理地址(在硬件的支持下完成)

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

为实现扩充,系统必须设置内存扩充机制(包含少量硬件),实现下述功能:
1) 请求调入功能,系统允许在仅装入部分用户程序和数据的情况下,便能启动该程序运行。在程序运行过程中,若发现要继续运行时所需的程序和数据尚未装入内存,可向OS发出请求,由OS从磁盘中将所需部分调入内存。

2)置换功能,若发现在内存中已无足够的空间来装入需要调入的程序和数据时,系统应能将内存的一部分暂时不用的程序和数据调至硬盘上,以腾出内存空间,然后将所需部分装入内存。

3. 设备管理

主要任务:
1)完成用户进程提出的I/O请求,为用户进程分配所需的I/O设备,并完成指定的I/O操作
2)提高CPU和I/O设备的利用率,提高I/O速度,方便用户使用I/O设备。

为实现上述任务,设备管理应具有缓冲管理、设备分配、设备处理、虚拟设备等功能。

缓冲管理
在I/O设备和CPU之间引入缓冲,则可效地缓和CPU和I/O设备速度不匹配的矛盾,提高CPU利用率,进而提高系统吞吐量。因此在现代OS中,无一例外地在内存中设置了缓冲区,而且还可通过增加缓冲区容量的方法来改善系统的性能。

不同的系统可采用不同的缓冲区机制。常见的缓冲区机制有:单缓冲机制、能实现双向同时传送数据的双缓冲机制、能供多个设备同时使用的公用缓冲池机制。
上述这些缓冲区都由OS缓冲管理机制将它们管理起来。

设备分配
基本任务: 根据用户进程的I/O请求、系统现有资源情况、按照某种设备分配策略,为之分配其所需的设备。如果在I/O设备和CPU之间还存在着设备控制器和I/O通道,则还需为分配的设备分配相应的控制器和通道。

为实现设备分配,系统中应设置设备控制表、控制器控制表等数据结构,用于记录设备及控制器等的标识符和状态

这些表格 ----- 了解 ----- 设备当前是否可用、是否忙碌

在进行设备分配时,应针对不用的设备类型而采用不同的设备分配方式。
对于独占设备的分配还应考虑到该设备被分配出去后系统是否安全,设备使用完成后,应立即由系统回收。

设备处理
设备处理程序又称为设备驱动程序。

基本任务:
用于实现CPU和设备控制器之间的通信,即由CPU向设备控制器发出I/O命令,要求它完成指定的I/O操作;反之,由CPU接收从控制器发来的中断请求,并给予迅速的响应和相应的处理。

处理过程:
首先检验I/O请求的和合法性,了解设备状态是否是空闲的,读取有关的传递参数及设置设备的工作方式 ------> 然后向设备控制器发送I/O命令,要求它完成指定的I/O操作

此外设备驱动程序还应能及时响应由控制器发来的中断请求,并根据该中断请求的类型,调用相应的中断处理程序进行处理。

4. 文件管理

主要任务:
1)对用户文件和系统文件进行管理以方便用户使用
2)保证文件的安全性

为此文件管理应具有对文件存储空间的管理、目录管理、文件的读/写管理、文件的共享和保护等功能。

文件存储空间的管理
主要任务:
为每个文件分配必要的外存空间,提高外存的利用率,进而提高文件系统的读、取速度。

为此,系统中应设置相应的数据结构,用于记录文件存储空间的使用情况,以供分配存储空间时参考。还应具有对存储空间进行分配和回收功能。

目录管理
主要任务:
1)为每一个文件建立一个目录项。目录项包括文件名、文件属性、文件在磁盘上的物理位置等
2)对众多的目录项加以有效的组织,以实现方便的按名存取。
3)实现文件共享,这样就只需在外存上保留一份该共享文件的副本
4)提供快速的目录查询手段,以提高对文件检索的速度

文件的读/写管理和保护
1)文件的读/写管理
该功能是根据用户的需求,从外村中读取数据,或将数据写入外存。

在进行读写时
先根据用户给出的文件名去检索文件目录,从中获得文件在外存的位置 --------- 利用文件读/写指针,对文件进行读/写 ----- 一旦读写完成,便修改读/写指针,为下一次读/写做好准备
由于读写操作不会同时进行,故可合用一个读/写指针。

2)文件保护
为了防止系统中的文件被非法窃取和破坏,在文件系统中必须提供有效的存取控制功能,以实现以下目标:

  1. 防止未经核准的用户存取文件
  2. 防止冒名顶替存取文件
  3. 防止以不正确的方式使用文件

操作系统和用户之间的接口

两大类:

1. 用户接口
为了便于用户直接或间接地控制自己的作业,操作系统向用户提供了命令接口。用户可通过该接口向作业发出命令以控制作业的运行。
分为三种:
1)联机用户接口
联机用户 ---- 由一组键盘操作命令、命令解释程序组成
用户在终端或控制台键入一条命令 ----> 系统转入命令解释程序,对命令加以解释执行

2)脱机用户接口
批处理作业的用户
用户用作业控制语言JCL把需要对作业进行的控制和干预的命令事先写在作业说明书上,然后将它与作业一起提供给系统。

3)图形用户接口
采用了图形化的操作界面 ---- 图标、菜单
不需要像联机用户接口那样要熟记所有命令及其格式和参数

程序接口
程序接口是为用户程序在执行中访问系统资源而设置的,是用户程序取得操作系统服务的唯一途径。

由一组系统调用组成,每一个系统调用都是一个能完成特定功能的子程序。

每当应用程序要求OS提供某种服务时,便调用具有相应功能的系统调用。

现代操作系统的新功能

增加了面向安全、面向网络、面向多媒体等功能。

系统安全
1)认证技术。 确认被认证对象是否名副其实
2)密码技术。 存储和传输的数据进行加密
3)访问控制技术。 1.用户存取权限的设置 2.文件属性的设置
4)反病毒技术。

网络的功能和服务
1)网络通信。 源主机和目标主机之间实现无差错的数据传输
2)资源管理。 对网络上的共享资源有效管理,协调用户使用,保证数据一致和安全
3)应用互操作

支持多媒体
1)接纳控制功能
2)实时调度
3)多媒体文件的存储

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值