作者SILee (打卡上班的日子)
看板ASM
标题Re: [问题] 用C连结 ASM进入保护模式的副程式会当机
时间Tue Apr 15 23:41:22 2008
※ 引述《typeotoco (打字男)》之铭言:
: 我单独使用 masm compile 一个进入保护模式的asm程式 能正常做动
: 後来我想写成副程式让 C 去 call,但是只要一设定保护模式的 bit
: 就会当机。一直不知道怎麽办,不知道有没有人可以给我建议。
: 或是有人有空可以帮我看一下?
: 我直接把 start 的部分改成 MemSetting 这个函数了。
: http://rafb.net/p/aS7Oy058.html
: 当在最下面的地方
: 先谢谢了
这几天在写开机档时我也碰到了这个问题
我的程式在VirtualBox和QEMU下做模拟都没有问题,可以正常地执行
可是只要拿到实体PC上做测试
开机後跑到写入cr0这条指令,switch到protect mode後电脑就会自动重新开机
movl %cr0, %eax
orl $1, %eax
movl %eax, %cr0
到现在我还搞不清楚原因,不知道ASUS在BIOS里动了什麽手脚
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.59.105.115
1F:推 shane123:把整个程式贴上来看看吧.. 04/16 07:10
2F:推 zha0:把 a20 打开看看 04/23 19:35