第一章 操作系统的概述

第一章 操作系统的概述

为什么要有操作系统

  1. 用户几乎不可能使用裸机。
  2. 计算机硬件只能识别0.1二值机器码。
  3. 机器码直观性差,容易出错,难于交流。
  4. 因此,通常在计算机硬件之上会覆盖一层软件,以方便用户使用计算机硬件。

什么是操作系统?

  1. CPU是计算机硬件的核心,是计算机系统的内脏。
  2. 操作系统则是计算机软件的核心,是计算机系统的大脑
  3. 操作系统是整个计算机系统的控制中心,是计算机系统中首要的、最重要的、最复杂的系统软件。
  4. 操作系统管理计算机硬件的程序
  5. 操作系统在计算机用户和计算机硬件之间起媒介作用的一种程序

系统部件的抽象观点操作系统的结构图

注意:操作系统处于硬件之上的第一层软件,是对硬件的首次扩充,又是其他软件运行的基础
comouter hardware: 提供基本的运算资源(CPU,内存,I/O 设备)
Operating system:在各种应用程序和用户之间控制与协调对硬件的使用。
Applications programs:定义解决用户问题的资源使用方式(编译、数据库、视频游戏、事务程序)
User :用户(人,机,其他计算机)

操作系统的目标

  1. 执行用户程序并使用户问题更易解决
  2. 是计算机系统更易使用
  3. 以一种有效率的方式使用硬件

操作系统的其他定义

  1. 资源分配者:管理和分配资源
  2. 控制程序:控制用户程序的运行和I/O设备的操作
  3. 内核:在全时运行的一个程序(其他的是应用)

操作系统的作用

  1. 计算机硬件、软件资源的管理者
  2. 用户使用计算机硬件、软件的接口
    也可以这么理解对用户----接待员对系统-----管家婆

操作系统的发展

人工操作方式

工作方式
编程语言:机器语言
I/O:纸带或卡片

缺点
①: 用户独占全机,独占系统的全部硬件资源,设备利用率低
②: COU等待用户: 手工装入 / 卸取纸带或卡片

主要矛盾
人机矛盾:人工操作方式与及机器利用率的矛盾
CPU与 I/O之速度不匹配的矛盾

提高效率的途径

  1. 批处理
  2. 脱机I/O
脱机I/O方式

概念:使用磁带作为输入/输出的中介,这种具体的输入/输出不需要在主计算机上进行的方式称 “脱机输入/输出”
脱机I/O
优点:

  1. 减少了CPU的空闲时间
  2. 提高了I/O速度
单批道处理系统

概念:由监督程序将磁带上的第一个作业装入内存,并把运行控制权交给该作业;当该作业处理完成时,又把控制权交还给监督程序,再由监督程序把磁盘上的第二个作业调入内存。

在这里插入图片描述

注意: 它的内存中始终保持一道作业。

优点:减少了CPU的空闲时间,提高了主机CPU和I/O设备的使用效率,提高了吞吐量。

缺点:CPU和I/O设备使用忙闲不均。资源得不到充分利用
忙闲不均”的意思是CPU运行时,I/O设备就停止;I/O运行时,CPU就停止。

运行特性:

  1. 顺序性: 磁带上的各道作业是顺序的进入内存,各作业的完成顺序与他们进入内存的顺序相同。
  2. 单道性:内存中仅有一道程序在运行。
  3. 自动性
多道批处理系统

多道批和单道批的区别

多道的概念:内存中同时存放几个作业,使之都处于执行的开始点和结束点之间多个作业共享CPU、内存、外设等资源。

设计目的:利用多批道处理提高资源的利用率

通道的概念:是一种专用部件,负责外部设备和内存之间信息的传输。

中断:指主机接到外界的信号(来自CPU外部或内部)时,立即中止原来的工作,转去处理这一外来事件,处理完后主机又回到原来工作点继续工作

工作机制:多道通过组织作业使得CPU总在执行其中一个作业,从而提高了CPU的利用率

运行特性

  1. 多道性:内存中驻留多道程序并发执行,从而有效的提高了资源利用率和系统吞吐量
  2. 无序性:作业的完成顺序与他进入内存的顺序之间无严格的对应关系
  3. 调度性:作业调度,进程调度。

优点

  1. 资源利用率高:CPU,内存,I/O设备。
  2. 系统吞吐量大。

缺点

  1. 无交互能力,用户响应时间长。
  2. 作业平均周期时间长。

多道程序对OS特点的要求

  1. 存储管理:系统必须为若干作业分派空间
  2. CPU调度:系统必须在就绪作业挑选
  3. 资源竞争和共享:,满足各道程序运行的需要,提高处理机的效率
  4. 设备分配:采取适当的策略来分配系统中的I/O设备,方便用户对设备的使用。
  5. 系统提供I/O程序
  6. 文件的组织和管理问题:有效的组织存放在系统中的大量的程序和数据,方便用户使用。
分时系统
分时系统-交互式计算

两种实现方式:

1.多个用户分时:

单个用户使用计算机的效率低,因而允许多个应用程序同时在内存中,分别服务于不同的用户。有用户输入时由CPU执行,处理完一次用户输入程序暂停,等待下一次用户输入 – 时走时停

2.前台和后台程序分时:

后台程序不占用终端输入输出,不与用户交互 – 现有的图形用户界面(GUI),除当前交互的程序(输入焦点)之外,其他程序均作为后台。

注意: 通过按时间片分配:各个程序在CPU上执行的轮换时间。
分时系统
及时接收:配置一个多路卡(作用是实现分时多路复用),即主机以很快的速度周期性的扫描各个终端,在每个中端处停留很短的时间,来接收从终端发来的数据。
还需要为每个终端配置一个缓冲区,用来缓存用户键入的命令(或数据)。
及时处理:用户键入命令,能对自己的作业及其运行及时的实施控制或进行修改。所以各个用户的作业都必须驻留在内存中,频繁的获得处理机运行。

分时系统实现人机交互的工作机制

  1. 作业直接进入内存
  2. 每个作业一次只运行很短的时间
  3. 分时技术:把CPU的相应时间分成若干个大小相等(或不等)的时间单位,称为时间片,每个终端用户获得CPU后开始执行,当时间片到,该用户程序暂停运行,等待下一次运行

分时系统的特点

  1. 多路性:众多联机用户可以同时使用同一台计算机。
  2. 独占性:各终端用户感觉到自己独占了计算机。
  3. 交互性:用户与计算机之间可进行“会话”
  4. 及时性:用户的请求能在很短时间内获得响应。
实时系统

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

实时任务的类型:

  1. 周期性实时任务和非周期性实时任务:
    周期性实时任务: 指定周期循环执行,周期性的控制某外部设备。
    非周期性实时任务无明显的周期性,但必须联系着一个截止时间(最后期限)------- 开始截止时间(某任务在某时间前必须执行)和完成截止时间(某任务在某时间前必须完成)
  2. 硬实时任务和软实时任务:
    硬实时任务:系统必须满足任务截止时间的要求。错过截止时间,会发生难以预测的后果。
    软实时任务:也会联系一个截止时间,但并不严格,错过了截止时间,也无太大影响。

实时任务的特点:

  1. 多路性: 系统周期性的堆多路现场信息进行采集,对多个对象或对个执行机构进行控制。
  2. 独立性:对信息的采集和对对象的控制是彼此不干扰的。
  3. 及时性:是以对控制对象所要求的的截止时间来确定的。
  4. 交互性:只适用于特定的专用服务程序或用户发送特定的命令。
  5. 可靠性:采取了多级容错措施来保障系统的安全性及数据的安全性。
  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
现代操作系统第四版是一本经典的操作系统教材,第三章主要讲解了进程的概念、进程控制块、进程状态以及进程调度等内容。以下是第三章的主要内容概述: 1.进程的概念:进程是程序在执行过程中分配和管理资源的基本单位,每个进程都有自己的地址空间、数据栈、指令计数器、寄存器和文件描述符等。 2.进程控制块:进程控制块是操作系统内核中用于管理进程的数据结构,包含了进程的状态、进程ID、优先级、程序计数器、寄存器、内存分配情况、打开文件列表等信息。 3.进程状态:进程状态包括运行态、就绪态、阻塞态和创建态等,进程在不同状态之间转换,操作系统根据进程状态来进行进程调度。 4.进程调度:进程调度是操作系统内核中的一个重要模块,负责决定哪个进程可以获得CPU的使用权,进程调度算法包括先来先服务、短作业优先、时间片轮转等。 5.进程同步:进程同步是指多个进程之间的协作,包括互斥、信号量、管程等机制,用于保证多个进程之间的正确性和一致性。 6.进程通信:进程通信是指多个进程之间的信息交换,包括共享内存、消息队列、管等机制,用于实现进程之间的数据传输和共享。 以下是现代操作系统第四版第三章的相关代码示例: ```c #include <stdio.h> #include <stdlib.h> #include <unistd.h> #include <sys/types.h> #include <sys/wait.h> int main() { pid_t pid; int status; pid = fork(); if (pid < 0) { printf("Fork error\n"); exit(1); } else if (pid == 0) { printf("Child process\n"); exit(0); } else { printf("Parent process\n"); wait(&status); printf("Child exit status: %d\n", WEXITSTATUS(status)); } return 0; } ```

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

☞^O^☜♞

你的鼓励将是我创作的最大动力

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

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

打赏作者

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

抵扣说明:

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

余额充值