Chinaunix
标题:
Linux下如何调用bios中断
[打印本页]
作者:
shitou254
时间:
2011-11-08 17:50
标题:
Linux下如何调用bios中断
我是说用c,
看到下边的汇编代码。想改成用c的。 需要调用bios中断。
.code16
.section .data
msg:
.ascii "Hello World!"
.section .text
.globl _start
_start:
mov %cs, %ax
mov %ax, %ds
mov %ax, %es
mov $msg, %ax
mov %ax, %bp
mov $12, %cx
mov $0x1301, %ax
mov $0x000c, %bx
movb $0x00, %dl
int $0x10
idle:
jmp idle
复制代码
作者:
cjaizss
时间:
2011-11-08 20:05
……不要把linux当成和DOS一样的bootloader
作者:
shitou254
时间:
2011-11-09 10:01
就是想用gcc编译调用bios中断的c程序。 难道这不能吗?
作者:
狗蛋
时间:
2011-11-09 10:20
……不要把linux当成和DOS一样的bootloader
cjaizss 发表于 2011-11-08 20:05
bootloader经典
作者:
astezheng
时间:
2011-11-09 10:22
这个关键要看你所调用的bios中断是否支持保护模式下调用。如果是实模式下的中断的话,那是没有办法调用的,因为寻址方式都不一样,而且那些实模式中断在不在内存中还是问题呢。
但是确实存在保护模式下可以调用的bios代码,例如电源管理的一些bios服务,就可以在保护模式下调用。
作者:
方兆国
时间:
2011-11-09 12:46
回复
1#
shitou254
在C语言里插入汇编代码貌似可以
欢迎光临 Chinaunix (http://bbs.chinaunix.net/)
Powered by Discuz! X3.2