操作系统接口
- 命令方式。
这是指由OS提供了一组联机命令(语言), 用户可通过键盘输入有关命令,来直接操纵计算机系统。 - 系统调用方式。
OS提供了一组系统调用,用户可在自己的应用程序中通过相应的系统调用,来操纵计算机。 - 图形、窗口方式。
用户通过屏幕上的窗口和图标来操纵计算机系统和运行自己的程序。
OS系统资源管理者
- 管理对象:
处理器、存储器、 I/O设备以及信息(数据和程序)。 - 管理的内容:
处理机管理, 用于分配和控制处理机;
存储器管理,主要负责内存的分配与回收;
I/O设备管理,负责I/O设备的分配与操纵;
文件管理,负责文件的存取、共享和保护。
单道批处理系统的特征:自动性,顺序性,单道性。
多道批处理系统的特征:
多道性:内存中同时存放几个作业;宏观上并行运行(都处于运行状态,但都未运行完),微观上串行运行(各作业交替使用CPU)
无序性:各作业的完成顺序和进入内存顺序无对应关系
调度性:作业调度和进程调度
分时系统的特征:多路性,独立性,及时性,交互性。
实时系统的特征:多路性,独立性,及时性,交互性,可靠性。
操作系统基本特性
并发
并行性是指两个或多个事件在同一时刻发生;而并发性是指两个或多个事件在同一时间间隔内发生。最基础,最重要。共享
在操作系统环境下,所谓共享是指系统中的资源可供内存中多个并发执行的进程(线程)共同使用。由于资源属性的不同,进程对资源共享的方式也不同,目前主要有以下两种资源共享方式。- 互斥共享方式
系统中的某些资源的使用应该加以管理,为使结果不致造成混淆,应规定在一段时间内只允许一个进程(线程)访问该资源。
当一个进程A要访问某资源时,必须先提出请求,如此时该资源空闲,系统便可将之分配给请求进程A使用, 此后若再有其它进程也要访问该资源时(只要A未用完)则必须等待。 仅当A进程访问完并释放该资源后,才允许另一进程对该资源进行访问。我们把这种资源共享方式称为互斥式共享。
计算机系统中的大多数物理设备,以及某些软件中所用的栈、变量和表格,都属于临界资源,它们要求被互斥地共享。 - 同时访问方式
系统中还有另一类资源,允许在一段时间内由多个进程“同时”对它们进行访问。这里所谓的“同时”往往是宏观上的,而在微观上,这些进程可能是交替地对该资源进行访问。典型的可供多个进程“同时”访问的资源是磁盘设备。
并发和共享是操作系统的两个最基本的特征,它们又是互为存在的条件。
一方面,资源共享是以程序(进程)的并发执行为条件的,若系统不允许程序并发执行,自然不存在资源共享问题;
另一方面,若系统不能对资源共享实施有效管理, 协调好诸进程对共享资源的访问,也必然影响到程序并发执行的程度,甚至根本无法并发执行。
- 互斥共享方式
虚拟
操作系统中的所谓“虚拟”,是指通过某种技术把一个物理实体变为若干个逻辑上的对应物。物理实体(前者)是实的, 即实际存在的;而后者是虚的,是用户感觉上的东西。相应地,用于实现虚拟的技术,称为虚拟技术。
在OS中利用“时分复用”和“空分复用”技术,分别用来实现虚拟处理机、虚拟内存、 虚拟外部设备和虚拟信道等。异步性
在多道程序环境下,允许多个进程并发执行, 但只有进程在获得所需的资源后方能执行。在单处理机环境下,由于系统中只有一个处理机,因而每次只允许一个进程执行,其余进程只能等待。
可见,由于资源等因素的限制,使进程的执行通常都不是“一气呵成”,而是以“停停走走”的方式运行。
进程是以人们不可预知的速度向前推进,此即进程的异步性。
操作系统主要功能
处理机功能
- 进程控制
进程的创建、撤消、状态转换;线程 - 进程同步
进程互斥,进程同步方式 - 进程通信
用来实现在相互合作的进程之间的信息交换。 - 调度
包括进程调度和作业调度
存储器管理功能
- 内存分配
静态分配方式、动态分配方式。为了实现内存分配,在内存分配的机制中应具有这样的结构和功能:- 内存分配数据结构, 该结构用于记录内存空间的使用情况, 作为内存分配的依据;
- 内存分配功能,系统按照一定的内存分配算法, 为用户程序分配内存空间;
- 内存回收功能,系统对于用户不再需要的内存,通过用户的释放请求,去完成系统的回收功能。
- 内存保护
内存保护的主要任务,是确保每道用户程序都只在自己的内存空间内运行,彼此互不干扰。
一种比较简单的内存保护机制,是设置两个界限寄存器,分别用于存放正在执行程序的上界和下界。系统须对每条指令所要访问的地址进行检查,如果发生越界,便发出越界中断请求,以停止该程序的执行。 - 地址映射
以将地址空间中的逻辑地址转换为内存空间中与之对应的物理地址。该功能应在硬件的支持下完成。 - 内存扩充
内存扩充任务,不是去扩大物理内存的容量,而是借助于虚拟存储技术,从逻辑上去扩充内存容量,使用户所感觉到的内存容量比实际内存容量大得多; 或者是让更多的用户程序能并发运行。系统必须具有内存扩充机制:- 请求调入功能。
- 置换功能。
设备管理功能
主要任务是:
- 完成用户进程提出的I/O请求
- 为用户进程分配其所需的I/O设备
- 提高CPU和I/O设备的利用率
- 提高I/O速度
- 方便用户使用I/O设备。
文件管理功能
- 文件存储空间的管理
为每个文件分配必要的外存空间,提高外存的利用率,提高文件系统的运行速度。为此,系统应设置相应的数据结构,用于记录文件存储空间的使用情况;系统还应具有对存储空间进行分配和回收的功能。 - 目录管理
为每个文件建立目录项,并对各目录项有效的组织,以实现方便的按名存取。提供快速的目录查询手段,以提高对文件的检索速度。 - 文件的读/写管理和保护
用户接口
命令接口,程序接口,图形接口。