计算机操作系统(一)绪论

GuangYing Lv2

1.绪论

1.1操作系统的概念、功能

1.1.1操作系统的概念

操作系统:是系统资源的管理者、向上层提供方便易用的服务、最接近硬件的一层软件

  • 控制和管理整个计算机系统的硬件和软件资源
  • 合理组织调度计算机的工作和资源分配
  • 提供给用户和其他软件方便的接口和环境
  • 计算机系统中最基本的系统软件

1.1.2操作系统的功能和目标

作为系统资源的管理者

作为系统资源的管理者

  • 提供的功能
    • 处理机管理
    • 存储器管理
    • 文件管理
    • 设备管理
  • 目标:安全、高效

向上层提供方便易用的服务

封装,操作系统将不友好的硬件功能封装成简单易用的服务,使用户能更方便的使用计算机
用户无需关心底层硬件的管理,只需要对管理操作系统发出命令即可

GUI:图形化用户接口
不需要记忆复杂的命令

联机命令接口=交互式命令接口
脱机命令接口=批处理命令接口

程序接口:可以在程序中进行系统调用来使用程序接口
普通用户不能直接使用程序接口,只能通过程序代码间接使用

最接近硬件的层次

需要实现对硬件机器的拓展

没有任何软件支持的计算机:裸机
裸机上安装操作系统,将硬件机器的功能拓展
通常把覆盖了软件的机器称为扩展机器,又称为虚拟机

1.1.3 操作系统的特征

  • 并发
  • 共享
  • 虚拟
  • 异步

并发

并发:同一时间间隔内发生
宏观上同时发生,微观上交替发生
并行:同一时刻同时发生

操作系统的并发性:同时运行多个程序,宏观同时运行,微观交替运行
操作系统和程序并发是一起诞生的

单核CPU只能并发运行程序
多核CPU才能并行运行

并发性是操作系统的一个最基本的特性

共享

共享:资源共享,系统中资源可供内存中多个并发执行的程序同时使用

两种资源共享方式

  • 互斥共享方式
  • 同时共享方式(宏观上同时)

并发性和共享性:互为存在条件

虚拟

虚拟:把一个物理上的实体变为若干个逻辑上的对应物
物理上的(实际存在),逻辑上(感受到的)

虚拟技术

  • 空分复用技术(虚拟存储器)
  • 时分复用技术(虚拟处理器)

有并发才有虚拟

异步

异步:程序执行不是一贯到底的,而是走走停停,以不可预知的速度推进,即进程的异步性

有并发才有异步

1.2操作系统的发展与分类

  • 手工操作阶段

  • 批处理阶段

    • 单道批处理系统
    • 多道批处理系统(OS开始出现)
  • 分时操作系统

  • 实时操作系统

  • 网络操作系统

  • 分布式操作系统

  • 个人计算机操作系统

各类操作系统主要解决什么问题,优缺点

手工操作阶段

主要缺点:用户独占全机,人机速度矛盾导致资源利用率极低

单道批处理系统

引入脱机输入/输出技术,并由监督程序负责控制作业的输入、输出

主要优点:环节一定程度的人机速度矛盾,资源利用率有所提升
主要缺点:内存中仅能有一道程序运行
CPU有大量的时间在空闲等待I/O完成
资源利用率还是很低

多道批处理系统

每次读入多道程序,支持多道程序并发运行

主要优点:多道程序并发执行,共享计算机资源
资源利用率大幅提升
主要缺点:用户相应时间长,没有人机交互功能

分时操作系统

时间片为单位轮流为各个用户/作业服务

主要优点:用户请求可以被即时相应,解决了人机交互问题
允许多个用户同时使用一台计算机,且感受不到别人存在
主要缺点:不能优先处理一些紧急任务

实时操作系统

主要优点:能够优先相应一些紧急任务,某些紧急任务无需时间片排队

实时操作系统控制下,接收外部信号后及时进行处理,且要在严格的时限内处理完成事件

主要特点:及时性和可靠性

实时操作系统

  • 硬实时系统:必须在绝对严格的规定时间内完成处理
  • 软实时系统:能接收偶尔违反时间规定

其他几种操作系统

网络操作系统:实现网络中各种资源的共享和各台计算机之间的通信

分布式操作系统:分布性和并行性任何工作都可以分布在这些计算机上,并行、协同的完成这个任务

1.3操作系统运行机制

1.3.1操作系统的运行机制

  • 两种指令
    • 特权指令
    • 非特权指令
  • 两种处理器状态
    • 核心态
    • 内核态
  • 两种程序
    • 内核程序
    • 应用程序

应用程序与内核程序

普通程序员写的程序应用程序
使用非特权指令
操作系统开发者编写的内核程序
使用特权指令

CPU设计和生产时就划分了特权指令和非特权指令

CPU有两种状态:内核态(核心态、管态)、用户态(目态)
处于内核态时:此时正在运行内核程序,可以执行特权指令
处于用户态时:此时正在运行应用程序只能执行非特权指令

CPU中:程序状态寄存器PSW,有表示内核态与用户态的二进制位

内核态、用户态切换

内核态->用户态:执行特权指令:修改PSW标志位
用户态->内核态:中断引发,硬件自动完成状态切换
开机:内核态

内核让出CPU前,会用特权指令将PSW的标志位设置为用户态

1.3.2中断和异常

  • 中断的作用
  • 中断的类型
    • 内中断(异常)
    • 外中断
  • 中断机制的基本原理

中断的作用

让操作系统内核夺回CPU使用权的唯一途径

没有中断,就没有并发

中断的类型

  • 内中断
    • 与当前执行的命令有关
    • 中断信号来源于CPU内部
    • 应用程序执行特权指令(终止abort)、除0等异常(故障fault)、调用陷入指令完成系统调用(陷阱、陷入trap)
  • 外中断
    • 与当前执行指令无关
    • 中断信号来源于CPU外部
    • 时钟中断、I/O中断请求

中断机制的基本原理

不同的中断信号,需要不同的中断处理程序来处理
CPU检测到中断信号后,查询中断向量表,找到内存中中断处理程序的位置

1.3.3系统调用

  • 什么是系统调用
  • 与库函数的区别
  • 为什么是必须的
  • 什么功能需要系统调用
  • 系统调用的过程

什么是操作系统

应用程序可以通过系统调用来请求获得操作系统内核的服务

系统调用与库函数的区别

库函数-调用->系统调用

有些库函数不使用系统调用

什么功能需要系统调用

按功能分类

  • 设备管理
  • 文件管理
  • 进程控制
  • 进程通信
  • 内存管理
    凡是与共享资源有关的操作,都必须通过操作系统调用的方式向操作系统提出请求

系统调用的过程

传参指令(传递系统调用的参数)
陷入指令(陷入内核) 非特权指令,会引发内中断
系统调用
返回

用户态发出系统调用请求
内核态执行系统调用相应处理

1.4操作系统体系结构

  • 大内核(宏内核/单内核)
  • 微内核
  • 分层结构
  • 模块化
  • 外核

所有功能都包含:大内核

只包含与硬件关系最紧密的部分:微内核
不属于内核的功能会运行在用户态(反复调用系统调用),会影响系统性能(需要频繁陷入内核)

大内核

  • 主要功能模块都包含
  • 优点:高性能
  • 缺点:内核代码庞大,结构混乱,难以维护

微内核

  • 只保留最基本的功能
  • 优点:内核功能少,结构清晰,方便维护
  • 缺点:需要频繁在内核态和用户态之间切换,性能低

分层结构

  • 每层调用更低层的功能
  • 优点:
    • 便于调试和验证
    • 易于扩充和维护,功能清晰稳定
  • 缺点:
    • 仅能调用相邻低层,难以合理定义各层边界
    • 效率低,不可跨层调用,系统调用执行时间长

模块化

  • 将内核划为多个模块,各个模块相互协作
  • 内核=主模块+可加载内核模块
    • 主模块:只负责核心功能
    • 可动态加载内核模块,无需重新编译整个内核
  • 优点:
    • 模块间逻辑清晰易于维护,确定模块间接口后即可多模块同时开发
    • 支持动态加载新的内核模块,增强OS适应性
    • 任何模块都可以直接调用其他模块,无需消息传递进行通信,效率高
  • 缺点:
    • 模块间接口定义未必合理、实用
    • 模块间相互依赖,更难以调试和验证

外核

  • 内核负责进程调度,进程通信等功能
  • 外核负责为用户进程分配未经抽象的硬件资源,且保证资源使用安全
  • 优点:
    • 不虚拟,不抽象的硬件资源,用户进程可以更灵活的使用硬件资源
    • 减少了虚拟硬件资源的映射层,提高效率
  • 缺点:
    • 降低了系统的一致性
    • 使系统变得更复杂

1.5操作系统引导

  • 什么是操作系统引导(boot)
  • 磁盘里有哪些数据
  • 操作系统引导的过程

主引导记录MBR
磁盘引导程序和分区表
系统盘
引导记录PBR
根目录
其他

RAM中

  • ROM(BIOS)
    • 引导程序,进行自举

开机->跳转执行bios->从主引导记录中读取磁盘引导程序,扫描分区表
->从活动分区读取分区引导记录,执行其中的程序
->从根目录下找到完整系统初始化程序,执行,完成开机

1.6虚拟机

传统计算机

一台物理机器上只能运行一个操作系统

虚拟机

使用虚拟化技术,将一台物理机虚拟化为多台虚拟机

第一类VMM:直接运行在硬件上

  • 能直接控制和分配物理资源
  • 性能更好
  • 可迁移性更差
    第二类VMM:运行在宿主操作系统上
  • 依赖宿主OS为其分配物理资源
  • 标题: 计算机操作系统(一)绪论
  • 作者: GuangYing
  • 创建于 : 2025-06-25 18:45:00
  • 更新于 : 2025-06-25 19:02:42
  • 链接: http://quebo.cn/2025/06/25/计算机操作系统-1绪论/
  • 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。