1.0操作系统能做什么?
1.0.1利用一个或者多个硬件处理器
也就是同时管理多个CPU工作。
Exploits the hardware resources of one or more processors
1.0.2为系统用户提供一系列的服务
Provides a set of services to system users
例如,文件管理,内存管理,进程管理,设备驱动程序,网络服务等、以下是一些例子的具体概述:
文件管理:操作系统可以提供文件管理服务,使用户能够创建、打开、关闭、复制、移动、删除和重命名文件和目录。
内存管理:操作系统可以为应用程序分配内存,使它们能够运行。同时,操作系统还可以在内存不足时进行页面置换,以确保每个应用程序都有足够的内存可用。
进程管理:操作系统可以提供进程管理服务,以便用户可以启动、停止、暂停和恢复进程。操作系统还可以为新进程分配资源,并确保它们运行的时间片公平分配。
设备驱动程序:操作系统可以提供设备驱动程序服务,以及与外部设备通信。这些设备可能包括硬盘驱动器、打印机、键盘、鼠标、摄像头等等。
网络服务:现代操作系统可以提供网络服务,使用户能够访问互联网,通过网络传输数据,使用远程设备等等。
安全服务:操作系统可以提供安全服务,确保用户数据得到保护。这些服务包括密码保护、文件加密、用户权限管理等等。
日志服务:操作系统可以提供日志服务,记录系统活动,以便管理员可以检查系统问题并解决。
用户接口:操作系统可以提供用户接口服务,使用户能够与计算机进行交互。这些服务包括命令行界面、图形用户界面(GUI)和语音控制等。
1.0.3管理辅存和I/O设备
Manages secondary memory and I/O devices
辅存管理:操作系统可以将一部分内存用作虚拟内存,当物理内存不足时,将不常用的进程或数据块移到磁盘上,以释放内存空间。此外,操作系统还可以对磁盘进行格式化、分区、文件系统管理等操作。
I/O设备管理:操作系统可以进行I/O设备管理,包括设备驱动程序、输入/输出控制以及I/O设备的调度。例如,操作系统可以确保打印机、键盘、鼠标、显示器等设备能够正确地与计算机通信,并且能够高效地使用这些设备。
在开始分析操作系统之前,先简要介绍一些计算机领域的知识,以方便大家学习。
1.1基本构成
处理器(process):控制计算机的操作,执行数据处理功能。只有一个处理器时,它通常指中央处理器(CPU)
内存(main memory):存储数据和程序。
输入输出模块(I/O module):在计算机和外部环境之间移动数据。外部环境由各种外部设备组成,包括辅助存储器设备、通信设备和终端。
系统总线(system bus):在处理器、内存和输入输出模块提供通信。
如图所示,处理器的一种功能是与存储器交换数据。为此,它通常使用两个内部(对处理器而言)寄存器:内存缓冲寄存器MAR和内存缓冲寄存器MBR(主要用于存放写入存储器的数据或从存储器中读取的数据)。同理输入/输出地址寄存器I/O AR用于确定输入输出设备,输入输出缓冲寄存器I/O BR 用于在输入/输出模块和处理期间交换数据。
1.2指令的执行
首先我们要明白,对于一个程序的执行来说,就是一堆指令不断的执行。例如我们在执行int x = a;这个操作时,可能就需要涉及到取a的地址,将a的值赋给x等操作。而最简单的指令处理包括两步:取指令(取指)和执行指令。
其次,单个指令所需要的处理称为一个指令周期。如图所示。
每个指令周期开始时,处理器从存储器取一条指令放在IR(指令寄存器)中,PC(程序计数器)保存下次要去的指令地址。
指令中分为操作码和地址码,操作码决定了该条指令做什么操作,地址码包含着操作所要涉及的数据的地址。指令中包含着确定处理器将要执行的操作的位,也就是操作码的长度,处理器解释指令并执行对应的操作。大体上,这些操作可分类为4类:
i:处理器-存储器:数据从处理和存储器的传输
ii:处理器-I/O:处理器与外部设备的数据传送
iii:数据处理:算术操作或逻辑操作
iv:控制:某些指令可以改变执行顺序
指令的具体知识请在计算机组成原理中深入学习~
1.3中断(Interrupts)
中断也就是打断一个处理器正在执行的程序转头去执行另一个程序的过程。
从而可以提高处理器的利用率。
原因如下:
i:大多数I/O设备比处理器慢
ii:处理器必须暂停等待设备
iii:处理器的浪费使用
举个栗子:当用户在键盘上输入字符时,键盘控制器会发送一个中断请求给CPU,告诉CPU有数据需要被处理。操作系统会根据这个中断请求唤醒相应的设备驱动程序来处理这些数据,并将其传递给应用程序。
总的来说,中断是计算机中一种重要的机制,它可以让不同的硬件设备和软件程序协同工作,并提高计算机的效率和可靠性。
1.4存储器的层次结构
简单来说也就是磁带-磁盘-内存-高速缓存-寄存器的过程
1.5高速缓存
也就是cache,用于解决处理器和内存的速度不匹配,解决的方法是利用局部性原理,即使用cache。
1.6多处理器和多核计算机组织结构
应考试要求,后面的部分写的相对来说比较简单,如有兴趣或者疑惑的读者,可以去学习计算机组成原理这本书~