阅读:2800回复:12
在linux下怎么调用BIOS中断????
我想调用中断0x10的2号功能,直接用 int 0x10不行,怎么调用呢?
|
|
沙发#
发布于:2003-12-01 11:43
不建议调用BIOS中断,它会影响你的程序兼容性,因为以后的BIOS与OS的唯一接口是 ACPI,其他的接口如PCI32,APM等都将不再存在。
|
|
|
板凳#
发布于:2003-11-29 12:08
了解rm和pm,就清楚为什么不能直接调用bios,关键在于中断向量表
现在的BIOS32,为什么非要2层调用呢?为了保持兼容,花费代价太大 |
|
地板#
发布于:2003-08-04 21:00
中断执行代码没有覆盖,但是中断向量被覆盖了
|
|
地下室#
发布于:2003-06-24 15:12
Linux在初始化时已经把BIOS的可执行代码覆盖掉了,所以不可能再调用BIOS中断。 覆盖了吗?怎么覆盖?执行代码在ROM中,而且Linux中对物理地址情况的了解是通过BIOS调用,怎么可能覆盖?当然,也可能是我弄错了,希望能指点在那部分代码进行覆盖的 另外:在BIOS中有一个32位的调用方法,也就是可用在保护模式的方式下进行调用,Linux 的PCI模块中,对PCI的信息读取可以采用两种方法,一种就是调用BIOS的32位调用接口,另一种是自己读取配置空间,所以我认为是可以调用 的 不过我针对你的写屏要求,我不知道你为什么要在某一个列写东西,比较奇怪,但是可以采用terminfo的方法写终端 有分吗??? |
|
5楼#
发布于:2003-06-20 13:38
Linux在初始化时已经把BIOS的可执行代码覆盖掉了,所以不可能再调用BIOS中断。
|
|
6楼#
发布于:2003-06-20 09:41
内核中中断向量表在哪? :D
|
|
7楼#
发布于:2003-06-18 18:17
linux下有一个库叫lrmi的,可以调用时模式中断。具体用法见google
|
|
|
8楼#
发布于:2003-06-18 11:59
在linux下,想在屏幕上的20行,40列,打印一个\".\",用汇编怎么实现呢?
|
|
9楼#
发布于:2003-06-17 17:34
linux本身提供了那些中断呢?那里可以查到。
|
|
10楼#
发布于:2003-06-17 13:14
linux无法调用bios中断。
|
|
11楼#
发布于:2003-06-17 12:53
应该会出问题的。
bios是real mode,linux工作在protect mode。而且linux的中断向量和bios的int 10H完全不是一码事 |
|
|
12楼#
发布于:2003-06-17 11:21
是不是要修改系统的中断向量表(是系统的那个,不是咱们一般申请中断的那个)?在进入do_IRQ函数前要先查询这个中断向量表的
|
|
|