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

📄 memsizes.c

📁 linux下从网卡远程启动
💻 C
字号:
#ifdef PCBIOS#include "etherboot.h"/* by Eric Biederman */extern unsigned int memsize P((void));extern unsigned short basememsize P((void));extern int meme820(struct e820entry *buf, int count);struct meminfo meminfo;#define MEMSIZES_DEBUG 0void get_memsizes(void){	meminfo.basememsize = basememsize();	meminfo.memsize = memsize();#ifndef IGNORE_E820_MAP	meminfo.map_count = meme820(meminfo.map, E820MAX);#else	meminfo.map_count = 0;#endif	if (meminfo.map_count == 0) {		/* If we don't have an e820 memory map fake it */		meminfo.map_count = 2;		meminfo.map[0].addr = 0;		meminfo.map[0].size = meminfo.basememsize << 10;		meminfo.map[0].type = E820_RAM;		meminfo.map[1].addr = 1024*1024;		meminfo.map[1].size = meminfo.memsize << 10;		meminfo.map[1].type = E820_RAM;	}#if MEMSIZES_DEBUG{	int i;	printf("basememsize %d\n", meminfo.basememsize);	printf("memsize %d\n",     meminfo.basememsize);	printf("Memory regions(%d):\n", meminfo.map_count);	for(i = 0; i < meminfo.map_count; i++) {		unsigned long long r_start, r_end;		r_start = meminfo.map[i].addr;		r_end = r_start + meminfo.map[i].size;		printf("[%X%X, %X%X) type %d\n", 			(unsigned long)(r_start >> 32),			(unsigned long)r_start,			(unsigned long)(r_end >> 32),			(unsigned long)r_end,			meminfo.map[i].type);		sleep(1); /* No way to see 32 entries on a standard 80x25 screen... */	}}#endif	/* Allocate the real mode stack */	adjust_real_mode_stack ();}#endif /* PCBIOS */

⌨️ 快捷键说明

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