【发布时间】:2020-07-07 01:55:03
【问题描述】:
来自linux的proc.txt:
MemTotal: Total usable ram (i.e. physical ram minus a few reserved
但是如何从linux内核获取整个物理内存包括保留内存?
【问题讨论】:
来自linux的proc.txt:
MemTotal: Total usable ram (i.e. physical ram minus a few reserved
但是如何从linux内核获取整个物理内存包括保留内存?
【问题讨论】:
physpages = get_num_physpages();
pr_info("Memory: %luK/%luK available (%luK kernel code, %luK rwdata, %luK rodata, %luK init, %luK bss, %luK reserved, %luK cma-reserved"
#ifdef CONFIG_HIGHMEM
", %luK highmem"
#endif
"%s%s)\n",
nr_free_pages() << (PAGE_SHIFT - 10),
physpages << (PAGE_SHIFT - 10),
codesize >> 10, datasize >> 10, rosize >> 10,
(init_data_size + init_code_size) >> 10, bss_size >> 10,
(physpages - totalram_pages() - totalcma_pages) << (PAGE_SHIFT - 10),
totalcma_pages << (PAGE_SHIFT - 10),
#ifdef CONFIG_HIGHMEM
totalhigh_pages() << (PAGE_SHIFT - 10),
#endif
str ? ", " : "", str ? str : "");
所以get_num_physpages << (PAGE_SHIFT - 10) 将获得整个物理内存。
【讨论】: