操作系统的主要功能
一、进程管理
进程是程序资源分配和独立运行的基本单位,基于进程,多个程序可以并发执行,但是对进程的调度开销较大,因此引入了线程,线程是比进程更小的单位,基本不拥有系统资源。
所谓资源,指的是CPU的计算资源,内存的暂存资源,其它的IO资源等。
进程实现并发指的是,为每个程序建立线程
- 在硬件条件下,计算程序和IO程序可以实现并行
- “多道批处理系统”的原理,内存中装载多个程序,当程序A进入缓慢的IO时,系统调度程序B使用CPU,如此间隔实现并发
通常是把进程作为分配资源的基本单位,而把线程作为独立运行和独立调度的基本单位。
操作系统的进程管理,指的是对进程、线程的
- 创建和销毁
- 对资源的共享和同步
- 进程间通信
- 调度
二、内存管理
1.内存分配
为进程分配内存空间,包括回收功能。
2.内存保护
程序A只能在自己的内存中运行,不能访问程序B的内存数据。
3.地址映射
将多个程序装入内存,一些地址是相对于起始地址计算的,即逻辑地址,需要将逻辑地址和物理地址做映射。
4.内存扩充
借助于虚拟存储技术,从逻辑上扩充内存容量。可以只装入一部分程序和数据就可以启动程序,如果需要剩下的,则去磁盘读,当内存不够装的时候,系统可以将一部分不用的程序和数据腾到磁盘上。
三、设备管理
设备管理指的是管理计算机的所有外围设备,处理进程的IO请求。
1.缓冲管理
CPU的高速性和IO的低速性是计算机自身的一个矛盾,程序在CPU中运行极快,可一旦需要IO,就拖低了整体的速度,而且降低了CPU的利用率。
因此,操作系统在内存中设置了缓冲区。
2.设备分配
对于进程的IO请求,操作系统需要设置 设备控制表、控制器控制表 等数据结构来管理设备资源。
3.设备处理
设备处理程序又称为设备驱动程序。
其基本任务是用于实现 CPU和设备控制器 之间的通信。
程序在CPU中运行时,如果需要IO,则CPU向驱动程序发出IO请求,驱动检查请求的合法性、参数等,并检查设备是否可用,然后向设备控制器发出IO命令,启动设备完成指定的IO操作。设备控制器也可以向驱动发出中断请求,此时驱动程序会调用对应的中断处理程序。
四、文件管理
指文件的存储,读写等。