本资源为《操作系统课程设计》实践作业资料,包含任务要求、实验指导及常见问题解答等内容,适用于学习和研究操作系统原理与实现。
操作系统是一种管理计算机软硬件资源的程序集合,旨在为用户提供方便的操作体验。其基本功能包括进程管理、存储管理、文件管理、设备管理和作业管理。
操作系统的组成主要包括:
1. 驱动程序:位于最底层,直接控制和监控各类硬件,并向其他部分提供抽象且通用的接口。
2. 内核:操作系统的核心组成部分,通常在最高特权级运行,负责基础性和结构性功能。
3. 支持库(或称“接口库”):将系统提供的基本服务转化为应用程序可以使用的编程接口。如GNU C运行时库就是这类支持库的一个例子。
4. 外围组件:除了上述三类之外的所有部分,通常提供特定的高级服务。
操作系统可以根据其功能和应用场景的不同分为多种类型:
- 批处理系统
- 分时操作系统
- 实时操作系统
- 分布式操作系统
- 网络操作系统
- 嵌入式操作系统
操作系统的特性包括:
1. 并发性:在计算机系统中同时存在多个程序,这些程序从宏观上看是同时向前推进的。虽然单个CPU上它们交替运行,但可以观察到并发执行。
2. 共享性:指资源被操作系统和用户程序共同使用。
3. 随机性:操作系统的运行环境具有不确定性,设备可能随时向处理单元发出中断请求,系统无法预知正在运行的程序会何时进行何种动作。
4. 虚拟化:通过技术手段将物理实体转换为多个逻辑上的对应物。在操作系统中实现虚拟化的关键在于分时使用方法的应用。
5. 异步性:不确定性体现在同一程序和数据多次执行可能产生不同的结果;运行时间、顺序也具有不可预测性;外部请求或故障发生的时刻难以预料,这些都是异步性的体现。