没有合适的资源?快使用搜索试试~ 我知道了~
012221034890_0操作系统笔记1
需积分: 0 0 下载量 57 浏览量
2022-08-03
12:13:07
上传
评论
收藏 17.96MB PDF 举报
温馨提示
试读
113页
1.互斥共享方式 在一个时间段内,资源只能一个进程访问 比如电脑摄像头不能微信 qq 同 2.同时共享方式 在同一时间段内,资源可以多个进程访问 比如 QQ 微
资源详情
资源评论
资源推荐
操作系统笔记
梗概:
一一一 操作系统引论
一一一 进程的控制与同步
一一一 调度与死锁
一一一 内存管理
一一一 设备管理
一一一 文件管理
操作系统引论
计算机发展
最早的计算机,依靠打孔的纸袋,由于运算速度远大于指代输入的速度,导致效率不高
第一代 单道批处理系统
将纸袋上的内容读到磁带里面,计算机直接从磁带上读取数据,并且输出到磁带上
(磁带比纸袋快很多,导致 cpu 等待输入的时间少很多)
从磁带到计算机的过程中有一个监控器,这个也是操作系统的雏形。
缺点:不能解决效率问题 一次只能运行一个程序,串行执行,解决方法:多个作业重叠
多道批处理系统
计算机一次会从磁带中读入多个程序,并且程序会并发执行,需要中断技术进行交替运行多
个程序。
中断 驱动 sequence
操作系统与普通程序不同 常驻内存 保护
Batch System 批处理系统 在程序运行之前组织多个程序
Multiprogramming 多道程序设计 同时运行多个程序
采用类似流水线技术,即在设备空闲的时候执行另一个程序
分时操作系统
解决多道批处理系统没有人机交互
计算机以时间片为单位轮流为用户服务,并且在时间片的过程中计算机是可以与用户进行
人机交互。
交互式分时
可剥夺式调度 程序被动的放弃 CPU
文件系统
优先级调度
缺点:不具有优先处理紧急任务的能力
实时操作系统
优先相应一些紧急的任务,及时性和可靠性
第三代 个人计算机
多任务 多处理能力
动态 process
静态 各种资源
PCB Process Control Block
进程(process):一个正在运行的程序 program。
Program 被动实体
Process 主动实体
操作系统的四个特征
并发 共享 虚拟 异步
并发:指两个事件在同一时间间隔内发生,这些时间上宏观上是同时发生,围观上交替发生
(区分并行:并行,指两个时间同时发生 )
CPU 4 核可以进行并行运行 分时系统是并发
共享:系统资源可以提供内存中多个并发程序同时使用
1.互斥共享方式 在一个时间段内,资源只能一个进程访问 比如电脑摄像头不能微信 qq 同
时用。
2.同时共享方式 在同一时间段内,资源可以多个进程访问 比如 QQ 微信共同传输文件,它们
快速切换的访问硬盘
虚拟:把物理上的实体对应为若干个逻辑上的对应物
1.比如 60G 的游戏可以在 4G 的内存上运行,让用户认为电脑内存无限大(空分复用技术)
2.虚拟 CPU 技术 单核 CPU 实际上可以运行很多个程序 在用户看来就有很多个处理器在为
自己服务(时分复用技术)
异步性:在多道程序环境下,允许多个程序并发执行,但由于资源有限,进程执行不是一贯到
底而是走走停停,以不可预知的速度推进。
即可以并行的处理指令
指令
我们平时写的代码(高级语言代码)可以翻译成多条指令,每一条指令对应 cpu 做的一些事
情。指令就是 cpu 能识别执行的最基本命令
有些指令”人畜无害”比如加减乘除的指令
有的指令权限很高,比如内存清零指令,用户不能随意使用这样的指令
所以将指令分成两种
1. 特权指令 普通用户不能使用
2. 非特权指令 普通运算指令 用户可以使用
处理器的两种状态
1. 用户态 只能执行非特权指令 user
2. 核心态 可以执行特权指令 非特权指令 kernel
这两种状态的切换由程序状态字寄存器控制 如果为 0 是用户态 为 1 是核心态
两种程序
1.内核程序 存储系统核心内容,既可以执行特权指令和非特权指令,运行在核心抬
2.应用程序 普通应用程序,只能执行非特权指令,运行在用户态
操作系统内核
操作系统可以细分为两个部分,接近硬件的部分称为内核 kernel,远离硬件的为非内核部分
内核:时钟管理,中断处理,原语(设备驱动,cpu 切换 具有原子性 要么不运行,要么一直运
行)最接近硬件 |进程管理,设备管理,存储器管理
操作系统体系结构 大内核+微内核
大内核:如果将进程管理,设备管理,内存管理等等内容都作为草错系统主要内容,运行在核
心态就叫大内核,由于不需要在核心态与用户态之间频繁切换,所以性能高,但是结构混乱,
代码量大
微内核:只包括内核的底层部分 比如时钟 原语 中断处理等等,优点是利于维护,但缺点是
要频繁在核心态和用户态之间切换,性能比较低
进程管理:
进程:正在运行的进程(动态性)
多道程序:
PCB1
PCB2
程序段
数据段
程序段 1
数据段 1
程序段 2
数据段 2
操作系统在每一个程序开始执行执行之前创建 PCB 数据结构 Process Control Block
PCB 存放进程的信息 比如代码的地址 PID UID 等等 方便操作系统管理进程、
只要与操作系统进程管理的信息肯定就存在于 PCB 当中
进程的实体映像(PCB+程序段+数据段)
一般来说 进程实体可以简称为进程 创建一个进程就是创建一个进程实体
进程是进程实体运行的过程 是动态的 进程实体是进程运行需要的数据是静态的
进程的组织
链接方式 操作系统根据进程的状态将 PCB 分成多个队列,并且操作系统持有指向各个队列
的指针
1. 执行指针 ->指向正在被 CPU 执行进程的 PCB
2. 就绪队列指针->指向当前出于就绪态的进程的 PCB
3. 阻塞队列指针->指向当前出于阻塞状态进程的队列
中断系统
外部设备有 Device controller 控制,并且这些控制器与 cpu 通过总线连接,这些控制器主要
作用是在其所控制的外部设备和 buffer 缓冲区之间传输数据
每一个外部设备都有 driver 即驱动,这些驱动将复杂的外部设备信号统一成统一的
(uniform)接口提供给操作系统。
中断,当接收到外部设备输入的时候,设备驱动向驱动控制器里面 load 一个 register 登记,
这里面记录了控制器需要做的事情,这时候 驱动器会在外部设备与 buffer 之间作数据交换,
一旦数据交换完成,那么 device controller 就会通知驱动程序,驱动程序再继续下一步操作,
这个”通知”的方法就是 中断 interrupted
Interrupt 通过数据总线发送,受到中断的时候,cpu 记录下当前执行指令的地址,处理完中断
剩余112页未读,继续阅读
以墨健康道
- 粉丝: 25
- 资源: 307
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0