初识操作系统【一】

趁暑假把下学期内容学了 (为什么我不能上课好好听讲呢???)




操作系统是应用程序与硬件之间的桥梁。

操作系统的目标:

  • 运行用户程序核心目标
  • 更高效使用计算机(面向系统)
  • 更方便使用计算机(面向用户)

初识操作系统【一】
初识操作系统【一】
初识操作系统【一】


现代计算机系统组成

  • 一个或多个CPU(或核)和内存
  • 若干通过总线相连的设备控制器和I/O设备
  • 总线

初识操作系统【一】
每个控制器都有本地缓存,CPU可以在内存和控制器的本地缓冲之间产生数据。
而控制器可以在设备和设备的本地缓冲器器中传输数据。

一次完整的读磁盘操作:

  1. CPU发送i/o指令,通过总线传输到磁盘控制器可以进行
  2. 此时CPU可以进行其他指令,而磁盘控制器在受到指令后执行命令。
  3. 磁盘把数据传输到控制器的本地缓冲区
  4. 磁盘控制器发出中断,通知CPU数据已经读好了
  5. CPU响应中断并且把磁盘缓存区中的数据读入内存

此时的CPU和磁盘控制器可以并行。

初识操作系统【一】
初识操作系统【一】
初识操作系统【一】
初识操作系统【一】




多道程序设计和分时系统


单道程序设计:
简单批处理系统:最早的操作系统。实现了自动化作业调度,可以再无人工干预的条件下运行作业。【批处理:一批无需人工交互的作业批量运行】

  • 需要操作系统介入

简单批处理系统的核心:一个常驻监控程序

  • 控制作业传输
  • 调度作业运行
  • 自动从一个运行完的作业转换到下一个作业

绝大多数作业的运行都是CPU计算I/O操作交替运行的,经过无数次交替运行才能运行完作业。

我们把每一段CPU运行时间称为CPU脉冲,每段I/O运行时间称为I/O脉冲
如图,简单批处理系统在控制器执行I/O指令的时候,CPU空闲,反之亦然。

初识操作系统【一】



多道程序系统:

  • 在管理程序控制下相互穿插运行
  • 使得CPU和I/O操作可以并行

初识操作系统【一】
初识操作系统【一】


并行两个或者多个作业在同一时刻运行
并发两个或多个作业在同一时间间隔内依次运行



初识操作系统【一】

分时系统:是多道程序设计的延伸
时间片:把一段CPU时间按照固定单位进行分割,每个分割得到的时间段称为一个时间片。

  • 分时系统一般采用时间片轮转方法使一台计算机为多个用户服务。
  • 在单位时间内,每个用户获得一个时间片并运行。
  • 保证用户获得足够小的响应时间,并提供交互能力。
    初识操作系统【一】

假如分时系统中有5个作业,设定时间片大小为2毫秒,每个进程在10毫秒内各自运行了2毫秒。那么,该系统平均的响应时间是?
平均响应时间就是每个作业的响应时间除以总的作业量,即(0+2+4+6+8)/5=4。每个作业的响应时间就是从时间片开始算起,从用户提交作业到作业第一次运行的时间。




操作系统类型

  • 大型机系统:简单批处理系统,多道程序系统,分时系统【系统效率

    • IBM AIX,IBM z/OS,HP-Unix
  • 桌面系统:个人计算机(PC)【用户方便性,响应速度】含图形化界面(GUI),多数技术沿用大型机

    • Windows,Mac Os,Liunx
  • 嵌入式系统:完全嵌入受控器件内部,为特定应用而设计的专用计算机系统。【内核较小,专用性强,系统精简,高实时性

    • 应用场景:工业控制,交通管理,信息家电,环境工程等
  • 手持(移动)系统:手持设备(资源有限),扩展功能:GPS导航,移动支付等

    • IOS,安卓
  • 分布式系统:支持分布式处理的软件系统。

  • 虚拟系统

  • 多处理系统:有多个紧密通信的处理器的系统。多个处理器共享计算机总线,时间,内存和外设等。【增加吞吐量,增加可靠性,节省资金

多核处理器:一个芯片多个核,一个核即一个处理器。
初识操作系统【一】
初识操作系统【一】



初识操作系统【一】




操作系统的操作和功能

初识操作系统【一】

双模式:为了解决软件错误或特定请求产生异常或陷阱,保证操作系统和其他程序不受故障程序的影响
双模式需要CPU支持,如果CPU有模式位,则可以在操作系统中实现双模式。
允许OS保护自身和其他系统部件,引入特权指令:可能引起系统崩溃的指令,只能运行在内核模式(用户如果要用,则系统调用)

  • 用户模式所有用户的应用程序只能在用户的应用模式下运行
  • 内核模式只能运行操作系统的程序

初识操作系统【一】
初识操作系统【一】

定时器:为了随时让操作系统获得对CPU的控制器,从而管理系统而引入的
初识操作系统【一】




操作系统的核心是运行程序,也就是如何管理CPU
一个运行中的程序被称为进程

CPU(进程)管理具体内容:

  • 创建和删除用户和系统进程
  • 暂停和恢复进程
  • 提供进程同步机制
  • 提供进程通信机制
  • 提供死锁处理机制

除了CPU,程序运行还需要内存。
内存的主要工作:

  • 内存分配
  • 内存回收
  • 地址转换
  • 共享和保护

目的是:提高内存利用率和访问速度,从而提高计算机运行效率。

初识操作系统【一】

CPU(进程)管理内存管理解决的都是程序运行问题,而文件管理是信息在计算机中的存储问题。

文件管理内容:

  • 文件系统
  • 文件逻辑结构
  • 文件物理结构
  • 目录
  • 文件检索方法
  • 文件操作
  • 空闲空间管理
  • 存储设备管理

初识操作系统【一】


I/O管理系统用来管理种类繁多的各种i/o设备,解决计算机中的信息输入和输出问题。
主要工作:设备管理和设备驱动。

初识操作系统【一】