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.