1.1 操作系统的基本概念
1.1.1 操作系统的概念
操作系统是指控制和管理整个计算机系统的硬件与软件资源,合理地组织、调度计算机的工作和资源的分配,进而为用户和其他软件提供一个方便、高效、稳定的接口与运行环境。操作系统是计算机系统中最基本的系统软件。
1.1.2 操作系统的特征
1. 并发
- 概念:并发是指两个或多个事件在同一时间间隔内发生。从宏观上看,这些事件似乎是同时进行的;但从微观角度,实际上是这些事件在交替执行。
- 考点:需要理解并发与并行的区别。并行是指多个事件在同一时刻真正地同时发生,而并发是在一段时间内多个事件交替执行。在多道程序设计环境中,并发是操作系统实现高效资源利用的关键机制之一。例如,多个进程可以在单个 CPU 上并发执行,通过操作系统的调度算法,使得每个进程都能在一定的时间片内获得 CPU 资源。
2. 共享
- 概念:系统中的资源可供内存中多个并发执行的进程共同使用。资源共享分为互斥共享方式和同时访问方式。互斥共享是指在一段时间内只允许一个进程访问该资源,其他进程必须等待,例如打印机;同时访问方式是指在一段时间内多个进程可以同时访问该资源,例如磁盘。
- 考点:掌握不同类型资源的共享方式,以及资源共享在提高系统资源利用率方面的意义。另外,可能会考查资源分配不当导致的死锁问题,因为资源共享是死锁产生的一个必要条件。
- 并发和共享式操作系统两个最基本的特征。
3. 虚拟
- 概念:把一个物理上的实体变为若干逻辑上的对应物。在操作系统中,主要包括 CPU、内存和 I/O 设备的虚拟技术,可以归纳为时分复用技术和空分复用技术。例如,通过时分复用技术实现多个用户共享一个 CPU,每个用户感觉自己独占一个 CPU;通过虚拟内存技术,让用户程序能够访问比实际物理内存更大的地址空间,虚拟存储器是一种空分复用技术。
- 考点:重点掌握虚拟内存的实现原理,包括页表、地址转换等机制,以及虚拟技术如何提高系统的资源利用率和用户体验。
4. 异步
- 概念:在多道程序环境下,由于资源的限制和进程之间的相互影响,进程的执行不是连续的,而是走走停停,以不可预知的速度向前推进。
- 考点:理解异步性对操作系统设计的影响,比如进程调度、资源分配等方面都需要考虑到进程执行的异步性。同时,在处理进程同步和互斥问题时,也需要考虑到异步性可能导致的不确定性。
1.1.3 操作系统的目标和功能
1. 计算机资源的管理者
- 处理机管理:包括进程控制(创建、撤销、阻塞、唤醒等操作)、进程调度(选择合适的进程占用 CPU)等。考点主要集中在进程的状态转换、进程调度算法的原理和性能分析等方面。
- 存储器管理:涉及内存分配和回收(如动态分区分配算法、分页存储管理、分段存储管理等)。重点考查各种内存管理算法的实现原理、内存碎片的产生和解决方法,以及虚拟内存的概念和实现机制。
- I/O 设备管理:负责设备分配操纵,包括设备的分配策略、设备驱动程序的编写等。考点有设备分配的方式(独占、共享、虚拟)、设备独立性的概念等。
- 文件管理:主要涉及文件的存取、共享和保护。考查点包括文件的逻辑结构和物理结构、文件目录的组织方式、文件共享的实现方法(硬链接和软链接)、文件访问权限的设置等。
2. 用户接口
- 命令接口:分为联机命令接口(用户直接在终端上输入命令,系统立即执行)和脱机命令接口(用户将一批命令预先写在一个文件中,然后提交给系统执行)。
- 程序接口(系统调用):是操作系统提供给编程人员的接口,允许用户程序调用操作系统的服务来完成特定的功能,如文件读写、进程创建等。考点在于掌握常见的系统调用类型、系统调用的执行过程。
- GUI 图形化界面:为用户提供了一种直观、方便的操作方式,通过窗口、菜单、图标等元素与计算机系统进行交互,GUI最终是通过调用程序接口实现的。严格来说图形接口不是操作系统的一部分,但图形接口所调用的系统调用命令是操作系统的一部分。
3. 硬件扩展
- 概念:操作系统将裸机改造为功能更强、使用更方便的扩充机器或虚拟机。它隐藏了硬件的复杂性,为用户和应用程序提供了一个抽象的、易于使用的计算环境。
- 考点:理解操作系统在硬件扩展方面的作用,以及不同层次的抽象(如指令集、系统调用等)是如何为用户提供一个方便的编程和使用环境的。
1.2 操作系统发展历程
以下是计算机408《操作系统》中操作系统的发展历程这一小节的知识点和考点总结:
1.2.1 手工操作阶段(此阶段无操作系统)
- 知识点
- 在这个阶段没有操作系统,用户直接使用计算机硬件。
- 用户独占全机,资源利用率低,CPU等待人工操作,人机矛盾突出。
- 考点
- 可能考查此阶段计算机使用方式的特点,例如对资源利用率低的原因分析。
1.2.2 批处理阶段(操作系统开始出现)
1. 单道批处理系统
- 知识点
- 引入了监督程序(早期操作系统的雏形),可以自动地把一批作业逐个地装入内存执行。
- 具有自动性、顺序性和单道性的特点。
- 虽然缓解了人机速度矛盾,但系统资源仍未得到充分利用。
- 考点
- 考查单道批处理系统的特点,如在选择题中判断某个描述是否符合单道批处理系统的特征。
- 分析单道批处理系统对人机矛盾的缓解程度以及资源利用的局限性。
2. 多道批处理系统
- 知识点
- 允许多个程序同时进入内存并交替执行,具有多道的特点,实现了宏观上并行、微观上串行的运行方式。
- 资源利用率高,但由于作业需排队依次处理,平均周转时间长,且无交互能力。
- 存在资源共享、相互制约等复杂关系。
- 考点
- 多道批处理系统中程序的并发执行原理是考查重点,可能在综合题中出现。
- 对多道批处理系统资源利用率提高的原因、平均周转时间长的原因等方面进行考查。
- 可能考查与其他系统(如分时系统)相比,多道批处理系统在交互性方面的差异。
1.2.3 分时操作系统
- 知识点
- 多个用户通过终端同时共享主机,系统把CPU时间划分成时间片,轮流分配给各个终端用户使用。
- 具有同时性、交互性、独立性和及时性的特点。
- 注重人机交互,满足多个用户对计算机的交互使用需求。
- 考点
- 分时系统的特点考查,例如判断某个系统是否符合分时系统的特征。
- 考查分时系统实现人机交互的原理,如时间片轮转机制的具体实现过程。
1.2.4 实时操作系统
- 知识点
- 能够及时响应外部事件的请求,在规定的时间内完成对该事件的处理,并控制所有实时设备和实时任务协调一致地工作。
- 分为硬实时系统(必须在绝对严格的规定时间内完成处理)和软实时系统(在一定时间内响应处理即可)。
- 可靠性高,主要应用于对响应时间有严格要求的领域。
- 考点
- 考查硬实时系统和软实时系统的区别与联系。
- 分析实时操作系统在特定领域(如工业控制、航空航天等)应用的原因,即对实时性和可靠性的要求。
1.2.5 网络操作系统
- 知识点
- 基于计算机网络环境,实现网络中各种资源的共享和计算机之间的通信。
- 提供网络通信和网络资源管理等服务。
- 考点
- 考查网络操作系统的主要功能,如网络资源共享的实现方式、网络通信协议的相关内容。
1.2.6 分布式操作系统
- 知识点
- 由多台计算机组成,系统中各台计算机地位平等,无主次之分。
- 系统中的资源供所有计算机共享,具有分布性、并行性等特点。
- 强调多台计算机协同完成同一任务。
- 考点
- 可能考查分布式操作系统中资源共享的特点、与其他操作系统在资源管理方面的区别。
- 考查分布式系统实现任务并行处理的原理。
1.2.7 个人计算机操作系统
- 知识点
- 主要面向个人用户,为个人计算机提供方便、友好的操作界面。
- 如 Windows、macOS、Linux等,注重用户体验和单用户环境下的易用性。
- 考点
- 考查常见个人计算机操作系统的特点,如 Windows系统的图形界面操作、文件管理方式等。