私はmem=MEMORY_LIMIT
を設定することになっていることを知っています。しかし、OSが制御する物理メモリの合計に制限を設定するために、実行時または起動時にどこに行くべきかわかりません。
I/Oベンチマークを実行していますが、使用可能な物理メモリ全体の量を制限したいと思います。
探していた答えが見つかりました。基本的に、使用可能な物理メモリの合計を設定するパラメータは「mem = MEMORY_LIMIT」です。そして、これはカーネルブートパラメータです。カーネルブートパラメータに最大1GBの使用可能な物理メモリを追加するには、たとえば「mem = 1G」と追加する必要があります。カーネルブートパラメーターを追加する方法の詳細については、 https://wiki.ubuntu.com/Kernel/KernelBootParameters を参照してください
lilo.conf
、grub.conf
、grub.cfg
、またはmenu.lst
(特定のディストリビューションとブートローダーによって異なります。詳細についてはディストリビューションのドキュメントを確認してください)でカーネルブートパラメーターを編集して、カーネルパラメータを指定する行に、パラメータmem=512M
(またはエミュレートするサイズ)を含めます。
たとえば、Grubの場合、kernel /boot/vmlinuz param1=val1 param2=val2
のような行があるはずです。 mem=512M
をパラメーターのリストに追加します。これらの定義全体をコピーして名前を変更し、それぞれに異なるメモリ容量を設定することで、ブートメニューに個別のエントリを作成できるため、異なる設定ですばやく起動できます。
ブライアンキャンベルのリストに追加するには、BeagleBone/BlackデバイスのuBootブートローダーの場合、/boot/uboot/uEnv.txt
のカーネルパラメーターを編集します
行を追加または変更しますmmcargs=setenv bootargs mem=512M
[Debianでテスト済み]
[再起動]の前後に> free
を使用して、変更を確認します
KZcodingが言及した このページ の指示に従いました(パート:カーネルブートパラメーターを永続的に追加します)
私のLinuxは(virtualboxのVM):
Linux ubuntu 4.4.0-21-generic #37-Ubuntu SMP Mon Apr 18 18:33:37 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
設定する前に:
yavuz@ubuntu:~$ free -m
total used free shared buff/cache available
Mem: 3630 305 3010 6 314 3264
Swap: 3767 0 3767
/etc/default/grub
でこの行を変更しました
GRUB_CMDLINE_LINUX_DEFAULT=""
に
GRUB_CMDLINE_LINUX_DEFAULT="mem=2G"
次にサーバーを再起動します。再起動後:
yavuz@ubuntu:~$ free -m
total used free shared buff/cache available
Mem: 2000 298 1385 4 315 1651
Swap: 3767 0 3767
A1:はい、再起動する必要があります。
A2:カーネルはタイプミスに関して寛容ではありません。エラーメッセージはありません。それはあなたの問題でしょうか?例:「mem = 512M」および「mem = 2G」。前のパラメーターに続くスペースを忘れないでください。memは小文字で、K、M、またはGは大文字です。