【我所认知的BIOS】->反汇编BIOS之Bootblock(10)
-- 基本的内存检测copy BIOS to RAM
By Lightseed
6/28/2010
1、BIOS的主流程
BIOS执行到这里,bootblock任务基本完成。内存初始化好了以后,为了能够安全地把BIOS copy到内存中,还需要做一些安全性的检测呀什么的。让我们来继续往下看吧。
图1 BIOS主流程
2、Copy BIOS之前test基本内存
废话不用多说,让我们来看看反汇编出来的代码吧。
_F000:E3B5 ;Test first 256Kb memory , Send endless beep if DRAM is bad
_F000:E3B5
_F000:E3B5 loc_FE3B5: ; CODE XREF: _F000:E3E7j
_F000:E3B5 mov es, dx
_F000:E3B7 assume es:seg000
_F000:E3B7 cld
_F000:E3B8 mov cx, 2000h
_F000:E3BB xor di, di
_F000:E3BD repe stosd
_F000:E3C0 not eax
_F000:E3C3 mov cx, 2000h
_F000:E3C6 repe stosd
_F000:E3C9 not eax
_F000:E3CC mov cx, 2000h
_F000:E3CF xor di, di
_F000:E3D1 repe scasd
_F000:E3D4 jnz Error_Beep_Out
_F000:E3D6 not eax
_F000:E3D9 mov cx, 2000h
_F000:E3DC repe scasd
_F000:E3DF jnz Error_Beep_Out
_F000:E3E1 add dh, 10h
_F000:E3E4 c