从资源管理的角度看,操作系统要对计算机系统内的所有资源进行有效的管理,并合理组织计算机的工作流程来优化资源,提高资源利用率,为此操作系统必须有如下功能。
1、 处理机管理功能:处理机管理的主要任务是对处理机的分配和运行实施有效的管理,从传统意义上讲,进程是处理机和资源分配的基本单位,因此对处理机的管理归结为对进程的管理。
a) 进程控制:进程控制包括进程的创建、进程的撤销以及进程状态的转换。
b) 进程同步:多个进程在活动过程中会产生相互依赖或相互制约的关系,为保证系统中所有进程都能正常活动,必须对并发执行的进程进行协调同步。
c) 进程通信:相互合作的进程之间往往需要交换信息,所以系统提供进程通信机制。
d) 作业和进程调度:一个作业通畅需要经过两级调度才能在处理机上执行。
i. 作业调度:是将选中的一个或多个作业放入内存,为它们分配必要的资源并建立进程。
ii. 进程调度:按一定的算法将处理机分配给就绪队列中的合适进程。
2、 存储器管理功能:存储器管理的主要任务是内存分配、内存保护、地址映射和内存扩充。
a) 内存分配:按一定的策略为每道程序分配内存空间。
b) 内存保护:操作系统中多道程序并发执行,系统应保证各程序在自己的内存区域内运行而不相互干扰,更不能干扰和侵占操作系统空间。
c) 地址映射:源程序经过编译连接后形成的可执行程序的起始地址都从0开始,程序中的其他地址相对于起始地址计算机的,多道程序的环境下,可能出现冲突,所以需要将程序中的相对地址转换为内存中的物理地址。
d) 内存扩充:为了允许大程序或多个程序的运行,应借助虚拟存储技术去获得增加内存的效果。
3、 文件管理功能:计算机系统中的程序和数据通常以文件的形式存放在外部存储器上,操作系统中负责文件管理的部分称为文件系统,文件系统的主要任务是有效地支持文件的存储、检索和修改等操作,解决文件共享、保密和保护等问题。
a) 文件存储空间的管理:文件存放在磁盘上,因此文件系统需要对文件存储空间进行统一管理,包括分配存储空间、回收释放的文件空间等。
b) 目录管理:外存上存放着成千上万的文件,为了方便用户查找,需要使用到目录。
c) 文件操作管理:为了方便用户使用文件,系统需要提供一套文件操作功能,包括文件的创建、删除、读写等。
d) 文件保护:为了保证文件的安全性,防止系统中的文件被非法使用以及遭到破坏,系统应该提供文件保护功能。
4、 设备管理功能:计算机外部设备的管理是操作系统中最庞杂、琐碎的部分。设备管理的主要任务是对计算机系统内的所有设备实施有效的管理。
a) 设备分配:根据用户程序提出的I/O请求和相应的设备分配策略,为用户程序分配设备,当设备使用完后还应收回设备。
b) 设备驱动:当CPU发出I/O指令后,应启动设备进行I/O操作,当I/O完成操作后应向CPU发送中断信号,由响应的中断处理程序进行传输结束处理。
c) 设备独立性:用户程序中使用的设备与实际使用的物理设备无关。操作系统完成用户程序中的逻辑设备到具体设备的映射,使用户用起来更方便。
零测试