我有一台笔记本电脑,其中有一些 RAM 地址已损坏,因此我尝试在 Linux 启动之前使用 memmap 来保留它们。
我一直试图将其用作memmap=10M$1024M
内核启动选项,但 Linux 崩溃(没有错误)并重新启动。如果我对 memmap 使用不同的语法,memmap=1023M@0M
它就可以正常启动。
我是否必须指定要保留的特定大小的块,或者我的内核版本是否不支持使用 memmap 保留内存?
也许我最好使用memmap=exactmap
,如果这样,有人可以告诉我一个关于如何使用它的常见问题解答吗?
答案1
我偶然发现了这个:
http://www.gnu.org/software/grub/manual/html_node/badram.html#badram
此命令通知内存管理器应过滤掉指定的 RAM 区域(通常是因为它们已损坏)。在 GRUB 加载有效负载内核后,只要加载的内核从 GRUB 获取其内存映射,此命令仍然有效。支持此功能的内核包括 Linux、GNU Mach、FreeBSD 内核和一般的 Multiboot 内核。
也许有帮助?