【OS】一、操作系统引论

1、操作系统的目标和作用

定义(重点)

  • 一组控制和管理计算机软硬件资源、合理对各类作业进行调度以及方便用户使用程序集合
  • 位于硬件层之上所有软件之下的一个系统软件

目标

  • 方便性
    • 命令和图形界面
  • 有效性
    • 提高系统资源利用率
    • 提高系统吞吐量
  • 可扩充性
    • 取决于OS的结构
  • 开放性
    • 可移植、兼容性

作用

  • 作为用户和硬件系统之间的接口
    • 和用户之间通过用户命令
    • 和硬件系统之间通过系统调用(System Call
  • 作为计算机资源的管理者
  • 实现了对计算机资源的抽象(隐藏、扩充)

主要动力

  1. 提高资源利用率(分时)
  2. 方便用户
  3. 器件更新
  4. 结构发展
  5. 新应用需求

2、操作系统的发展过程(了解)

  • 系统之间的比较

发展

无 O S → + 处 理 单 道 批 处 理 → 宏 观 上 + 并 行 多 道 批 处 理 → + 管 理 O S 无OS\xrightarrow{+处理}单道批处理\xrightarrow[宏观上]{+并行}多道批处理\xrightarrow{+管理}OS OS+ + + OS

无OS

  • 人工操作
  • 脱机I/O方式
    • 提高效率
    • 提升I/O速度

单道批处理

  • 使用监督程序monitor
  • 内存中只有一道程序
  • 存在运行控制权的传递
  • 优点
    • 减少了人工操作,自动性
  • 缺点
    • 资源利用低
    • I/O操作时CPU闲置

多道批处理

  • 采用调度程序(与监督程序对应)

  • 多道程序等待CPU

  • 优点

    • 提高了内存、I/O设备和CPU的利用率
    • 吞吐量大
  • 缺点

    • 平均周期长
    • 无交互能力
  • 面临问题

    • 处理机争用
    • 内存分配和保护
    • I/O管理
    • 文件的组织和管理
    • 作业管理
    • 用户与系统的接口

OS

  • 一组控制和管理计算机硬软件资源、合理的对各类作业进行调度,以及方便用户使用的程序的集合
  • 包括了分时操作系统实时操作系统

分时系统

概念

  • 指一台主机上连接了多个带有显示器和键盘的终端。并允许多个用户共享主机中的资源,通过他们自己的终端使用计算机。
  • 产生是由于用户的需求
    • 人机交互
    • 共享主机
    • 方便上机

特点

  • 及时接收
    • 多终端没有排队
    • 输入缓存
  • 及时处理
    • 轮转运行,响应时间短
    • 在内存交互作业,速度快

注意:这里不是实时,是及时

实现

单道分时系统
  • 轮流分时间片给用户使用,同一时间只能运行一个作业。
具有前后台的分时系统
  • 前台作业优先级大于后台,可以同时运行一个前台和一个后台程序。

多道分时系统
  • 同时运行多个作业,轮流开始

特征

  • 多路性
    • 多终端分时共享,提高资源利用率,降低费用。
  • 独立性
    • 每个用户在各自的终端上进行操作,虚拟独占主机。
  • 及时性
    • 及时响应请求。
  • 交互性
    • 用户可通过终端与系统进行广泛的人机对话。

典型系统

  • Multics
  • UNIX(包含Linux

Linux=实时系统+分时系统

响应时间

T i = N × Q + T o s + T s w a p T_i=N\times Q+T_{os}+T_{swap} Ti=N×Q+Tos+Tswap

Ti为响应时间,N为用户数量,Q为时间片长度,Tos为系统开销,Tswap为信息交换

  • 改善方法
    • 采用重入码,减少信息交换。
    • 采用虚拟存储技术,减少信息交换。

实时系统(了解)

概念

  • 系统能及时响应外部事件的请求,在规定的时间内完成对事件的处理,并控制所有实时任务协调一致地运行。

要求

  • 适用场景
    • 要求及时处理的场合
  • 实时计算
    • 可以定义为这样一类计算:系统的正确性,不仅由计算的逻辑结果来确定,而且还取决于产生结果的时间。

类型

  • 工业控制系统
    • 高实时性
  • 信息查询系统
    • 低实时性
  • 多媒体系统
    • 多任务的时间协同
  • 嵌入式系统
    • 资源有限

任务

  • 按任务执行是否呈现周期性来划分

    • 周期性的(联系周期)
    • 非周期性的(联系开始或完成截止时间)
  • 根据对截止时间的要求(秒级)来划分

    • 硬实时任务
    • 软实时任务

比较

  • 多路性
    • 相同
  • 独立性
    • 相同
  • 及时性
    • 实时系统要求更高
  • 交互性
    • 分时系统交互性更强
  • 可靠性
    • 实时系统要求更高

微机系统

  • 单用户单任务
    • CP/M
    • MS-DOS
  • 单用户多任务
    • Windows系列
  • 多用户多任务
    • Unix
    • Solaris
    • Linux

Windows Server是单/多用户系统具有争议。

3、操作系统的基本特征(重点)

并发

  • 概念

    • 并行是指两个及以上的事件在同一时刻发生。
    • 并发是指两个及以上的事件在同一时间间隔发生。

    并发用于解决资源利用的问题。

任务并行

  • 宏观

    • 指系统中有多个任务同时运行。
  • 微观

    • 指单处理机系统中的任务并Task Concurrency即多个任务在单个处理机上交替运行)或多处理机系统中的任务并Task Parallelism即多个任务在多个处理机上同时运行)。
  • 进程(运行中的程序)

    • 系统中能独立运行并作为资源分配的基本单位
    • 用于管理程序运行。
    • 引入线程后,独立运行的单位变为线程

线程是进程的基本执行单元,一个进程的所有任务都在线程中执行。

共享

  • 概念
    • 系统中资源可供内存中多个并发执行的进程共同使用
  • 同时段同对象。
  • 互斥共享
    • 一段时间只允许一个进程访问该资源。
  • 资源在宏观上共同使用,在微观上是互斥的。

并发共享是操作系统的两个最基本特征

虚拟

  • 概念
    • 通过某种技术把一个物理实体变为若干个逻辑上的对应物
  • n是某一物理设备所对应的虚拟的逻辑设备数,则虚拟设备的速度必然是物理设备速度的1/n,相当于把资源分成很多份提供给用户们使用。
  • 时分复用
    • 虚拟处理机技术
    • 虚拟设备技术
  • 空分复用
    • 虚拟存储

异步

  • 概念
    • 指进程以不可预知的状态执行
  • 特点
    • 运行进度不可预知。
  • 正确性
    • 取决于虚拟的(非上面的虚拟)顺序性。
  • 影响
    • 难以重现错误
    • 具有不确定性

4、操作系统的主要功能

主要任务

  • 为多道程序的运行提供良好的运行环境,以保证多道程序能有条不紊地、高效地运行,并能最大程度地提高系统中各种资源的利用率和方便用户的使用。

功能(重要)

  1. 处理机管理(CPU
  2. 存储器管理
  3. 设备管理
  4. 文件管理
  5. 方便用户使用的用户接口

4、操作系统的结构设计(了解)

概念

  • 软件
    • 操作系统是一种软件,所以需要设计。

传统结构

无结构

  • 概念
    • 一组过程集,各个过程可相互调用。
    • 又称为整体系统结构
  • 缺点
    • 逻辑复杂,维护困难

模块化

  • 概念
    • 通过将大型程序分解成各个功能模块,以控制复杂度。
  • 优点
    • 可维护性、可适应性增强。
    • 开发过程加快。
  • 缺点
    • 接口不易确定
    • 模块之间依赖关系复杂

分层式

  • 概念
    • 按照软件运行速度由下向上分层,下层可为上层提供服务。
    • 底层为硬件,顶层为应用程序。
  • 用户接口在高层,公用模块在低层。
  • 缺点
    • 无法并行开发
    • 调用时占用资源多

微内核

  • 概念
    • 将操作系统分成多个模块,只有微内核这个模块在内核态,其余部分都作为普通用户执行
    • 服务是C/S模式。
  • 优点
    • 系统灵活性、可扩充性、可靠性提升
    • 适合于分布式系统
    • 融入了面向对象技术
  • 缺点
    • 性能代价太高

    • 如图,服务a调用服务b必须通过中间的保护机制到内核,再从内核到服务b

技术
  • 使用了面向对象的程序设计技术。
    • 所谓对象,是指在现实世界中具有相同属性、服从相同规则的一系列事物的抽象,而把其中的具体事物称为对象的实例。
    • 即使得各类实体(如进程、消息等)存在对象这一概念。
  • 可扩展性
    • 隐蔽和封装(类的性质,使得资源被分隔开)
  • 继承性
    • 代码复用(类的继承)
  • 提升程序正确性和可维护性
特征
  • 内核足够小
  • 采用C/S模式
  • 应用“机制与策略分离”原则
  • 采用面向对象技术
基本功能
  • 进程管理
  • 低级存储管理
  • 中断和陷入处理

习题

题目一

题目二

题目三

题目等

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值