操作系统概述

CSDN话题挑战赛第2期
参赛话题:学习笔记

计算机系统由硬件和软件两部分组成,操作系统是计算机系统中最重要的<font color="red">系统软件</font>,也是配置在计算机硬件上的第一层软件,<font color="red">作为计算机硬件和计算机用户之间的中介</font>,为应用程序提供使用基础,并成为整个计算机系统的控制中心

目录

1. 什么是操作系统

2. 主要功能

3. 特征

4. 逻辑结构和运行模型

1. 逻辑结构

2. 运行模型

5. 形成与发展

6. 主要类型

7. 安全性

8. 运行基础

1. 处理器及工作模式

2. 中断技术

3. 系统调用


1. 什么是操作系统

  1. 用户角度上,操作系统是一个控制软件, 管理应用程序, 为应用程序提供服务

  2. 从资源分配的角度来讲, 操作系统是资源管理: 管理外设,分配资源

操作系统是在硬件基础上的第一层软件,是其他软件和硬件之间的接口

操作系统层次架构

  • 硬件之上

  • 应用程序之下

软件分为应用软件(办公软件、视频播放软件)如和系统软件

操作系统位于应用软件之下,是系统软件

2. 主要功能

采用多道程序设计技术 => 高效使用计算机软硬件资源,提高计算机系统资源利用率和方便用户使用

指内存中同时放入多道程序交替运行并共享系统资源

1. 处理器管理

指对计算机系统的中央处理器(CPU)管理,对CPU进行分配

进程 => 正在执行的程序

通过进程管理来协调多道程序之间的关系, 使得CPU资源得到充分利用

在多道程序环境下, CPU的分配以进程为基本单位

对CPU的管理和调度最终归结为对进程的管理和调度

主要功能:

  1. 进程的控制和管理

  2. 进程同步与互斥

  3. 进程通信

  4. 进程死锁

2. 存储管理

指对内存空间的管理

多道程序被装入内存共享有限的内存资源, 为每道程序分配内存空间

当内存不够用时, 通过虚拟技术来扩充物理内存, 把当前不运行的程序和数据即使调出内存

主要功能:

  1. 内存分配

  2. 内存保护

  3. 地址变换

  4. 内存扩充

3. 设备管理

指计算机中出来CPU和内存之外的所有输入输出设备(I/O设备)的管理

任务:

  1. 为这些设备提供驱动程序或控制程序

  2. 通过中断技术, 通道技术和缓冲技术使外部设备尽可能与CPU并行工作,提高设备使用效率

主要功能:

  1. 外部设备的分配与释放

  2. 缓冲区管理

  3. 共享性外部设备的驱动调度

  4. 虚拟设备

4. 文件管理

软件资源. 程序和数据以文件的形式存放在外存储器(如磁盘, 光盘, 磁带, 优盘)上,需要时再装入内存

任务:

有效的组织, 存储和保护文件

主要功能:

  1. 文件存储空间管理

  2. 文件目录管理

  3. 文件存取控制

  4. 文件操作

5. 用户接口

接口通常以命令, 图形和系统调用等形式呈现

主要功能:

  1. 命令接口管理

  2. 图形接口管理 ( 实际上为命令的图形化表现形式)

  3. 程序接口管理

6. 网络与通信管理

网络操作至少应具备管理功能:

  1. 网络资源管理 保证资源共享,资源访问

  2. 数据通信管理 提供必要的网络通信协议,完成信息传输

  3. 网络管理 包括网络性能、网络安全、网络故障、网络配置和日志的管理

3. 特征

1. 并发

计算机系统中在一段时间内同时存在多个运行的程序,需要OS管理和调度

(PS:并行:在一个时间点有多个程序同时运行)

在某一个时间点对于某一个内存单元只有一个程序进行访问

能改善系统资源的利用率,提高系统效率

2. 共享

资源共享方式: “同时”访问,互斥共享

  1. 同时访问:有些资源允许在同一短时间内被多个进程同时使用, “同时”为宏观意义上的同时

  2. 互斥共享: 当一个进程正在使用资源时,其他欲使用该资源必须等待,仅当使用完并释放后才允许另一个进程使用

共享性和并发性是操作系统两个最基本的特征, 他们相互依存

3. 虚拟

将一个物理实体(实际存在的)映射为多个逻辑实体(虚拟的)

硬件虚拟化(CPU虚拟化成进程,磁盘虚拟化成文件,内存虚拟化成地址空间),利用多道程序设计技术,让每个用户都觉得有一个计算机专门为他服务

4. 异步

程序的执行不是一贯到底,而是走走停停,向前推进的速度不可预知

并发程序的执行结果也可能不确定

外部设备中断、I/O请求、程序运行时发生中断的时间都是不可预测的

4. 逻辑结构和运行模型

保证操作系统的重要性:采用内核态和用户态两证模式

  • 内核态:操作系统程序运行的状态,该状态下可以执行操作系统的所有指令(包括特权指令),并能使用系统的全部资源

    • 访问的资源多

    • 可靠性、安全性要求高

    • 维护和管理比较复杂

  • 用户态:指用户程序运行的状态,该状态下能执行的指令和访问的资源都将受到限制

    • 访问的资源有限

    • 可靠性、安全性要求低

    • 编程和维护比较简单

1. 逻辑结构

1. 单内核结构

  • 优点:

    • 结构紧密

    • 模块间可以进行组合以满足不同需要

    • 灵活性好

    • 效率高

  • 缺点:

    • 模块功能划分不能精确确定,模块的独立性差

    • 模块间调用关系复杂,正确性和可靠性不能保证,系统维护较难

2. 分层结构 优点:

  • 以层为单位组织各模块,模块之间的依赖、调用关系清晰、规范

  • 每层相互独立

  • 系统的正确性容易得到保证,系统间的接口减少

缺点:

在有单向依赖关系的各分层之间实现通信时系统的开销大,影响系统效率

3. 微内核结构 内核是精心设计的、能实现现代OS最基本的核心功能的部分。通常用于:

  1. 实现与硬件紧密相关的处理

  2. 实现一些较基本的功能

  3. 负责客户和服务器之间的通信

优点:

  • 对进程的请求提供了一致性接口,不区分内核及服务和用户及服务,所有服务均采用消息传递机制提供

  • 具有较好的可扩充性和易修改性

  • 可移植性好

  • 对分布式系统提供支持

缺点:

运行效率比分层式结构好,但任然不高

2. 运行模型

1. 独立运行的内核模型 有自己的独立存储空间和独立运行环境,执行过程不与应用程序(进程)发生关联

2. 嵌入到用户进程中执行的模型 创建用户进程时为其分配了一个核心栈,可将操作系统和内核程序嵌入到用户进程中运行

3. 作为独立进程运行的模型

小部分核心功能任然在内核态下运行,大部分功能则在用户态由一组独立的服务器进程提供

5. 形成与发展

  • 早期计算机使用纸带传输程序和数据,操作系统只起到加载的作用

  • CPU等硬件快速得到发展,批处理阶段提高

  • 内存的容量越来越大,CPU执行多个程序

  • 为了更好的利用计算机资源,出现了分时系统

  • 网络的快速发展,出现了分布式操作系统

1. 操作系统的形成时期

  1. 手工操作阶段

    第一代计算机:第一台计算机诞生(1946)至20世纪50年代

    主要元件:电子管

    操作系统尚未出现,人工操作

    缺点:

    • 用户独占全部计算机资源,资源利用率低

    • CPU等待人工操作

    • CPU和I/O设备串行工作

    手工操作方式本身耗费了大量时间,而在这个时间里计算机只能等待,因此严重降低了计算机资源的利用率,即出现了严重的人机矛盾。

  2. 监控程序阶段(早期批处理阶段)

    出现单道批处理系统

    CPU和其他系统资源的利用率都得到了显著提高

2. 操作系统的成熟时期

  1. 多道批处理操作系统

    第三代计算机特点:

    • 集成电路代替分立的晶体管元件

    • 半导体存储器代替磁芯存储器

    多道程序指允许多个程序同时进入计算机内存,并采用交替执行方法使它们运行

    正真做到了CPU的执行与I/O设备的操作是同时进行

  2. 分时操作系统

    指计算机系统由若干用户共享,在一台主机上连接了多个带有显示器和键盘等设备的终端,允许多个用户同时通过自己的终端以交互方式使用计算机

3. 操作系统的进一步发展时期

Windows将操作系统划分成内核(Kernel)、执行体(Executive)、视窗和图形驱动以及可装入模块。Windows执行体又划分为I/O管理、文件系统缓存、对象管理、热插拔管理器、能源管理器、安全监视器、虚拟内存、进程与线程、配置管理器、本地过程调用等。而且,Windows还在用户层设置了数十个功能模块。

6. 主要类型

1. 批处理操作系统

  • 单道批处理

  • 多道批处理

2. 分时操作系统

  1. 分时系统为用户提供交互命令

  2. 分时系统采用分时方法,为多个终端用户服务

  3. 分时方法是将CPU的执行时间划分为若干个片段,即时间片

  4. 分时系统以时间片为单位轮流为各终端用户服务

特性:

  1. 独立性。采用时间片使一台计算机同时为多个终端服务

  2. 同时性。宏观上,多个终端用户同时使用一台计算机

  3. 交互性。终端用户可采用人机对话的方式与自己的程序对话,直接控制程序运行

  4. 及时性。请求能在足够短的时间内得到响应

3. 实时操作系统 具有实时性,能支持实时控制与实时信息处理的操作系统

功能 :

  1. 实时时钟管理

  2. 过载保护

  3. 高可靠性和安全性

特征:

  1. 及时响应和处理

  2. 安全可靠

  3. 交互能力有限

  4. 多路性

4. 微机操作系统 分类:(1)单用户单任务;(2)单用户多任务;(3)多用户多任务

特性:(1)开放性(2)通用性(3)高性能(4)采用微内核结构

5. 网络操作系统 工作模式:(1)客户-服务器(Client/Server,C/S)模式 (2)对等(Peer-to-Peer)

模式功能:(1)网络通信(2)资源管理(3)网络服务 (4)网络管理(5)互操作能力

6. 多CPU操作系统

多处理器和多核类型:

(1)主从式(2)独立监督式(3)浮动监督式

7. 分布式操作系统

通过网络将多个分散的处理单元连接起来,并在分布式处理软件的支持下构成一个整体而形成的系统。

功能:(1)分布式进程通信(2)分布式文件系统(3)分布式进程迁移(4)分布式进程同步(5)分布式进程死锁

8. 嵌入式操作系统

以应用为中心,以计算机技术为基础,软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。

特点:(1)微型化(2)可定制(3)实时性(4)易移植性

7. 安全性

有效的安全机制:

  1. 身份鉴别

  2. 存取控制

  3. 最小特权管理

  4. 硬件保护

  5. 安全审计

  6. 入侵检测

  7. 数据加密

8. 运行基础

1. 处理器及工作模式

1. 中央处理器

CPU构成:

  1. 运算器:主要负责指令中的算术和逻辑运算,由算术逻辑单元(ALU)、累加寄存器、数据缓冲寄存器和条件状态寄存器等组成,运算器是计算机计算的核心

  2. 控制器:计算机系统的控制中心,主要控制程序运行的流程,包括取指令、维护CPU状态、实现CPU与内存的交互等

  3. 寄存器:CPU内部指令处理过程中暂存数据、地址以及指令信息的存储设备,在计算机的存储系统中具有最快的访问速度

    分类:

    • 用户可见寄存器:由高级语言编译器通过算法分配并使用,主要包括:

      • 通用寄存器:存放数据、作为寻址方式所需的寄存器

      • 数据寄存器:存放操作数

      • 地址寄存器:存放数据或指令的内存地址

      • 条件吗寄存器:保存CPU操作结果的各种标记

    • 控制和状态寄存器:控制CPU操作

      • 程序计数器(PC):记录将要取出的指令地址

      • 指令寄存器(IR):存储最近取出且马上就要执行的指令

      • 存储器地址寄存器(MAR):存储欲访问的内存单元的地址

      • 存储器数据寄存器(MDR):存放欲存入内存中的数据或最近由内存中独处的数据

      • 程序状态字寄存器(PSW):记录CPU运行模式和状态信息

  4. 高速缓存:处于CPU与物理内存之间,一般由控制器中的内存管理单元(MMU)来管理理,访问速度快于内存但低于寄存器

2. 特权指令

  • 特权指令:能引起系统损害的机器指令

  • 非特权指令:不能引起损害

    用户模式只能执行非特权指令

3. CPU状态 以CPU的工作状态划分:

  • 内核态:操作系统程序运行状态

    可以执行包括特权指令在内的全部指令并使用系统所有资源,具有改变CPU工作状态的能力

  • 用户态:用户程序运行状态

    只能执行非特权指令,且只能访问当前运行进程

状态转换:

  • 用户态 ==> 内核态:中断(访问指令或系统调用)和异常

  • 内核态 ==> 用户态:修改程序状态字(PSW)直接进入

2. 中断技术

中断:指程序在执行过程中CPU对系统发生的某个事件做出的一种反应

特点:

  1. 随机的

  2. 可恢复的

  3. 自动处理的

目的:

  1. 解决CPU与I/O设备的并行工作问题

  2. 实现实时控制

1. 中断分类

  1. 外中断:来自CPU之外的外部设备通过硬件请求方式产生的强迫性中断

    • 可屏蔽中断:根据中断允许标志位来决定CPU是否响应中断

    • 不可屏蔽中断:在当前指令结束后就无条件予以响应

  2. 内中断(异常):在执行指令过程中检测到错误或异常条件引起

    • 强迫性中断:由随机事件和外部请求引发,不是程序所期待,包括:

      • 硬件故障

      • 程序性中断

      • 外部中断

      • I/O中断

    • 自愿性中断:程序请求系统为其提供某种功能服务,是程序所期待的

      访管中断:通过执行访管指令而产生的中断

2. 中断向量 每个中断有一个唯一的与其对应的中断向量号,并按照中断向量号从小到大的顺序放在中断向量表中

3. 中断响应与处理

  • 硬件中断装置:负责捕获中断源发出的各种中断请求,并响应中断源,将CPU控制权交给特定的中断处理程序

  • 软件中断程序:负责辨别终端类型并执行相应的中断处理操作

3. 系统调用

操作系统提供用户编程使用的接口

系统调用与一般用户子程序的区别

CPU的工作状态不同

  • 系统调用运行在内核态,用户子程序运行在用户态

  • 系统调用的执行产生中断即访管中断(陷阱),用户子程序不会产生中断

  • 系统调用子程序的代码与调用者的程序代码是分开的、各自独立的,用户子程序是在同一进程地址空间

  • 不同用户程序可以共享使用同一个系统调用,用户子程序通常不能由其他用户程序调用

  • 课堂上知识点的回顾总结

在本章我学习了什么是操作系统,它是硬件之上,应用程序之下的系统软件,随后了解到操作系统的六大功能、四大特征和八大类型,还有操作系统的运行基础。本次学习初步了解了操作系统的架构,后续我还会深入学习更多有关知识,以便加深对操作系统的理解

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Lilianac

你的鼓励是我的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值