关于 x86:Grub 和进入实模式(低级汇编语言编程)

关于 x86:Grub 和进入实模式(低级汇编语言编程)

Grub and getting into Real Mode (low-level assembly language programming)

我一直在开发一个玩具操作系统,并且一直使用 grub 作为我的引导加载程序。最近在尝试使用VGA时,我发现我无法使用硬件中断。我发现这是因为我被 grub 置于保护模式。

有没有人知道如何在不必摆脱 grub 的情况下回到实模式?


你的意思是 writeport(value,$3c9)?

1
2
mov 03c9,AH
out value,AL

或类似 INTEL asm(NASM)

3c9
3c8
IIRC 是 VGA 寄存器。


如果您使用 GRUB 作为引导加载程序,您可以使用 intcall(在 COMBOOT API 中指定)在您的情况下调用 BIOS 函数 int 0x10 以访问 VESA VBE。

但如果您需要访问 VGA 硬件寄存器,这将无济于事。


推荐阅读

    linux设备加载命令行?

    linux设备加载命令行?,设备,系统,信息,数字,首页,软件,密码,终端,文件,键盘,L

    linux控制台编程命令?

    linux控制台编程命令?,系统,工具,环境,命令,名称,标准,不了,工作,发行,基础,s

    linux编程常用命令?

    linux编程常用命令?,系统,工作,信息,命令,地址,管理,工具,网络,基础,目录,lin

    linux命令行加载中文?

    linux命令行加载中文?,名称,系统,不了,传播,网上,状态,管理,中文,终端,命令,L

    linux启动加载命令行?

    linux启动加载命令行?,服务,系统,数字,首页,终端,环境,命令,方法,脚本,文件,

    linux加载库的命令?

    linux加载库的命令?,系统,地址,信息,设备,标准,服务,命令,名字,工具,首页,lin

    linux加载驱动命令6?

    linux加载驱动命令6?,信息,名称,设备,系统,电脑,软件,材料,下来,命令,权限,li

    linux加载过滤命令?

    linux加载过滤命令?,数据,系统,工具,标准,官网,灵活,最新,命令,文件,文件名,l

    linux汇编语言命令?

    linux汇编语言命令?,系统,地址,代码,数据,网络,平台,平均,位置,灵活,工作,汇

    linux汇编语言命令?

    linux汇编语言命令?,系统,地址,代码,数据,网络,平台,平均,位置,灵活,工作,汇

    编程解析linux命令?

    编程解析linux命令?,系统,标准,基础,设备,发行,电脑,工具,密码,名字,适当,如

    linux设备加载命令?

    linux设备加载命令?,系统,设备,信息,电脑,第一,命令,文件,分区,磁盘,详细信

    linux命令行图形编程?

    linux命令行图形编程?,系统,不了,情况,密码,工具,地方,百度,管理,图形界面,

    linux网卡加载命令行?

    linux网卡加载命令行?,系统,地址,代码,网络,设备,电脑,名称,网卡,技术指标,

    linux编程执行命令?

    linux编程执行命令?,电脑,系统,环境,命令,基础,发行,工具,代码,地址,名称,lin

    linux命令刷新加载?

    linux命令刷新加载?,系统,下来,工具,网上,命令,终端,环境变量,以下,文件,路

    linux终端命令行编程?

    linux终端命令行编程?,系统,工作,命令,终端,概念,时间,第一,代码,发行,地方,L

    加载linux内核的命令?

    加载linux内核的命令?,系统,信息,地址,电脑,发行,设备,简介,平台,发展,基础,l

    linux编程调用命令?

    linux编程调用命令?,系统,标准,管理,工作,基础知识,情况,环境,设备,基础,首

    linux编程所需的命令?

    linux编程所需的命令?,工作,地址,档案,系统,命令,管理,标准,信息,目录,文件,L