[Linux manuál]
Návod, kniha: Linux Programmer's Manual
#include <asm/page.h> /* to find PAGE_SIZE */
#include <sys/swap.h>
int swapon(const char *path, int swapflags);
int swapoff(const char *path);
(prio << SWAP_FLAG_PRIO_SHIFT) & SWAP_FLAG_PRIO_MASK
These functions may only be used by a privileged process (one having the
CAP_SYS_ADMIN capability).
swapon, swapoff: start / stop swapping to file / device
Originální popis anglicky: swapon, swapoff - start/stop swapping to file/deviceNávod, kniha: Linux Programmer's Manual
STRUČNĚ
#include <unistd.h>POPIS / INSTRUKCE
swapon sets the swap area to the file or block device specified by path. swapoff stops swapping to the file or block device specified by path. swapon takes a swapflags argument. If swapflags has the SWAP_FLAG_PREFER bit turned on, the new swap area will have a higher priority than default. The priority is encoded as:PRIORITY
Each swap area has a priority, either high or low. The default priority is low. Within the low-priority areas, newer areas are even lower priority than older areas. All priorities set with swapflags are high-priority, higher than default. They may have any non-negative value chosen by the caller. Higher numbers mean higher priority. Swap pages are allocated from areas in priority order, highest priority first. For areas with different priorities, a higher-priority area is exhausted before using a lower-priority area. If two or more areas have the same priority, and it is the highest priority available, pages are allocated on a round-robin basis between them. As of Linux 1.3.6, the kernel usually follows these rules, but there are exceptions.NÁVRATOVÁ HODNOTA
On success, zero is returned. On error, -1 is returned, and errno is set appropriately.CHYBY / ERRORY
- EINVAL
- The file path exists, but refers neither to a regular file nor to a block device.
- ENFILE
- The system limit on the total number of open files has been reached.
- ENOENT
- The file path does not exist.
- ENOMEM
- The system has insufficient memory to start swapping.
- EPERM
- The caller does not have the CAP_SYS_ADMIN capability, or all MAX_SWAPFILES (earlier 8; 32 since Linux 2.4.10) are in use.
ODPOVÍDAJÍCÍ
These functions are Linux specific and should not be used in programs intended to be portable. The second `swapflags' argument was introduced in Linux 1.3.2.NOTES
The partition or path must be prepared with mkswap(8).SOUVISEJÍCÍ
mkswap(8), swapoff(8), swapon(8)| 2004-10-10 | Linux 2.6.7 |