Opis flag pola vm_flags

W rubryce opis jest podane co oznacza ustawienie danej flagi dla VMA.

Nazwa Kod Opis
VM_READ 0x00001 można czytać z obszaru pamięci wirtualnej danego VMA
VM_WRITE 0x00002 można pisać po danym obszarze pamięci wirtualnej
VM_EXEC 0x00004 można wykonywać VMA
VM_SHARED 0x00008 jest to obszar pamięci dzielonej
VM_MAYREAD 0x00010 może być obszarem do odczytu
VM_MAYWRITE 0x00020 może być obszarem do zapisu
VM_MAYEXEC 0x00040 może być obszarem wykonywalnym
VM_MAYSHARE 0x00080 może być obszarem pamięci dzielonej
VM_GROWSDOWN 0x00100 wskazuje na sposób zmiany rozmiaru segmentu, jest to segment o strukturze stosu
VM_GROWSUP 0x00200 wskazuje na sposób zmiany rozmiaru segmentu, jest to segment o strukturze odwrotnej do stosu
VM_SHM 0x00400 jest to obszar pamięci dzielonej, niepodlegający wymianie
VM_DENYWRITE 0x00800 przy próbach zapisu system będzie zwracać błąd ETXTBSY (ang. Text file busy)
VM_EXECUTABLE 0x01000 obszar wykonywalny
VM_LOCKED 0x02000 blokowanie dostępu do VMA, wykorzystywane np. przed wymianą ramek z tego obszaru
VM_IO 0x04000 na obszar zmapowane jest wejście/wyjście
VM_SEQ_READ 0x08000 obszar będzie odczytywany sekwencyjnie przez aplikację
VM_RAND_READ 0x10000 oznacza, że aplikacja nie odniesie korzyści z grupowych odczytów (ang. clustered reads)
VM_DONTCOPY 0x20000 nie należy kopiować tego VMA w fork'u
VM_DONTEXPAND 0x40000 obszar nie może być rozszerzany przy użyciu mremap()
VM_RESERVED 0x80000 obszar nie może być odznaczony ze swap_out
VM_STACK_FLAGS 0x00177 obszar należy do segmentu stosu procesu


Tomasz Szymko 27 listopada 2001