操作系统-第一章-导论
一.操作系统什么
1.操作系统的目的
①管理计算机硬件的程序
②用户和计算机硬件的中介
③核心目标——运行用户程序
④面向用户——更方便使用计算机
⑤面向系统——更高效使用计算机:OS是资源分配器(管理所有资源),OS是控制程序(管理用户程序运行)
Q1:OS具体是管理哪些资源?
2.操作系统的定义
PS:没有一个可广泛接收的定义
- 极大化定义:当你预定一个操作系统时零售商所装的所有东西
- 随系统不同而变化很大
- 极小化定义:内核才是操作系统
- 一直运行在计算机上的程序
- 其他程序为系统程序和应用程序
- 内核不运行则计算机无法运行
3.计算机硬件结构
- 一个或多个CPU和若干设备控制器
- 各硬件通过公用总线相连接,总线提供了共享内存的访问
- CPU与设备控制器可并行执行,并竞争内存
- 每个设备控制器负责一类特定的设备
- 每个设备控制器有一个本地缓冲
- CPU在内存和本地缓冲之间传输数据
- I/O控制器从设备到本地缓冲之间传输数据
- 协作:控制器通过调用中断通知CPU完成操作
- 操作系统是中断驱动
- 中断:指当出现需要时,CPU暂时停止当前程序的执行,转而执行处理新情况的程序和执行过程
- 中断号:外部设备进行I/O操作时产生的中断信号,发送给CPU
- 中断向量:中断服务程序的入口地址
- 中断服务程序:执行中断处理的代码
4.操作系统启动
引导程序:
- 打开电源或重启时被装载
- 通常大多数操作系统存储一个极小的自举程序在ROM或EPROM中,称为固件(Firmware)
- 极小的自举程序从磁盘上调入完整的引导程序
- 磁盘上的引导程序可以轻松改写,避免了将引导程序存储在ROM中而改写时改变ROM
- 初始化所有硬件
- 负责装入操作系统内核并开始运行
二.操作系统的结构
1.简单批处理系统
- 自动作业调度
- 自动从一个运行完的作业转换到下一个作业
- 常驻监控程序
- 控制作业传输
- 调度作业运行
- 单道程序设计:在内存一次只能允许一个程序进行运行,在这次程序运行结束前,其它程序不允许使用内存
2.批处理系统
- 批处理:用户将一批作业提交操作系统后就不再干预,由操作系统控制它们自动运行
- 批处理操作系统:
- 采用批量处理作业技术的操作系统
- 单道批处理系统
- 多道批处理系统
- 特点:
- 不具有交互性
- 提高CPU的利用率
3.多道程序设计
- 定义:在内存中同时存在多道作业,在管理程序控制下相互穿插运行
- 通过作业调度选中一个作业并运行
- 当该作业必须等待时(如等待I/O),切换到另一个作业
- 目的:提高CPU的利用率,充分发挥计算机系统部件的并行性
- 现代操作系统广泛采用多道程序设计技术
4.分时系统
- 是多道程序设计的延伸
- Unix是著名的分时操作系统
- 定义:
- 一种联机的多用户交互式的操作系统
- 一般采用时间片轮转的方式使一台计算机为多个用户服务
- 在单位时间内,每个用户获得一个时间片并运行
- 保证用户获得足够小的响应时间,并提供交互能力
- 原理:
- 若某个作业在分配的时间片用完之前计算还未完成,该作业就暂时中断,等待下一轮;此时,处理机让给另一个作业使用
- 每个用户好像独占一台计算机(时间片太小,用户分辨不出)
- 作业分类:
- 批处理作业
- 交互作业(响应时间<1s,多道程序设计技术)
- 时间片:
- 把一段CPU时间按照固定单位进行分割,每个分割得到得时间段称为一个时间片
- 每个任务依次轮流使用时间片
三.操作系统类型
1.大型机系统
- 简单批处理系统
- 多道程序系统
- 分时系统
- 目标:系统效率
2.桌面系统
- 个人计算机(PC)
- 设计目标:用户方便性,响应速度
- 图形化界面(GUI)
- 多数技术沿用大型机
3.嵌入式系统
- 完全嵌入受控器件内部,为特定应用而设计的专用计算机系统
- 随着单片机的出现而出现
- 特点:
- 内核较小、专用性强、系统精简、高实时性
- 应用场合:工业控制、交通管理、信息家电、家庭智能管理、POS网络、环境工程
4.手持系统
- 手持设备,如手机、平板
- 资源有限
- 扩展功能:GPS导航、移动支付、位置服务
5.分布式系统
- 支持分布式处理的软件系统,又称松耦合系统
- 通过网络通信: TCP/IP
- 网络操作系统
- 没有真正意义上的分布式操作系统
- 例:客户机-服务器系统、P2P系统
6.多处理器系统
- 有多个紧密通信的处理器的系统
- 并行系统(Parallel System)
- 紧耦合系统(Tightly Coupled System)
- 多个处理器共享计算机总线、时间、内存和外设等
- 优点:
- 增加吞吐量
- 节省资金
- 增加可靠性
- 分类:
- 对称多处理(SMP):①每个处理器运行操作系统的相同副本②许多进程可以立即运行不会降低性能③多数现代操作系统支持SMP
- 非对称多处理(ASMP):①各个处理器不对等②一个主处理器,若干从处理器③主处理器为从处理器安排任务④一般用于特定的场景,如游戏、通信等⑤不适合PC,但适合手机等要求功耗的设备
7.集群系统
- 通过专用网络连接一群计算机,把这些计算机虚拟化为一台有超强计算能力的计算机给用户使用
- 优点:
- 高性能
- 低成本
- 高可扩展性
- 高可靠性
四.操作系统的操作和功能
1.操作系统的操作
1.双模式
- 允许OS保护自身和其他系统部件
- 用户模式和内核模式
- 由硬件提供模式位
- 特权指令:可能引起系统崩溃的指令,只能运行在内核模式
- I/O控制、定时器管理、中断管理、获取事件指令等为特权指令
- 用户通过系统调用运行特权指令;若在用户模式下试图执行特权指令,那么硬件并不执行该指令,而是认为该指令非法,并将其以陷阱形式通知操作系统
2.I/O和内存保护
- I/O保护:
- 防止用户程序执行非法I/O
- 解决方法:所有I/O指令都是特权指令
- 用户程序通过系统调用进行I/O操作
- 内存保护:
- 防止内存非法访问
- 解决方法:存储保护机制
- 硬件支持
3.定时器
- 如操作系统不能获得CPU控制权,就无法管理系统
- 用户程序死循环
- 用户程序不调用系统调用
- 解决方法:定时器
- 在一段时间后发生中断,CPU控制权返回操作系统
- 固定时间和可变时间定时器
- 利用时钟和计数器实现
2.操作系统的功能
1.进程管理
- 操作系统的核心目标:运行程序
- 进程:运行中的程序
- CPU/进程管理:对CPU进行管理
- 具体内容:
- 创建和删除用户和系统进程
- 暂停和恢复进程
- 提供进程同步机制
- 提供进程通信机制
- 提供死锁处理机制
2.内存管理
- 程序运行必须的存储设备
- CPU只能直接访问寄存器、高速缓存和内存
- 处理前和处理后的所有数据都在内存
- 执行的指令都在内存
- 内存管理:提供内存的分配、回收、地址转换、共享和保护等功能
- 提高内存利用率
- 提高内存访问速度从而提高计算机运行效率
3.文件管理
- 解决信息在计算机中存储问题
- 以文件为单位,以目录为组织方式构建文件系统
- 内容:
- 文件逻辑结构
- 文件物理结构
- 目录
- 文件检索方法
- 文件操作
- 空闲空间管理
- 存储设备管理
4.I/O系统管理
- 管理种类繁多的各种I/O设备,解决计算机中信息的输入和输出问题
- 关键:设备无关性(独立性) :
- 所有物理设备按照物理特性抽象为逻辑设备
- 应用程序针对逻辑设备编程
- 应用程序和物理设备无关
- 内容:
- 设备管理
- 设备驱动
作者:方知有
Motto: 热爱可抵岁月漫长
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须在文章页面给出原文连接,否则保留追究法律责任的权利。
所有评论和私信都会在第一时间处理,如有问题或建议,请多多赐教!
支持博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是作者坚持原创和持续写作的最大动力!