⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 detectmem.s

📁 从网上下载的一个自己编写的简单的操作系统源代码,对底层了解很有好处的
💻 S
字号:
;
;  ExpOS
;     Copyright 2003.4.14
;
;
%include "boot.inc"

;
; 提供函数 detect_ram
;
global detect_mem



[bits 16]
msg :
        db "detectram.s : detect ram size ......."
	db 13,10,0
errmsg :
        db "detectram.s : e820 detect err"
	db 13,10,0
smaperr :
        db "smap err"
	db 13,10,0
dot :
        db "." ,0
	
;
; 函数 detect_ram
; 
; 
detect_mem:
        pushf
        pusha
              
        mov  di, msg
        call stuprint

        ;ds , es--> boot para
        mov  ax, BTPASEG
        mov  ds, ax
        mov  es, ax

        ;clear 
        xor	eax, eax
	;mov	eax, [0x1e0]
;获取扩展内存大小 单位 :kB

;ifndef STANDARD_MEMORY_BIOS_CALL
	mov	[boot_e820nr],al


; 使用三种不同的探测方式.  
;  首先用 e820h, 看看能不能得到mem map. 
;  然后使用 e801h,返回一个 32-bit memory size.
;  最后使用 88h, 只能返回 0-64m.

; memmap 真的是地狱来的吗

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -