操作系统有多种组件可以执行明确定义的任务。
尽管大多数操作系统在结构上有所不同,但在逻辑上它们具有相似的组件。 每个组件都必须是系统中定义明确的部分,能够恰当地描述功能、输入和输出。
一个操作系统有以下 8 个组件:
1. 流程管理
2. I/O 设备管理
3. 文件管理
4. 网络管理
5. 主存储器管理
6. 辅助存储管理
7. 安全管理
8. 命令解释器系统
以下部分更详细地解释了上述所有组件:
流程管理
进程是加载到主内存中的程序或程序的一部分。 一个进程需要一定的资源,包括 CPU 时间、内存、文件和
I/O 设备来完成它的任务。 进程管理组件管理在操作系统上同时运行的多个进程。
处于运行状态的程序称为进程。
操作系统负责以下与进程管理相关的活动:
- 创建、加载、执行、暂停、恢复和终止进程。
- 在主内存中的多个进程之间切换系统。
- 提供通信机制,以便进程可以相互通信
- 提供同步机制来控制对共享数据的并发访问,以保持共享数据的一致性。
- 正确分配、取消分配资源以防止或避免死锁情况。
I/O 设备管理
操作系统的一个目的是向用户隐藏特定硬件设备的特性。 I/O Device Management
提供 H/W 设备的抽象层次,并保留应用程序的详细信息,以确保设备的正确使用,防止错误,并为用户提供方便高效的编程环境。
I/O 设备管理组件的任务如下:
- 隐藏硬件设备的详细信息
- 使用缓存、缓冲区和后台处理管理设备的主内存
- 维护并为每个设备提供自定义驱动程序。
文件管理
文件管理是操作系统中最明显的服务之一。 计算机可以以几种不同的物理形式存储信息; 磁带、磁盘和鼓是最常见的形式。
文件被定义为一组相关信息,由文件的创建者定义。 大多数文件代表数据、源和对象形式以及程序。
数据文件可以是任何类型,如字母、数字和字母数字。
文件是位、字节、行或记录的序列,其含义由其创建者和用户定义。
操作系统通过管理诸如类型和磁盘等大容量存储设备来实现文件的抽象概念。 此外,文件通常被组织到目录中以方便使用。
这些目录可能包含文件和其他目录等等。
操作系统负责以下与文件管理相关的活动:
- 文件创建和删除
- 目录创建和删除
- 支持操作文件和目录的原语
- 将文件映射到辅助存储中
- 在稳定(非易失性)存储介质上备份文件
网络管理
网络管理的定义通常很宽泛,因为网络管理涉及多个不同的组件。 网络管理是管理和管理计算机网络的过程。
计算机网络是相互连接的各种类型计算机的集合。
网络管理包括故障分析、维护服务质量、网络配置和性能管理。
网络管理是保持网络健康以在不同计算机之间进行有效通信的过程。
以下是网络管理的特点:
内存管理
内存是一个大的字或字节数组,每个都有自己的地址。 它是 CPU 和 I/O 设备共享的快速访问数据的存储库。
主内存是一种易失性存储设备,这意味着它会在系统故障或系统断电时丢失其内容。
内存管理背后的主要动机是最大化计算机系统上的内存利用率。
操作系统负责以下与内存管理相关的活动:
- 跟踪当前正在使用内存的哪些部分以及由谁使用。
- 决定在内存空间可用时加载哪些进程。
- 根据需要分配和释放内存空间。
磁盘管理(辅助存储管理)
计算机系统的主要目的是执行程序。 这些程序,连同它们访问的数据,在执行期间必须在主存储器中。
由于主存太小,无法永久容纳所有数据和程序,因此计算机系统必须提供辅助存储来备份主存。
大多数现代计算机系统都使用磁盘作为主要的在线存储介质,用于存储程序和数据。 大多数程序,如编译器、汇编器、排序例程、编辑器、格式化程序等,在加载到内存之前都存储在磁盘上,然后将磁盘用作其处理的源和目标。
操作系统负责以下与磁盘管理相关的活动:
安全管理
操作系统主要负责计算机系统中发生的所有任务和活动。 必须保护操作系统中的各个进程免受彼此活动的影响。
为此目的,可以使用各种机制来确保文件、内存段、cpu 和其他资源只能由那些从操作系统获得适当授权的进程才能操作。
安全管理是指一种机制,用于控制程序、进程或用户对由计算机控制所定义的资源的访问,以及一些强制措施。
例如,内存寻址硬件确保进程只能在自己的地址空间内执行。 计时器确保没有进程可以在不放弃 CPU
的情况下获得对 CPU 的控制权。 最后,不允许任何进程进行自己的 I/O,以保护各种外围设备的完整性。
命令解释系统
操作系统最重要的组件之一是它的命令解释器。 命令解释器是用户和系统其他部分之间的主要接口。
命令解释器系统通过调用一个或多个底层系统程序或系统调用来执行用户命令。
命令解释器系统允许人类用户与操作系统交互,并为用户提供方便的编程环境。
许多命令由控制语句提供给操作系统。 自动执行读取和解释控制语句的程序。 这个程序被称为 shell,少数例子是
Windows DOS 命令窗口、Unix/Linux 的 Bash 或 Unix/Linux
的 C-Shell。
其他重要活动
操作系统是一个复杂的软件系统。 除了上述组件和职责之外,操作系统还执行许多其他活动。 下面列出了其中的几个:
- 安全 − 通过密码和类似的其他技术,它可以防止对程序和数据的未经授权的访问。
- 控制系统性能 − 记录服务请求和系统响应之间的延迟。
- 跟踪统计 − 跟踪各种作业和用户使用的时间和资源。
- 错误检测帮助 − 生成转储、跟踪、错误消息以及其他调试和错误检测辅助工具。
- 其他软件和用户之间的协调 − 为计算机系统的不同用户协调和分配编译器、解释器、汇编器和其他软件。
|