操作系统概念
需了解操作系统的特征和发展历程,可能在选择题中考察。
概念
操作系统是计算机系统中的一个核心软件组件,负责管理和控制计算机硬件,为用户和应用程序提供服务。
操作系统特征
- 并发(Concurrence):操作系统具备同时处理和调度多个程序的能力。
- 共享(Sharing):系统中的资源可供内存中多个并发的进程共同使用。
- 虚拟(Virtual):将物理的实物虚拟为逻辑上的对应物。
- 异步(Asynchronism):任务可以不按固定的顺序执行,因此同一操作的结果可能因执行的时序而异。
目标和功能
- 作为用户语句计算机硬件系统之间的接口。
- 作为计算机系统资源的管理者。
- 实现了对计算机资源的抽象。
发展历程
- 手工操作阶段:
- 时间背景:计算机的早期阶段。
- 特点:没有操作系统,用户直接使用计算机硬件。
- 操作方式:用户在一个时刻将自己的程序载入计算机,然后执行。执行完毕后,将结果记录并释放计算机。
- 问题:效率低,CPU大部分时间处于空闲状态。
- 批处理操作系统:
- 单道批处理系统:
- 特点:系统一次只执行一个任务。完成后再执行下一个。
- 操作方式:用户的多个作业被收集到一个作业队列中,操作系统按照队列的顺序逐一执行。
- 问题:CPU利用率仍然不高,因为在I/O操作时,CPU仍然处于空闲状态。
- 多道批处理系统:
- 特点:在内存中同时加载多个作业,并使它们共享CPU。
- 操作方式:当一个作业进行I/O操作时,CPU可以切换到另一个作业,从而提高了CPU的利用率。
- 优势:提高了系统吞吐量和CPU利用率。
- 单道批处理系统:
- 分时操作系统:
- 时间背景:20世纪60年代。
- 特点:允许多个用户通过终端同时访问计算机。
- 操作方式:操作系统为每个用户提供了一个“虚拟机”的概念,使每个用户感觉自己独占了整个系统。实际上,系统在用户之间快速切换,为每个用户提供少量的CPU时间。
- 优势:提高了交互性和多用户并发访问的能力。
- 示例:Unix操作系统在其初期就是一个分时系统。
- 实时操作系统:
- 特点:系统必须在严格的时间限制内响应外部输入。
- 分类:
- 硬实时系统:不满足时限会导致严重的后果,如飞行控制系统。
- 软实时系统:不满足时限可能会降低系统的性能,但不会导致灾难,如多媒体播放器。
- 操作方式:实时操作系统的任务调度是基于优先级的,且通常会预先定义每个任务的执行时间。
- 优势:满足特定应用场景的实时需求,如嵌入式系统和工业控制系统。
操作系统引导
引导流程
操作系统引导的具体流程如下:
- 电源开机(Power-On):
- 当你按下计算机的电源键时,电源开始向主板和各个硬件供电。此时,系统首先进行加电自检。这个过程是由存储在主板ROM芯片中的基本输入/输出系统(BIOS)或统一可扩展固件接口(UEFI)固件执行的。
- BIOS/UEFI 阶段:
- BIOS/UEFI会读取启动设备的首扇区(MBR或GPT),其中包含引导加载器(Bootloader)的代码。
- 引导加载器(Bootloader):
- 引导加载器是一小段程序,它的主要任务是加载操作系统内核。
- 常见的 bootloader 有
- GRUB(Grand Unified Bootloader): 常用于Linux系统,功能强大,支持多系统引导。
- Windows Boot Manager: Windows操作系统的引导管理器。
- 引导加载器会将操作系统内核从存储设备(通常是硬盘)加载到内存中。
- 加载操作系统内核:
- 操作系统内核是操作系统的核心部分,负责管理系统的各种资源,如内存、进程、设备等。引导加载器将内核加载到内存后,会将控制权交给内核。
- 内核初始化:
- 操作系统内核开始运行并进行自我初始化。它会检测和配置系统上的硬件资源,例如设置中断、初始化设备驱动、建立内存管理结构等。
- 启动系统服务和守护进程:
- 在内核初始化后,它会启动一系列的系统进程或服务来管理各种系统任务。