刷新流水线
Posted mlzrq
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了刷新流水线相关的知识,希望对你有一定的参考价值。
刷新流水线
为什么需要刷新流水线
进入保护模式下,需要尽快刷新CS,SS等段寄存器。
立即跳转到32位模式,刷新流水线
进入保护模式后,需要马上跳转并刷新流水
定义代码段和数据段的选择子常量
CODE选择子: selector_code = 0x1<<3 + 000B
DATA 选择子:selector_data = 0x2<<3 + 000B
VGA 选择子: selector_vga = 0x3 <<3 + 000B
?
跳转并刷新流水,由16位模式进入32位代码模式:
[bits 16]
jmp dword selector_code:FlushPipeline
[bits 32]
;------------------
;清空流水线
FlushPipeline:
mov ax,selector_data ; 可读写的32bit
mov ds,ax
mov es,ax
mov ss,ax
mov fs,ax
mov ax, selector_vga
mov gs, ax
以上是关于刷新流水线的主要内容,如果未能解决你的问题,请参考以下文章