Zakończenie pracy – _exit void _exit(int status); służy do zakończenia pracy programu. status zostanie zwrócony jako kod wyjścia.

Zarządzanie pamięcią – brk int brk(void *end_data_segment);

Wywołanie brk jest bardzo ważne i widać je często w wynikach strace, ale praktycznie nigdy nie jest używane bezpośrednio. brk zmienia wielkość sterty programu.

Do alokacji pamięci (szczególnie pamięci dzielonej między procesami) można używać też mmap i innych wywołań systemowych.

Pisanie i czytanie Otwarty deskryptor plików służy głównie do zapisu i odczytu danych. Podstawowe wywołania systemowe to read i write, jednak ze względu na kwestie wydajności powstały też inne takie jak readv, writev i sendfile.

Innym mechanizmem jest mmap.

read read jest zdefiniowany w unistd.h[] jako: ssize_t read(int fd, void *buf, size_t count);

Pierwszym argumentem jest otwarty deskryptor piku, drugim bufor, do którego mają się dostać zapisywane dane, trzecim zaś liczba danych, którą co najwyżej chcemy odczytać. read zwraca liczbę bajtów, która była w rzeczywistości odczytana.

Liczba ta może być mniejsza od żądanej z wielu przyczyn – np.