操作系统概念 第一章笔记
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.)
以上是关于操作系统概念 第一章笔记的主要内容,如果未能解决你的问题,请参考以下文章