操作系统概念 第一章笔记

Posted mayunfei233

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了操作系统概念 第一章笔记相关的知识,希望对你有一定的参考价值。

1.1计算机系统结构

计算机系统可被分为四个部分:

  • 硬件
    提供基础计算资源:CPU、内存、I/O设备
    在这里插入图片描述
    一个或多个cpu、设备控制器通过公共总线连接,提供对共享内存的访问,cpu和设备争夺内存周期的并发执行

  • CPU区间(burst)和IO区间,添加和写入-----------cpu速度要远远快于I/O设备速度

  • I/O设备和CPU可以并发执行,磁盘键盘

  • 每部分(每一类)都有设备控制器:
    负责特定的设备类型、具有本地缓冲区和寄存器、通知CPU它已经完成了它的操作引起中断

  • 操作系统
    在各种应用程序和用户之间控制和协调硬件的使用

  • 应用程序
    定义如何使用系统资源来解决用户的计算问题
    例如: 文字处理器,编译器,网页浏览器,数据库系统,视频游戏

  • 用户
    人,机器,其他计算机
    在这里插入图片描述

1.1.1中断的常用功能

中断(Interrupt):

  • 通常通过中断向量(interrupt vector)将控制传递给中断服务程序
  • 体系结构必须保存中断指令的地址
  • 当另一个中断正在被处理时,传入中断被禁用,以防止丢失中断

操作系统是中断驱动的
cpu正在计算微分方程,鼠标动一下,usb控制器打断cpu进行更紧急的事情

通过上下文找到中断前的状态,寄存器(rgister)保存当前进程运行到哪一个指令,程序计数器(program counter)被打断进程执行的下一条指令在内存中的位置

中断处理:

  • 操作系统通过存储寄存器(registers)和程序计数器(program counter)来保存CPU的状态
  • 单独的代码段决定了对于每种类型的中断应该采取什么行动
  • 确定发生了哪种类型的中断:轮询(polling)、矢量中断系统(vectored interrupt system)

分类:

  • 程序中断
  • 时钟中断
  • 硬件故障中断
  • IO中断

在这里插入图片描述

1.1.2 I / O结构同步

同步I / O结构:
当I/O启动后,控制只在I/O完成时返回给用户程序

  • 等待指令使进程空闲,直到下一次中断
  • 等待循环
  • 对于一个进程,一次最多有一个未完成的I/O请求,没有同步的I/O处理

异步I / O结构:

在I/O启动后,控制返回到用户程序,而没有等待I/O完成

  • 系统调用请求给操作系统,让用户等待I/O完成
  • 设备状态表包含每个I/O设备的条目,指示其类型、地址和状态
  • 当中断时,操作系统在I/O设备表中建立索引以确定设备状态,并修改表项以包括中断
    在这里插入图片描述
    设备状态表
    在这里插入图片描述

1.1.3直接存储器存取结构

Direct Memory Access Structure

  • 用于高速I/O设备,能够以接近内存的速度传输信息
  • 设备控制器将数据块从缓冲存储器直接传输到主存,而不需要CPU干预
  • 一个块只产生一个中断,而不是每个字节产生一个中断

1.1.4存储结构

  • 主存(Main memory)-只有CPU可以直接访问的大型存储媒体
  • 辅助存储器(Secondary storage)-主存的扩展,提供大的非易失性存储容量
  • 磁盘(Magnetic disks )覆盖有录音材料的硬质金属或玻璃盘
    在这里插入图片描述

1.1.5分级存储器体系

  • 主存储器是现代计算机系统运行的中心
  • 分级存储系统:速度,花费,波动性
  • 缓存-复制信息到更快的存储系统;主存可以看作是辅助存储器的最后缓存
    在这里插入图片描述

1.1.6缓存

  • 正在使用的信息暂时从较慢的存储器复制到较快的存储器
  • 首先检查更快的存储(缓存),以确定是否存在信息:如果是,则直接从缓存中使用信息(快速);如果不是,数据复制到缓存并在那里使用
  • 缓存小于正在缓存的存储:缓存管理重要的设计问题:
    缓存大小和替换策略
    在这里插入图片描述

1.2什么是操作系统@

操作系统是一种管理程序,同时为应用程序提供服务,它充当计算机用户和计算机硬件之间的中介

1.2.1操作系统的目的@

  • 执行用户程序,使解决用户问题更容易
  • 使计算机系统使用方便
  • 有效地使用计算机硬件

1.2.2操作系统的定义@

考试可以这么答:
操作系统是计算机的管理程序向下管理着计算机的硬件资源向上为应用程序提供运行环境,并且为用户提供一些简洁方便的用户界面。此外,操作系统还应该是底层的系统资源分配器以及程序运行的管理程序

OS是一个资源分配器

  • 管理所有资源
  • 在资源的有效使用和公平使用之间作出决定

OS是一个控制程序

  • 控制程序的执行,以防止错误和不当使用计算机

“在计算机上一直运行的程序”就是内核(kernel)-----------内核模式
其他的要么是系统程序(system program),要么是应用程序(application program)

1.3操作系统的发展

  • Mainframe Computer System-------大型计算机系统
    Batch Processing System -------批处理系统
    Multiprogrammed System--------多道程序系统
    Time-Sharing System--------------分时系统
  • Desktop Operating System----------桌面操作系统
    、、、、、、、、、、、、、、、、、、、、、、、、、、、、
    多处理器系统:
  • Parallel Operating System-----------并行操作系统,紧耦合
  • Distributed Operating System-------分布式操作系统,松耦合
  • Clustered Operating System---------集群操作系统
    、、、、、、、、、、、、、、、、、、、、、、、、、、、、、
  • Real-Time Operating System--------实时操作系统
  • Handheld Operating System---------手持操作系统

1.3.1批处理系统—晶体管计算机代替真空管计算机(二代)

特点:@
1.同一时间内只能执行一个作业
2.自动的从一个作业转移到下一个作业

  • 它的主要任务是自动地将控制从一个工作转移到另一个工作
  • 由程序、数据和一些控制信息组成
  • 作业流程:
    1.程序员准备工作
    2.程序员把作业(代码+数据+控制信息)交给计算机操作员
    3.操作员将程序分类成批并运行
    4.返回输出
    在这里插入图片描述

批处理系统的问题@

  • CPU区间,IO区间
  • 因为机械I/O设备的速度本质上比电子设备(cpu)慢,所以CPU经常是空闲的
  • IO区间大于cpu区间:IO密集型程序/进程
  • 某些科学计算类的应用,cpu区间可能长于IO区间:cpu密集型程序/进程

如何去解决?

将多个作业一起加载到计算机当中,一个作业进入IO区间后,另一个进入cpu区间,使cpu尽量保持工作状态------多道程序系统

1.3.2多道程序系统—小规模集成电路代替晶体管计算机(三代)

  • 技术革新: 通过磁盘技术直接访问多个作业,操作系统可以执行作业调度,以有效地使用资源和执行任务
  • 作业池-使用磁盘技术:
    1.将所有的工作保持在作业池(job pool)中
    2.操作系统将多个作业(作业池的子集)同时保存在内存中
    3.操作系统选择并开始执行内存中的一个作业
    在这里插入图片描述
  • 它需要JOB调度(作业调度)来在几个准备放入内存的作业中选择几个作业(作业池子集)放入内存,它们这时会竞争cpu资源-------长期调度 先到先服务
  • 它需要CPU调度(scheduling)从几个准备运行的作业中选择一个作业----------短期调度
  • 最后,同时运行的多个作业要求它们在操作系统的各个阶段不能相互影响
  • 授权机制保证进程运行不会影响到其他进程

1.3.3分时系统

特点:

  • 分时(或多任务处理)是多程序系统的逻辑扩展 但底层相同
  • CPU通过频繁地在多个任务之间切换来执行多个任务,用户可以在每个程序运行时与它们进行交互
  • 分时操作系统允许许多用户同时共享计算机------最重要特点
    在这里插入图片描述
  • 加载到内存并正在执行的程序通常被称为进程(process)
  • 为了获得合理的响应时间,它需要虚拟内存,这是一种允许不完全在内存中执行作业的技术
  • 它还必须提供文件系统磁盘管理

1.3.4桌面操作系统

  • 个人计算机-------专用于单个用户的计算机系统
  • I/O设备-键盘,鼠标,显示屏,小型打印机
  • 用户的便利性(convenience)响应性(responsiveness)
  • 可以运行几种不同类型的操作系统(Windows, MacOS, UNIX, Linux)

1.3.5并行系统(多处理器系统)

  • 多处理器系统(Multiprocessor systems)在与其他部分的密切交互中使用多个CPU
  • 紧耦合系统(Tightly coupled system) 处理器共享内存和时钟;通过共享内存进行通信
  • 并行系统的优点:
    1.增加吞吐量
    2.规模经济
    3.增加可靠性

对称多处理(Symmetric multiprocessing – SMP
):

  • 许多进程可以同时运行,而不会降低性能
  • 大多数现代操作系统都支持SMP
  • 每个处理器都参与完成操作系统的所有任务

非对称处理(Asymmetric multiprocessing
):

  • 每个处理器被分配一个特定的任务;主处理器(boss pocessor)将工作调度并分配给从处理器
  • 在非常大的系统中更常见
  • 主从关系

1.3.6分布式系统

  • 在几个物理处理器之间分配计算

  • 松散耦合系统:
    -每个处理器都有自己的本地内存
    -通过各种通信线路进行通信

  • 分布式系统的优点
    -信息资源共享
    -计算加速
    -可靠性
    -通信

  • 需要网络基础设施

  • 可能是客户机-服务器或点对点系统
    在这里插入图片描述

1.3.7集群系统

  • 集群允许两个或多个系统共享存储,不共享内存
  • 用于科学计算
  • 介于紧耦合和松耦合之间
  • 提供高可靠性
  • 非对称集群(Asymmetric clustering): 一个服务器运行应用程序,而另一个服务器是备用的—热备份模式(hot-standby mode)
  • 对称集群(Symmetric clustering): 所有N个主机都在运行该应用程序

1.3.8实时系统

  • 通常用作专用应用程序的控制设备,如:

    -控制科学实验
    -医学影像系统
    -工业控制系统
    -一些显示系统

  • 定义良好的定时约束

  • 实时系统可以是硬实时,也可以是软实时

硬实时(Hard real-time)

  • 次要存储器有限或不存在,储存在短期存储器(ROM)中的数据
  • 与分时系统冲突,通用操作系统不支持
  • 承诺一定时间内一定做出响应

软实时(Soft real-time)

  • 限制功能在机器人的工业控制
  • 适用于需要高级操作系统特性的应用程序(多媒体、虚拟现实)
  • 针对于某一个具有软实时性能的进程给她一个相当高的优先级,尽力让他早点完成

1.3.9手持系统

  • 个人数码助理(pda)
  • 移动电话
  • 问题:记忆容量有限、慢的处理器、小显示屏
  • 要求反应速度
  • 续航要求高
  • 内置许多传感器(IO设备)

1.4操作系统结构

1.4.1通用操作系统组件

OS包括以下8个方面:
总线结构,设备控制器
在这里插入图片描述

  • 进程管理--------------------Process Management
  • 主存储器管理--------------Main Memory Management
  • 文件管理--------------------File Management
  • I / O系统管理--------------I/O System Management
  • 辅助存储器管理-----------Secondary-Storage Management
  • 联网--------------------------Networking
  • 保护系统--------------------Protection System
  • 命令解释程序--------------Command-Interpreter System

1.4.2进程管理

  • 进程是一个正在执行的程序
  • 一个进程需要一定的资源来完成它的任务
  • 操作系统负责与过程管理有关的以下活动:
    进程创建(creation)和删除(deletion)、进程暂停(suspension)和恢复(resumption.)

以上是关于操作系统概念 第一章笔记的主要内容,如果未能解决你的问题,请参考以下文章

数据库系统概论学习笔记-第一章绪论

操作系统学习笔记 第一章:操作系统概述(王道考研)

《通信原理》复习笔记1----第一章绪论

Docker学习笔记第一章:补充

操作系统第一章笔记整理

操作系统笔记