Если вы хотите, чтобы ОС полностью игнорировала это, вам нужно сделать дыру в памяти, используя « memmap
.» Смотрите эту ссылку . Например, если вы хотите 512M на барьере 2 ГБ, вы можете поставить " memmap=512M$2G
" в командной строке вашего ядра.
Вам нужно будет проверить, dmesg
чтобы найти непрерывное отверстие для кражи, чтобы не топать ни на каких устройствах; это зависит от вашей материнской платы + карты.
Это не рекомендуемый способ сделать что-то - см. Ответ Уоррена Янга о том, как правильно это сделать (драйверы ядра + DMA). Я отвечаю на тот вопрос, который вы задали. Если вы планируете сделать это для конечных пользователей, они будут ненавидеть вас, если вы сделаете это с ними ... поверьте мне, это единственная причина, по которой я знал этот ответ.
Изменить: Если вы используете grub2 w / grubby (например, CentOS 7), вам необходимо убедиться, что вы не используете $ . Там должно быть сингл \
раньше $
. Пример:
$ sudo -v
$ sudo grubby --update-kernel=ALL --args=memmap='128M\\$0x57EF0000'
$ sudo grubby --info $(sudo grubby --default-kernel) | grep memmap
args="ro crashkernel=auto ... memmap=128M\$0x57EF0000"