操作系统概念

💡 低优先级
真题练习
需要了解操作系统的概念,还是经常考一些 基础概念辨析 的选择题的,当然这种题也比较简单。

概念

操作系统 是计算机系统中的一个核心软件组件,负责管理和控制计算机硬件,为用户和应用程序提供服务。

操作系统特征

  1. 并发(Concurrence):操作系统 具备同时处理和调度多个程序的能力。
  2. 共享(Sharing):系统中的资源可供内存中多个并发的进程共同使用。
  3. 虚拟(Virtual):将物理的实物虚拟为逻辑上的对应物。
  4. 异步(Asynchronism):任务可以不按固定的顺序执行,因此同一操作的结果可能因执行的时序而异。

目标和功能

  • 作为用户语句计算机硬件系统之间的接口。
  • 作为计算机系统资源的管理者。
  • 实现了对计算机资源的抽象。

发展历程

操作系统 的发展历程经历了 手工操作、批处理操作、分时操作、实时操作 这四个阶段:

手工操作
阶段
联机批处理
脱机批处理
执行系统
批处理(单道)
多道程序系统
多道批处理
系统
分时系统
实时系统
操作系统形成
个人计算机操作系统
网络操作系统
分布式操作系统
  1. 手工操作 阶段:
    • 时间背景:计算机的早期阶段。
    • 特点:没有 操作系统,用户直接使用计算机硬件。
    • 操作方式:用户在一个时刻将自己的程序载入计算机,然后执行。执行完毕后,将结果记录并释放计算机。
    • 问题:效率低,CPU 大部分时间处于空闲状态。
  2. 批处理操作系统
    • 单道批处理系统
      • 特点:系统一次只执行一个任务。完成后再执行下一个。
      • 操作方式:用户的多个作业被收集到一个作业队列中,操作系统 按照队列的顺序逐一执行。
      • 问题:CPU 利用率仍然不高,因为在 I/O 操作时,CPU 仍然处于空闲状态。
    • 多道批处理系统
      • 特点:在内存中同时加载多个作业,并使它们共享 CPU
      • 操作方式:当一个作业进行 I/O 操作时,CPU 可以切换到另一个作业,从而提高了 CPU 的利用率。
      • 优势:提高了系统吞吐量和 CPU 利用率。
  3. 分时操作系统
    • 时间背景:20 世纪 60 年代。
    • 特点:允许多个用户通过终端同时访问计算机。
    • 操作方式:操作系统 为每个用户提供了一个“虚拟机”的概念,使每个用户感觉自己独占了整个系统。实际上,系统在用户之间快速切换,为每个用户提供少量的 CPU 时间。
    • 优势:提高了交互性和多用户并发访问的能力。
    • 示例:Unix 操作系统在其初期就是一个分时系统。
  4. 实时操作系统
    • 特点:系统必须在严格的时间限制内响应外部输入。
    • 分类:
      • 硬实时系统:不满足时限会导致严重的后果,如飞行控制系统。
      • 软实时系统:不满足时限可能会降低系统的性能,但不会导致灾难,如多媒体播放器。
    • 操作方式:实时 操作系统 的任务调度是基于优先级的,且通常会预先定义每个任务的执行时间。
    • 优势:满足特定应用场景的实时需求,如嵌入式系统和工业控制系统。

操作系统引导

引导流程

OSBootProcesspower_on1. 电源开机(Power-On)bios_uefi2. BIOS/UEFI 阶段- 加电自检- 读取启动设备首扇区- 包含MBR或GPTpower_on->bios_uefibootloader3. 引导加载器(Bootloader)bios_uefi->bootloadermbr_gptMBR/GPT主引导记录/GUID分区表bios_uefi->mbr_gpt读取grubGRUB- Linux系统常用- 支持多系统引导bootloader->grubwindows_bootWindows Boot Manager- Windows系统专用bootloader->windows_bootload_kernel4. 加载操作系统内核- 从存储设备加载到内存- 交给内核控制权grub->load_kernelwindows_boot->load_kernelkernel_init5. 内核初始化- 检测配置硬件资源- 设置中断- 初始化设备驱动- 建立内存管理结构load_kernel->kernel_initstorage存储设备(硬盘/SSD)load_kernel->storage从中加载memory系统内存(RAM)load_kernel->memory加载到system_services6. 启动系统服务和守护进程- 管理各种系统任务kernel_init->system_serviceshardware硬件资源- CPU- 内存- I/O设备kernel_init->hardware检测配置title操作系统引导流程与实时系统

操作系统 引导的具体流程如下:

  1. 电源开机(Power-On):
    • 当你按下计算机的电源键时,电源开始向主板和各个硬件供电。此时,系统首先进行加电自检。这个过程是由存储在主板 ROM 芯片中的基本输入/输出系统(BIOS)或统一可扩展固件接口(UEFI)固件执行的。
  2. BIOS/UEFI 阶段
    • BIOS/UEFI 会读取启动设备的首扇区(MBRGPT),其中包含 引导加载器(Bootloader)的代码。
  3. 引导加载器(Bootloader):
    • 引导加载器 是一小段程序,它的主要任务是加载 操作系统 内核。
    • 常见的 bootloader
      • GRUB(Grand Unified Bootloader):常用于 Linux 系统,功能强大,支持多系统引导。
      • Windows Boot ManagerWindows 操作系统的引导管理器。
    • 引导加载器 会将 操作系统 内核从存储设备(通常是硬盘)加载到内存中。
  4. 加载操作系统内核
    • 操作系统 内核是 操作系统 的核心部分,负责管理系统的各种资源,如内存、进程、设备等。引导加载器 将内核加载到内存后,会将控制权交给内核。
  5. 内核初始化
    • 操作系统 内核开始运行并进行自我初始化。它会检测和配置系统上的硬件资源,例如设置中断、初始化设备驱动、建立内存管理结构等。
  6. 启动系统服务和守护进程
    • 在内核初始化后,它会启动一系列的系统进程或服务来管理各种系统任务。