   #Start Prev Next Contents Funkcje x86-32: 251-300

                   Opis funkcji systemowych syscall: 251-300

   Jesli jakas funkcja zakonczy sie bledem, w RAX zwracana jest wartosc
   ujemna z przedzialu od -4096 do -1 wlacznie.

   Z drugiej strony, opisy funkcji na stronach manuala mowia, ze zwracane
   jest -1, a wartosc bledu jest zapisywana do zmiennej errno z
   biblioteki GLIBC. Dzieje sie tak tylko w przypadku, gdy korzystamy z
   interfejsu jezyka C (czyli deklarujemy i uruchamiamy zewnetrzne
   funkcje odpowiadajace wywolaniom systemowym i linkujemy nasz program z
   biblioteka jezyka C), a nie bezposrednio z wywolan systemowych (czyli
   syscall).

   Najbardziej aktualne informacje o funkcjach systemowych mozna znalezc
   zazwyczaj w sekcji 2 (lub 3) manuala, na przyklad man 2 open.

   Najnowsze wersje jadra mozna znalezc na www.kernel.org, a pliki z
   lista funkcji i ich numerow sa pod sciezkami:
     * arch/x86/include/asm/unistd_{32,64}.h
     * arch/x86/syscalls/syscall_{32,64}.tbl
     * arch/x86/entry/syscalls/syscall_{32,64}.tbl

   Najnowsze wersje stron manuala mozna znalezc tu:
   www.kernel.org/pub/linux/docs/man-pages.

   Napis ASCIIZ oznacza lancuch znakow ASCII zakonczony znakiem/bajtem
   Zerowym.

   Jesli potrzeba, przy kazdej funkcji jest odnosnik do opisu argumentow
   i innych dodatkowych informacji: typow danych, wartosci bledow,
   mozliwych wartosci parametrow itp.

   CAPTION: Podstawowe funkcje syscall: 251-300

   Numer/ RAX Opis Argumenty Zwraca
   251
   Ustaw priorytet kolejkowania We/wy procesu (sys_ioprio_set)
   RDI = typ
   RSI = informacja zalezna od typu
   RDX = nowy priorytet
   RAX = 0
   RAX = blad ESRCH, EPERM, EINVAL
     _________________________________________________________________

   252
   Pobierz priorytet kolejkowania We/wy procesu (sys_ioprio_get)
   RDI = typ
   RSI = informacja zalezna od typu
   RAX = priorytet
   RAX = blad ESRCH, EPERM, EINVAL
     _________________________________________________________________

   253
   Inicjalizacja kolejki zdarzen inotify (sys_inotify_init)
   nic
   RAX = deskryptor kolejki
   RAX = blad EMFILE, ENFILE, ENOMEM
     _________________________________________________________________

   254
   Dodaj obiekt obserwowany kolejki zdarzen inotify
   (sys_inotify_add_watch)
   RDI = deskryptor kolejki inotify
   RSI = adres nazwy pliku ASCIIZ
   RDX = flagi inotify
   RAX = deskryptor "obserwacji" danego pliku
   RAX = blad EACCES, EBADF, EFAULT, EINVAL, ENOMEM, ENOSPC
     _________________________________________________________________

   255
   Usun obserwacje obiektu z kolejki zdarzen inotify
   (sys_inotify_rm_watch)
   RDI = deskryptor kolejki inotify
   RSI = deskryptor obserwacji
   RAX = 0
   RAX = blad EBADF, EINVAL
     _________________________________________________________________

   256
   Przenies strony pamieci procesu (sys_migrate_pages)
   RDI = PID procesu, ktorego strony przeniesc
   RSI = najwiekszy numer wezla +1
   RDX = adres tablicy DWORDow z co najmniej ECX/RSI bitami oznaczajacymi
   stare wezly
   R10 = adres tablicy DWORDow z co najmniej ECX/RSI bitami oznaczajacymi
   nowe wezly
   RAX = 0
   RAX = blad EPERM, ESRCH
     _________________________________________________________________

   257
   Otworz plik wzglednie do katalogu (sys_openat)
   RDI = deskryptor otwartego katalogu lub wartosc AT_FDCWD=-100
   oznaczajaca katalog biezacy
   RSI = adres nazwy pliku ASCIIZ. Jesli sciezka jest wzgledna, jest
   brana jako wzgledna wzgledem podanego katalogu zamiast biezacego
   katalogu procesu
   RDX = bity dostepu
   R10 = prawa dostepu / tryb
   RAX = 0
   RAX = blad EBADF, ENOTDIR
     _________________________________________________________________

   258
   Utworz katalog wzglednie do katalogu (sys_mkdirat)
   RDI = deskryptor otwartego katalogu lub wartosc AT_FDCWD=-100
   oznaczajaca katalog biezacy
   RSI = adres sciezki/nazwy ASCIIZ. Jesli sciezka jest wzgledna, jest
   brana jako wzgledna wzgledem podanego katalogu zamiast biezacego
   katalogu procesu
   RDX = prawa dostepu / tryb
   RAX = 0
   RAX = blad - kazdy zwiazany z systemem plikow lub prawami dostepu
     _________________________________________________________________

   259
   Utworzenie pliku specjalnego wzglednie do katalogu (sys_mknodat)
   RDI = deskryptor otwartego katalogu lub wartosc AT_FDCWD=-100
   oznaczajaca katalog biezacy
   RSI = adres sciezki/nazwy ASCIIZ. Jesli sciezka jest wzgledna, jest
   brana jako wzgledna wzgledem podanego katalogu zamiast biezacego
   katalogu procesu
   RDX = typ urzadzenia OR prawa dostepu
   R10, R8 - wynik dzialania (zmodyfikowanego) makra makedev
   RAX = 0
   RAX = blad EACCES, EEXIST, EFAULT, EINVAL, ELOOP, ENAMETOOLONG,
   ENOENT, ENOMEM, ENOSPC, ENOTDIR, EPERM, EROFS
     _________________________________________________________________

   260
   Zmiana wlasciciela obiektu polozonego wzglednie do katalogu
   (sys_fchownat)
   RDI = deskryptor otwartego katalogu lub wartosc AT_FDCWD=-100
   oznaczajaca katalog biezacy
   RSI = adres sciezki/nazwy ASCIIZ. Jesli sciezka jest wzgledna, jest
   brana jako wzgledna wzgledem podanego katalogu zamiast biezacego
   katalogu procesu
   RDX = identyfikator UID nowego wlasciciela obiektu
   R10 = identyfikator GID grupy, ktora stanie sie wlascicielem obiektu
   R8 = 0 lub wartosc AT_SYMLINK_NOFOLLOW=100h, wtedy nie bedzie podazal
   za dowiazaniami symbolicznymi
   RAX = 0
   RAX = blad EBADF, ENOTDIR, EINVAL
     _________________________________________________________________

   261
   Zmiana czasow dostepu i zmian pliku polozonego wzglednie do katalogu
   (sys_futimesat)
   RDI = deskryptor otwartego katalogu lub wartosc AT_FDCWD=-100
   oznaczajaca katalog biezacy
   RSI = adres sciezki/nazwy ASCIIZ. Jesli sciezka jest wzgledna, jest
   brana jako wzgledna wzgledem podanego katalogu zamiast biezacego
   katalogu procesu
   RDX = adres tablicy 2 struktur timeval, NULL gdy chcemy biezacy czas.
   Pierwsza struktura opisuje czas dostepu, druga - czas zmiany
   RAX = 0
   RAX = blad EBADF, ENOTDIR
     _________________________________________________________________

   262
   Pobierz status obiektu polozonego wzglednie do katalogu
   (sys_fstatat64)
   RDI = deskryptor otwartego katalogu lub wartosc AT_FDCWD=-100
   oznaczajaca katalog biezacy
   RSI = adres sciezki/nazwy ASCIIZ. Jesli sciezka jest wzgledna, jest
   brana jako wzgledna wzgledem podanego katalogu zamiast biezacego
   katalogu procesu
   RDX = adres struktury stat na dane
   R10 = 0 lub AT_SYMLINK_NOFOLLOW (=0x100), gdy nie chcemy
   dereferencjonowac dowiazan
   RAX = 0
   RAX = blad EBADF, ENOTDIR, EINVAL, bledy sys_stat
     _________________________________________________________________

   263
   Usun obiekt wzglednie do katalogu (sys_ulinkat)
   RDI = deskryptor otwartego katalogu lub wartosc AT_FDCWD=-100
   oznaczajaca katalog biezacy
   RSI = adres sciezki/nazwy ASCIIZ. Jesli sciezka jest wzgledna, jest
   brana jako wzgledna wzgledem podanego katalogu zamiast biezacego
   katalogu procesu
   RDX = 0 lub AT_REMOVEDIR (=0x200), gdy chcemy usuwac katalogi
   RAX = 0
   RAX = blad EBADF, ENOTDIR, EINVAL
     _________________________________________________________________

   264
   Przenies plik/Zmien nazwe pliku wzglednie do katalogu (sys_renameat)
   RDI = deskryptor otwartego katalogu zrodlowego lub wartosc
   AT_FDCWD=-100 oznaczajaca katalog biezacy
   RSI = adres starej nazwy (i ewentualnie sciezki) ASCIIZ
   RDX = deskryptor otwartego katalogu docelowego
   R10 = adres nowej nazwy (i ewentualnie sciezki) ASCIIZ
   RAX = 0
   RAX = blad EBUSY, EEXIST, EISDIR, ENOTEMPTY, EXDEV (i inne bledy
   systemu plikow), EBADF, ENOTDIR
     _________________________________________________________________

   265
   Utworzenie twardego dowiazania do pliku wzglednie do katalogu
   (sys_linkat)
   RDI = deskryptor otwartego katalogu zrodlowego lub wartosc
   AT_FDCWD=-100 oznaczajaca katalog biezacy
   RSI = adres nazwy istniejacego pliku ASCIIZ
   RDX = deskryptor otwartego katalogu docelowego
   R10 = adres nazwy nowego pliku ASCIIZ
   R8 = 0 (flagi)
   RAX = 0
   RAX=blad EACCES, EIO, EPERM, EEXIST, EFAULT, ELOOP, EMLINK,
   ENAMETOOLONG, ENOENT, ENOMEM, ENOSPC, ENOTDIR, EROFS, EXDEV
     _________________________________________________________________

   266
   Stworz dowiazanie symboliczne do pliku wzglednie do katalogu
   (sys_symlinkat)
   RDI = adres nazwy pliku ASCIIZ
   RSI = deskryptor otwartego katalogu docelowego lub wartosc
   AT_FDCWD=-100 oznaczajaca katalog biezacy
   RDX = adres nazwy linku ASCIIZ
   RAX = 0
   RAX = bledy zwiazane z uprawnieniami lub systemem plikow
     _________________________________________________________________

   267
   Przeczytaj zawartosc linku symbolicznego wzglednie do katalogu
   (sys_readlinkat)
   RDI = deskryptor otwartego katalogu zrodlowego lub wartosc
   AT_FDCWD=-100 oznaczajaca katalog biezacy
   RSI = adres nazwy dowiazania symbolicznego ASCIIZ
   RDX = adres bufora, ktory otrzyma przeczytana informacje
   R10 = dlugosc bufora
   RAX = 0
   RAX = blad EBADF, ENOTDIR
     _________________________________________________________________

   268
   Zmiana uprawnien obiektu wzglednie do katalogu (sys_fchmodat)
   RDI = deskryptor otwartego katalogu zrodlowego lub wartosc
   AT_FDCWD=-100 oznaczajaca katalog biezacy
   RSI = adres nazwy pliku ASCIIZ
   RDX = nowe prawa dostepu
   R10 = flagi, musi byc zero
   RAX = 0
   RAX = blad EBADF, ENOTDIR
     _________________________________________________________________

   269
   Sprawdz uprawnienia dostepu do pliku (sys_faccessat)
   RDI = deskryptor otwartego katalogu zrodlowego lub wartosc
   AT_FDCWD=-100 oznaczajaca katalog biezacy
   RSI = adres nazwy pliku ASCIIZ
   RDX = prawa dostepu / tryb (wartosci R_OK, W_OK, X_OK)
   R10 = flagi: 0 lub AT_SYMLINK_NOFOLLOW=100h (nie podazaj za
   dowiazaniami symbolicznymi) lub AT_EACCESS=0x200 (sprawdzanie wedlug
   efektywnych UID i GID)
   RAX = 0
   RAX = blad EBADF, ENOTDIR, EINVAL
     _________________________________________________________________

   270
   Oczekiwanie zmiany stanu deskryptora(ow) (sys_pselect6)
   RDI = najwyzszy numer sposrod deskryptorow + 1
   RSI = adres tablicy deskryptorow sprawdzanych, czy mozna z nich czytac
   RDX = adres tablicy deskryptorow sprawdzanych, czy mozna do nich pisac
   R10 = adres tablicy deskryptorow sprawdzanych, czy nie wystapil u nich
   wyjatek
   R8 = adres struktury timespec zawierajaca maksymalny czas oczekiwania
   R9 = adres struktury sigset_t zawierajaca maske sygnalow do ustawienia
   na czas wywolania tej funkcji
   RAX = calkowita liczba deskryptorow, ktora pozostala w tablicach
   RAX = 0, gdy skonczyl sie czas
   RAX = blad EBADF, EINTR, EINVAL, ENOMEM
     _________________________________________________________________

   271
   Czekaj na zdarzenia na deskryptorze (sys_ppoll)
   RDI = adres tablicy struktur pollfd
   RSI = liczba struktur pollfd w tablicy
   RDX = adres struktury timespec - czas oczekiwania lub 0
   (nieskonczonosc)
   R10 = adres struktury sigset_t
   RAX = liczba odpowiednich deskryptorow
   RAX = 0, gdy czas uplynal
   RAX = blad EFAULT, EINTR, EINVAL, EBADF, ENOMEM
     _________________________________________________________________

   272
   Cofnij wspoldzielenie (sys_unshare)
   RDI = CLONE_FILES, CLONE_FS lub CLONE_NEWNS sposrod flag
   RAX = 0
   RAX=blad EPERM, ENOMEM, EINVAL
     _________________________________________________________________

   273
   Ustaw liste sprawnych futeksow (sys_set_robust_list)
   RDI = adres pierwszego elementu listy struktur typu robust_list_head
   RSI = rozmiar elementu listy podanej przez RDI
   RAX = 0
   RAX = blad EINVAL
     _________________________________________________________________

   274
   Pobierz liste sprawnych futeksow (sys_get_robust_list)
   RDI = PID procesu
   RSI = adres zmiennej, ktora otrzyma adres pierwszego elementu listy
   struktur typu robust_list_head
   RDX = adres zmiennej, ktora otrzyma rozmiar elementu listy podanej
   przez RSI
   RAX = 0
   RAX = blad EPERM, ESRCH, EFAULT
     _________________________________________________________________

   275
   Splec dane z/do potoku (sys_splice)
   RDI = wejsciowy deskryptor pliku
   RSI = offset w pliku wejsciowym, skad czytac dane (0 dla potokow)
   RDX = wyjsciowy deskryptor pliku
   R10 = offset w pliku wyjsciowym, dokad zapisac dane (0 dla potokow)
   R8 = maksymalna liczba bajtow do przeniesienia
   R9 = flagi
   RAX = liczba przeniesionych bajtow
   RAX=blad EBADF, ESPIPE, ENOMEM, EINVAL
     _________________________________________________________________

   276
   Duplikowanie zawartosci potoku (sys_tee)
   RDI = wejsciowy deskryptor pliku
   RSI = wyjsciowy deskryptor pliku
   RDX = maksymalna liczba bajtow do przeniesienia
   R10 = flagi (te same, co dla sys_splice)
   RAX = liczba zduplikowanych bajtow
   RAX=blad ENOMEM, EINVAL
     _________________________________________________________________

   277
   Synchronizuj segment pliku z dyskiem (sys_sync_file_range)
   RDI = deskryptor pliku
   RSI = poczatek zakresu danych do synchronizacji / RSI wskazuje na 64
   bity adresu poczatku danych?
   RDX = liczba bajtow do zsynchronizowania / RDX wskazuje na 64-bitowa
   liczbe bajtow do zsynchronizowania?
   R10 = flagi synchronizacji
   RAX = 0
   RAX=blad EBADF, EIO, EINVAL, ENOMEM, ENOSPC, ESPIPE
     _________________________________________________________________

   278
   Splec strony pamieci do potoku (sys_vmsplice)
   RDI = wejsciowy deskryptor potoku
   RSI = adres tablicy struktur iovec
   RDX = liczba elementow w tablicy pod [RSI]
   R10 = flagi (te same, co dla sys_splice)
   RAX = liczba bajtow przeniesionych do potoku
   RAX=blad EBADF, ENOMEM, EINVAL
     _________________________________________________________________

   279
   Przesun strony pamieci procesu (sys_move_pages)
   RDI = PID procesu
   RSI = liczba stron do przeniesienia
   RDX = adres tablicy adresow stron
   R10 = adres tablicy liczb calkowitych okreslajacych zadane miejsce dla
   danej strony
   R8 = adres tablicy na liczby calkowite, ktore otrzymaja status
   wykonanej operacji
   R9 = flagi okreslajace typ stron do przeniesienia (MPOL_MF_MOVE=2
   oznacza tylko strony procesu, MPOL_MF_MOVE_ALL=4 oznacza wszystkie
   strony)
   RAX = 0
   RAX=blad E2BIG, EACCES, EFAULT, EINVAL, ENODEV, ENOENT, EPERM, ESRCH
     _________________________________________________________________

   280
   Zmien znaczniki czasu pliku (sys_utimensat)
   RDI = deskryptor otwartego katalogu lub wartosc AT_FDCWD=-100
   oznaczajaca katalog biezacy
   RSI = adres nazwy pliku
   RDX = adres dwuelementowej tablicy struktur timespec, opisujacych czas
   dostepu i zmiany
   R10 = flagi: 0 lub AT_SYMLINK_NOFOLLOW=0x100 (nie podazaj za
   dowiazaniami symbolicznymi)
   RAX = 0
   RAX=blad EACCES, EBADF, EFAULT, EINVAL, ELOOP, ENAMETOOLONG, ENOENT,
   ENOTDIR, EPERM, EROFS, ESRCH
     _________________________________________________________________

   281
   Czekaj na deskryptorze pliku epoll (sys_epoll_pwait)
   RDI = deskryptor epoll
   RSI = adres tablicy struktur epoll_event
   RDX = maksymalna liczba zdarzen, na ktore bedziemy czekac
   R10 = czas czekania w milisekundach (-1 = nieskonczonosc)
   R8 = adres zestawu sygnalow (tablicy 32 DWORDow), ktore tez przerwa
   czekanie
   RAX = liczba deskryptorow gotowych
   RAX = blad EFAULT, EINTR, EBADF, EINVAL
     _________________________________________________________________

   282
   Stworz deskryptor pliku do otrzymywania sygnalow (sys_signalfd)
   RDI = deskryptor: -1, gdy tworzymy nowy lub nieujemny, gdy zmieniamy
   istniejacy
   RSI = adres maski sygnalow (sigset), ktore chcemy otrzymywac
   RAX = deskryptor pliku
   RAX=blad EBADF, EINVAL, EMFILE, ENFILE, ENODEV, ENOMEM
     _________________________________________________________________

   283
   Stworz nowy czasomierz (sys_timerfd_create)
   RDI = identyfikator zegara (CLOCK_REALTIME=0 lub CLOCK_MONOTONIC=1)
   RSI = flagi: 0 lub zORowane wartosci TFD_NONBLOCK (=04000 osemkowo,
   operacje maja byc nieblokujace), TFD_CLOEXEC (=02000000 osemkowo,
   zamknij w czasie wywolania exec)
   RAX = deskryptor pliku
   RAX=blad EINVAL, EMFILE, ENFILE, ENODEV, ENOMEM
     _________________________________________________________________

   284
   Stworz deskryptor pliku do otrzymywania zdarzen (sys_eventfd)
   RDI = wstepna wartosc licznika zdarzen
   RAX = deskryptor pliku
   RAX=blad EINVAL, EMFILE, ENFILE, ENODEV, ENOMEM
     _________________________________________________________________

   285
   Manipulacja przestrzenia pliku (sys_fallocate)
   RDI = deskryptor pliku
   RSI = tryb = FALLOC_FL_KEEP_SIZE (alokuje i zeruje przestrzen na dysku
   w podanym zakresie bajtow) = 1
   RDX = offset poczatku zakresu bajtow w pliku
   R10 = liczba bajtow w zakresie
   RAX = liczba deskryptorow gotowych
   RAX = blad EFAULT, EINTR, EBADF, EINVAL
     _________________________________________________________________

   286
   Uruchom lub zatrzymaj czasomierz (sys_timerfd_settime)
   RDI = deskryptor pliku czasomierza
   RSI = flagi (0 uruchamia czasomierz wzgledy, TFD_TIMER_ABSTIME=1 -
   bezwzgledny)
   RDX = adres struktury itimerspec, zawierajacej poczatkowy czas
   R10 = adres struktury itimerspec, ktora otrzyma aktualny czas
   RAX = 0
   RAX=blad EINVAL, EFAULT, EBADF
     _________________________________________________________________

   287
   Pobierz czas na czasomierzu (sys_timerfd_gettime)
   RDI = deskryptor pliku czasomierza
   RSI = adres struktury itimerspec, ktora otrzyma aktualny czas
   RAX = 0
   RAX=blad EINVAL, EFAULT, EBADF
     _________________________________________________________________

   288
   sys_paccept
   brak danych
   brak danych
     _________________________________________________________________

   289
   Stworz deskryptor pliku do otrzymywania sygnalow (sys_signalfd4)
   RDI = deskryptor: -1, gdy tworzymy nowy lub nieujemny, gdy zmieniamy
   istniejacy
   RSI = adres maski sygnalow (sigset), ktore chcemy otrzymywac
   RDX = flagi: 0 lub zORowane wartosci SFD_NONBLOCK (=04000 osemkowo,
   operacje maja byc nieblokujace), SFD_CLOEXEC (=02000000 osemkowo,
   zamknij w czasie wywolania exec)
   RAX = deskryptor pliku
   RAX=blad EBADF, EINVAL, EMFILE, ENFILE, ENODEV, ENOMEM
     _________________________________________________________________

   290
   Stworz deskryptor pliku do otrzymywania zdarzen (sys_eventfd2)
   RDI = wstepna wartosc licznika zdarzen
   RSI = flagi: 0 lub zORowane wartosci EFD_NONBLOCK (=04000 osemkowo,
   operacje maja byc nieblokujace), EFD_CLOEXEC (=02000000 osemkowo,
   zamknij w czasie wywolania exec)
   RAX = deskryptor pliku
   RAX=blad EINVAL, EMFILE, ENFILE, ENODEV, ENOMEM
     _________________________________________________________________

   291
   Utworz deskryptor pliku epoll (sys_epoll_create1)
   RDI = flagi: 0 lub EPOLL_CLOEXEC (=02000000 osemkowo, zamknij w czasie
   wywolania exec)
   RAX = nowy deskryptor pliku
   RAX = blad ENOMEM, EINVAL, EMFILE, ENFILE
     _________________________________________________________________

   292
   Zamien deskryptor zduplikowanym deskryptorem pliku (sys_dup3)
   RDI = deskryptor do zduplikowania
   RSI = deskryptor, do ktorego powinien byc przyznany duplikat
   RDX = flagi: 0 lub O_CLOEXEC (=02000000 osemkowo, zamknij w czasie
   wywolania exec)
   RAX = zduplikowany deskryptor
   RAX = blad EBADF, EMFILE, EBUSY, EINTR, EINVAL
     _________________________________________________________________

   293
   Utworz potok (sys_pipe2)
   RDI = adres tablicy dwoch DWORDow
   RSI = flagi: 0 lub zORowane wartosci O_NONBLOCK (=04000 osemkowo,
   operacje maja byc nieblokujace), O_CLOEXEC (=02000000 osemkowo,
   zamknij w czasie wywolania exec)
   RAX = 0 i pod [RDI]: deskryptor odczytu z potoku fd(0) pod [RDI],
   deskryptor zapisu do potoku fd(1) pod [RDI+4]
   RAX = blad EFAULT, EMFILE, ENFILE, EINVAL
     _________________________________________________________________

   294
   Inicjalizacja kolejki zdarzen inotify (sys_inotify_init1)
   RDI = flagi: 0 lub zORowane wartosci IN_NONBLOCK (=04000 osemkowo,
   operacje maja byc nieblokujace), IN_CLOEXEC (=02000000 osemkowo,
   zamknij w czasie wywolania exec)
   RAX = deskryptor kolejki
   RAX = blad EMFILE, ENFILE, ENOMEM, EINVAL
     _________________________________________________________________

   295
   Odczyt danych do wielu buforow (sys_preadv)
   RDI = deskryptor otwartego pliku
   RSI = adres tablicy struktur iovec, do ktorych zapisac dane
   RDX = liczba struktur iovec spod [RSI]
   R10 = numer bajtu, od ktorego czytac (offset w pliku)
   RAX = liczba odczytanych bajtow
   RAX = blad funkcji sys_read, sys_lseek lub EINVAL
     _________________________________________________________________

   296
   Zapis danych z wielu buforow (sys_pwritev)
   RDI = deskryptor otwartego pliku
   RSI = adres tablicy struktur iovec, z ktorych brac dane do zapisania
   RDX = liczba struktur iovec spod [RSI]
   R10 = numer bajtu, od ktorego zapisywac (offset w pliku)
   RAX = liczba zapisanych bajtow
   RAX = blad funkcji sys_write, sys_lseek lub EINVAL
     _________________________________________________________________

   297
   Zakolejkuj dane i sygnal dla watku (sys_rt_tgsigqueueinfo)
   RDI = ID grupy watkow
   RSI = ID watku
   RDX = sygnal do wyslania
   R10 = adres struktury siginfo z danymi do wyslania
   RAX = 0
   RAX = blad EAGAIN, EINVAL, EPERM, ESRCH
     _________________________________________________________________

   298
   sys_perf_counter_open
   brak danych
   brak danych
     _________________________________________________________________

   299
   Odbierz wiele wiadomosci z gniazda (sys_recvmmsg)
   RDI = deskryptor otwartego gniazda
   RSI = adres tablicy struktur mmsghdr, do ktorych zapisac dane
   RDX = liczba struktur mmsghdr spod [RSI]
   R10 = 0 lub zORowane flagi funkcji recvmsg i dodatkowa flaga
   MSG_WAITFORONE (=0x10000) oznaczajaca czekanie na jedna wiadomosc
   R8 = adres struktury timespec oznaczajacej czas czekania lub 0
   (czekanie bez konca)
   RAX = liczba otrzymanych wiadomosci
   RAX = blad funkcji recvmsg lub EINVAL
     _________________________________________________________________

   300
   Utworz grupe fanotify (sys_fanotify_init)
   RDI = flagi fanotify
   RSI = O_RDONLY, O_WRONLY, O_RDWR, O_LARGEFILE, O_CLOEXEC z bitow
   dostepu jako flagi zdarzen
   RAX = nowy deskryptor pliku
   RAX = blad EINVAL, EMFILE, ENOMEM, ENOSYS, EPERM
     _________________________________________________________________

   Poprzednia czesc (klawisz dostepu 3)
   Kolejna czesc (klawisz dostepu 4)
   Spis tresci off-line (klawisz dostepu 1)
   Spis tresci on-line (klawisz dostepu 2)
   Ulatwienia dla niepelnosprawnych (klawisz dostepu 0)
