第一章:操作系统引论(汤小丹版操作系统笔记) 超全超详细!!!

文章目录

    • 第一章:操作系统引论
      • 1.1操作系统目标和作用
        • 1.1.1操作系统目标
        • 1.1.2操作系统的作用
        • 1.1.3推动操作系统的主要动力
      • 1.2操作系统的发展过程
        • 1.2.1未配置操作系统的计算级系统
        • 1.2.2单道批处理系统
        • 1.2.3多批道处理系统
        • 1.2.4分时系统
        • 1.2.5实时系统
        • 1.2.6微机操作系统的发展
      • 1.3操作系统的基本特性
        • 1.3.1 并发
        • 1.3.2 共享
        • 1.3.3 虚拟
        • 1.3.4 异步
      • 1.4操作系统的主要功能
        • 1.4.1处理机管理功能
        • 1.4.2存储器管理功能
        • 1.4.3设备管理功能
        • 1.4.4文件管理功能
        • 1.4.5操作系统与用户之间的接口
        • 1.4.6现代操作系统的新功能
      • 1.5 OS结构设计
        • 1.5.1 传统操作系统结构
          • 1.5.1.1 无结构操作系统
          • 1.5.1.2模块化结构OS
          • 1.5.1.3分层式结构OS
        • 1.5.2微内核OS结构

第一章:操作系统引论

1.1操作系统目标和作用

1.1.1操作系统目标
1.1.2操作系统的作用
  1. OS作为用户和计算机硬件系统之间的接口。
  2. OS作为计算机系统资源文件、处理机、存储器、I\0设备的管理者。
  3. OS实现了对计算机资源的抽象
1.1.3推动操作系统的主要动力
  1. 不断提高计算机资源利用率
  2. 方便用户
  3. 器件的不断更新换代
  4. 计算机体系结构的不断发展
  5. 不断提出新的应用需求

1.2操作系统的发展过程

1.2.1未配置操作系统的计算级系统

1.人工操作方式

  • 缺点:1. 用户独占系统 2. CPU 等待人工操作

2.脱机输入\输出方式

1.2.2单道批处理系统

单道批处理系统的处理过程

  • 目的:提高利用率和吞吐量

  • 特点:1.单道性 2.顺序性 3.自动性

  • 缺点:资源得不到充分利用

1.2.3多批道处理系统

多道程序设计的基本概念

  • 特点:1.多道性 2.无序性 3.调度性

  • 优点:1.资源利用率高 2.资源吞吐量大

  • 缺点:1.平均周转时间长 2.无交互能力

多道批处理系统需要解决的问题

1.2.4分时系统

分时系统的引入

  • 用户的需求:人–机交互,共享主机,便于用户上机

分时系统的关键问题

  • (1)及时接收 配置多路卡和缓冲区
  • (2)及时处理 作业直接进入内存和采用轮转运行方式。

分时系统的特征

  • 缺点:不能有效处理紧急任务操作系统对各个用户 / 作业都是完全公平的,循环地为每个用户 /

    作业服务一个时间片,不区分任务的紧急性。

1.2.5实时系统
  • 应用需求:1.实时控制 2.实时信息处理

  • 实时系统的类型:1.工业(武器)控制系统 2.信息查询系统 3. 多媒体系统 4. 嵌入式系统

    实时任务类型

(1)周期性实时任务和非周期性实时任务

(2)硬实时任务和软实时任务

  • 硬实时系统:必须在绝对严格的规定时间内完成处理。

  • 软实时系统:能接受偶尔违反时间规定。

    实时系统的特征

  • 优点: 能够优先响应一些紧急任务,某些紧急任务不需时间片排队。
1.2.6微机操作系统的发展

按照字长分

  • 8位 16位 32位 64位

按照运行方式分

1. 单用户单任务操作系统: CP/M、MS-DOS

2.单用户多任务操作系统
  单用户多任务操作系统的含义是,只允许一个用户上机,但允许用户把程序分成若干个任务,使他们并行执行,从而有效改善系统的性能
​ 代表性:早期的WIN

3.多用户多任务操作系统

允许多个用户通过各自的终端,使用同一台机器,共享主机系统中的各种资源,而每个用户程序又可进一步分为几个任务,使它们能并发执行,从而可进一步提高资源利用率和系统吞吐量。
  在大、中和小型机中所配置的大多是多用户多任务操作系统,而在32位微机上,也有不少配置的是多用户多任务操作系统,其中最有代表性的是UNIX OS。

1.3操作系统的基本特性

1.3.1 并发

并行与并发

  • 并行: 两个或多个事件在同一时刻发生
  • 并发: 两个或多个事件在同一时间间隔内发生 (宏观)微观某一时间点内不是同时发生

引入进程

  • 进程是指 是计算机中的程序关于某数据集合上的一次运行活动,没引入线程之前是系统进行资源分配和调度的基本单位

​ 引入进程可实现并发执行

1.3.2 共享

互斥共享方式

  • 临界资源:一段时间内只允许一个进程访问的资源

​ 例如:打印机,系统表格

同时访问方式

​ 磁盘、共享代码、共享库等

1.3.3 虚拟
  • 时分复用:虚拟处理机(多道程序)技术、虚拟设备技术

  • 空分复用:多道程序共享内存,多文件共享磁盘, 用以提高存储空间的利用率

1.3.4 异步

1.4操作系统的主要功能

1.4.1处理机管理功能
  • 主要功能: 创建和撤销进程,对进程的运行进行协调,实现进程之间的信息交换,以及按照一定算法把处理机分配给进程。
1.4.2存储器管理功能
  • 主要任务: 是为多道程序的运行提供良好的环境,提高存储器的利用率,方便用户使用,并才能够逻辑上扩充内存。
1.4.3设备管理功能
  • 主要任务: 完成用户进程提出的IO请求,为用户进程分配所需的I/O设备,并完成指定的IO操作;提高CPU和IO设备的利用率,提高IO速度,方便用户使用I/O设备。
1.4.4文件管理功能
  • 主要任务: 对用户文件和系统文件进行管理以方便用户使用,并保证文件的安全性。
1.4.5操作系统与用户之间的接口

用户接口

(1)联机用户接口

(2)脱机用户接口

(3)图形用户接口

程序接口

程序接口是为用户程序在执行中访问系统资源而设置的,是用户程序取得操作系统服务的唯一途径。

1.4.6现代操作系统的新功能

系统安全

  • 认证技术
  • 密码技术
  • 访问控制技术
  • 反病毒技术

网络的功能和服务

  • 网络通信

  • 资源管理

  • 应用互操作

支持多媒体

  • 接纳控制功能。

  • 实时调度。

  • 多媒体文件的存储

1.5 OS结构设计

OS结构

传统结构OS

现代结构OS

无结构OS

模块化结构OS

分层次结构OS

1.5.1 传统操作系统结构
1.5.1.1 无结构操作系统

在早期开发操作系统时,设计者只把注意力放在功能的实现和获得高的效率上,缺乏首尾一致的设计思想。

此时的OS是为数众多的一组过程的集合,每个过程可以任意地相互调用其它过程,致使OS内部既复杂又混乱,因此这种OS是无结构的。

1.5.1.2模块化结构OS

模块化程序设计技术的基本概念

该技术是20世纪60年代出现的一种结构化程序设计技术。该技术基于“分解”和“模块化”的原则来控制大型软件的复杂度。

为使OS具有较清晰的结构,OS是按其功能精心地划分为若干个具有一定独立性和大小的模块。

模块独立性

​ 在模块-接口法中,关键问题是模块的划分和规定好模块之间的接口。

​ 注意:

  •   在划分模块时不能将模块划分得太小或过大。
    
  •   划分模块时注意模块的独立性问题。
    

衡量模块独立性的两个标准:内聚性和耦合度

  • 优点:

    ​ (1)提高OS设计的正确性、可理解性和可维护性。

    ​ (2)增强OS的可适应性。

    ​ (3)加速OS的开发过程。

  • 缺点:
    ​ (1)在OS设计时,对各模块间的接口规定很难满足在模块设计完成后对接口的实际需求。
    ​ (2)模块化结构设计中,各模块的设计齐头并进,无法寻找一个可靠的决定顺序,造成各种决定的“无序性”,这将使程序人员很难做到“设计中的每一步决定”都是建立在可靠的基础上。

1.5.1.3分层式结构OS

分层式结构基本概念

​ 在用这种方法构建OS时,已将一个OS分为若干层次,每层又由若干模块组成,各层之间只存在着单向的依赖关系。

  • 优点:

​ (1)易保证系统的正确性。

​ (2)易扩充和易维护性。

  • 缺点: 效率降低
1.5.2微内核OS结构

微内核:提供OS核心功能的内核的精简版本。

微内核OS特点:集各种技术优点之大成。
举例:Mach、Minix、Windows NT、鸿蒙OS

目前从内核架构来划分可分为:微内核和宏内核

  • 宏内核

微内核OS基本概念
1. 总够小的内核
2. 基于客户\服务器模式
3. 应用“机制与策略分离”原理
4. 采用面向对象技术

微内核基本功能

​ 现在一般都采用“机制与策略分离”的原理,将机制部分以及与硬件紧密相关的部分放入微内核中。

​ 1)进程(线程)管理

​ 2)低级存储器管理

​ 3)中断和陷入处理

微内核操作系统优点

​ (1)提高了系统的可扩展性

​ (2)增强了系统的可靠性

​ (3)可移植性强

​ (4)提供了对分布式系统的支持

​ (5)融入了面向对象技术
微内核操作系统存在的问题

​ 较之早期的操作系统,微内核操作系统的运行效率有所降低。

​ 原因:在完成一次客户对OS提出的服务请求时,需要利用消息实现多次交互和进行用户/内核模式与上下文的多次切换。


  • 参考:计算机操作系统(第四版)(汤小丹)

本文链接:https://my.lmcjl.com/post/8224.html

展开阅读全文

4 评论

留下您的评论.