关于compress/head.S中的几个问题!
诸位大侠:
幸会!幸会!
关于compress/head.S文件中的几个问题想请教一下!
问题一: 这段代码到底什么意思,如何就能测试出A20是Enable的呢?
1: incl %eax # check that A20 really IS enabled
movl %eax,0x000000 # loop forever if it isn't
cmpl %eax,0x100000
je 1b
问题二: 首先,BSS段在代码中到底是干什么用的?其次,为什么要清除BSS段?
/*
* Clear BSS 清除解压程序的BSS段
*/
xorl %eax,%eax
movl $ SYMBOL_NAME(_edata),%edi
movl $ SYMBOL_NAME(_end),%ecx
subl %edi,%ecx
cld
stosb
先谢了,实在是悟性有限,还请大侠指点!
Crane Zhou
2002.02.05