Section 9.4. Memory Options


9.4. Memory Options

The kernel handles memory in many different chunks and categories for different purposes. These options allow you to tweak the sizes and settings.


Specify the size of the highmem memory zone.


highmem= n

Force the highmem memory zone to have an exact size of n bytes. This will work even on boxes that have no highmem zones by default. It can also reduce the size of the highmem zone for machines with a lot of memory.


Set the number of hugetlb pages.


hugepages= n

The hugetlb feature lets you configure Linux to use 4 MB pages, one thousand times the default size. If Linux is configured this way, this options sets the maximum number of hugetlb pages to be n.


Set the number of inode hash buckets.


ihash_entries= n

Override the default number of hash buckets for the kernel's inode cache. Recommended only for kernel experts.


Ignore memory.


max_addr= n

Cause the kernel to ignore all physical memory greater than or equal to the physical address n.


Force memory usage.


mem= n[KMG ]

Set the specific ammount of memory used by the kernel. When used with the memmap= option, physical address space collisions can be avoided. Without the memmap= option, this option could cause PCI devices to be placed at addresses that belong to unused RAM. n specifies the amount of memory to force and is measured in units of kilobytes (K), megabytes (M), or gigabytes (G).


Disable the use of 4 MB pages for kernel memory.


mem=nopentium

Disable the use of huge (4 MB) pages for kernel memory.


Enable setting of an exact E820 memory map.


memmap= exactmap

Use a specific memory map. The exactmap lines can be constructed based on BIOS output or other requirements.


Force specific memory to be used.


memmap= n[KMG ]@ start[KMG ]

Force the kernel to use a specific memory region. n is the size of the memory location, and start is the start location in memory of the range. Units can be kilobytes (K), megabytes (M), or gigabytes (G).


Enable or disable nonexecutable mappings.


noexec=[on|off]

Enable or disable the kernel's ability to map sections of memory as nonexecutable. By default, the mapping is enabled (on).


Reserve some I/O memory.


reserve= n[KMG ]

Force the kernel to ignore some of the I/O memory areas.


Force the vmalloc area to have a specific size.


vmalloc= n[KMG ]

Force vmalloc to have the exact size specified by n. This can be used to increase the minimum size of the vmalloc area (which is 128 MB on the x86 processor). It can also be used to decrease the size and leave more room for directly mapped kernel RAM.


Do not use address space randomization.

By default, the kernel randomizes the address space of all programs when they are started. This option disables this feature. It is equivalent to writing 0 to the file /proc/sys/kernel/randomize_va_space.


Enable or disable the VDSO mapping.


vdso=[0|1]

Disable (0) or enable (1) the VDSO (Virtual Dynamic Shared Object) mapping option. By default, it is enabled.



Linux Kernel in a Nutshell
Linux Kernel in a Nutshell (In a Nutshell (OReilly))
ISBN: 0596100795
EAN: 2147483647
Year: 2004
Pages: 113

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net