NOS 之 阶段性整理

又断更了一个多月,现在应该是完全转移到自制编程语言上了,现在的话就是转置键盘,尽快生成命令行。

移出去的代价,就是必须用高级语言写,这尤其不适合特殊汇编代码,这意味着你还要封装这些代码,但是呢,emmm,我希望除了基本的汇编封装,其他的都放到外面,只不过这时候先做紧急的,对吧。

寄存器是否可以看中断?

RPL: Requested Privilege Level, 请求特权级
DPL: Descriptor Privilege Level,描述符特权级
CPL: Current Privilege Level,当前特权级,有这个东西,现在是0,占用2个bit, 取值范围0~3, 值越小,特权级越高

EFL是flag寄存器

可以info irq,info pic,这个是关键。

现在能正常写进去,但关键是,中断并未打开,调这个bug

IRQ 为 Interrupt ReQuest的缩写,中文可译为中断请求。因为计算机中每个组成组件都会拥有一个独立的IRQ,除了使用PCI总线的PCI卡之外,每一组件都会单独占用一个 IRQ,且不能重复使用。

PIC,可中断编程控制器,就是初始化这个。

IRR是中断请求控制器。它保存从IR0-IR7来的中断请求信号。某一位有1就表示相应引脚上有中断请求信号。中断响应后,该IR输入线上的请求信号应该撤销。

ISR是中断服务寄存器。它用于保存正在服务的中断源。在中断响应时,判优电路把发出中断请求的中断源中优先级最高的中断源所对应的位设置为1,表示该中断源正在处理中。ISR某一位置1课阻止与它同级和更低优先级的请求被响应,但允许更高优先级的请求被响应。

IMR是中断屏蔽寄存器。它用于存放中断控制字,其中为1的位表示对应的中断请求输入将被屏蔽。
但为什么就没有呢?用什么办法可以探测一下呢?

 

 

 

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值