OS ##处理器管理

南大OS

处理器管理

1.处理器与寄存器

用户可见寄存器:
    数据的(ax,bx),地址的(),控制与状态(pc)寄存器

2.指令与处理器模式

机器指令:操作码+操作数
指令执行过程:CPU根据PC取出指令,放入IR(指令暂存器),译码,
    发出各种控制命令,执行微操作,完成一条指令
指令执行周期与指令流水线:
特权指令:只能被操作系统使用的,与计算机核心资源相关的指令。
处理器模式位:比如0状态模式(内核)可以执行所有指令
模式切换:中断、异常或者系统异常触发模式的切换

3.中断:暂时中止,转去执行相应事件处理后,继续执行

中断驱动:中断(广义)是激活操作系统的唯一方式
狭义中断:来源于处理器之外的中断事件
异常:由当前指令引起的中断事件
系统异常:执行系统调用而进入内核态
中断源:
    1. 硬件故障
    2. 程序性
    3. 系统调用
    4. io状态
    5. 外部设备

4.中断系统:处理中断事件的系统,硬件+软件

中断响应处理:在指令周期中加入一个检查中断的微操作,以响应中断
中断装置:发现并响应中断的硬件装置,一般有多种且实现方式不一
中断控制器:CPU中一个控制部件,中断线路+中断寄存器
    由外部改变寄存器,cpu检查到后,交给os处理中断
陷阱与系统陷阱:指令执行出现异常后,os处理中断
中断响应过程:
    1发现中断,提出中断请求
    2中断当前,保存现场
    3转向os中断处理程序
中断处理程序:
    保存未被硬件保存信息
    处理
    恢复现场
    返回或者进程调度
中断屏蔽:通过屏蔽位不处理某些中断
优先级:有优先度的中断处理
中断嵌套处理:

5.进程:被执行的程序

状态模型:就绪,运行,等待(占有资源,等待另一部分)
进程挂起:与等待状态不同,不具备任何资源

6.多线程:调度的最小单位

基本概念
单线程进程结构:一个资源管理,一个执行序列-线程
多线程:多个执行序列共享进程资源
多线程技术:并发程序设计
KLT和ULT
KLT:内核级多线程,物理并行性问题(cpu高利用率)
    进程的一个线程被阻塞,另一个就占据cpu
    进程的多个线程实现在多核cpu并行,同一进程同时占据多个cpu
    优化内核:OS本身通过多线程实现并行
    系统调度管理开销大,需要频繁模式切换
ULT:用户级多线程,如java语言级线程,逻辑并行性问题(对cpu利用
率并没有高要求)
    由线程管理库实现调度,内核不知道线程存在
    不能利用多处理器的优点,OS还是以进程调度,所以一个同时只能有一个线程占    据cpu
    一个线程阻塞意味着整个进程阻塞
Jacketing技术:ULT的进程管理->线程管理
    把阻塞式系统调用改造成非阻塞式的
    当线程陷入系统调用时,执行jacketing程序由jacketing  程序来检查资源使用情况,以决定是否执行进程切换 或 传递控制权给另一个线程
多线程的混合策略
线程库实现用户级到内核级的绑定
综合KLT和ULT的优点
线程状态
KLT:系统调度
    就绪->运行->阻塞
ULT:用户调度
    活跃态的线程对应到KLT

7.处理器调度

调度层次
高级调度:进程进入就绪态或挂起态(等待资源)
中级调度:挂起态到就绪态,进程能否交换入主存
低级调度,处理器调度:进程三态转换
处理器调度算法
算法指标
    cpu利用率,响应时间,周转时间,吞吐量,公平性
优先级调度
    抢占式
    非抢占式
    短作业优先
    剩余时间优先
    响应比优先:等待时间/估算工作时间
    先来先服务
时间片轮转法
    合适长度的时间片500ms左右
分级调度算法
    多个不同优先级的进程队列,32个到128个
    高级的队列时间片短,一旦超过时间片加入到低级队列中
彩票调度
    概率调度,命中彩票的进程获得cpu
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值