UNIX/LINUX-ohjelmointi
Sisällys:
- GCC-ohje
- 1 Virhetilanteiden käsittely
- 2 Ohjelman suoritusympäristö
- 3 Tiedostojärjestelmä
- 4 Prosessinhallinta
- 5 Prosessien välinen vuorovaikutus
- 6 Estymätön ja asynkroninen siirräntä
- 7 System V IPC
- 8 Säikeet
- 9 Pistokeohjelmoinnin perusteet
- 10 Daemon-ohjelmointi
- 11 Tosiaikaohjelmointia Linux:lla
1 Virhetilanteiden käsittely
Koodissa tarkistettava kaikkien systeemikutsujen onnistuminen. Virhetilanteessa systeemikutsut ja kirjastofunktiot palauttavat yleensä arvon -1 tai NULL ja asettavat muuttujalle errno virheen numeron. Onnistunut systeemikutsu ei muuta muuttujaa errno. Numeroa vastaavan ilmoituksen saa funktiolla strerror(). Tulostuksen voi hoitaa funktiolla perror(), joka tulostaa parametrinsa, kaksoispisteen ja järjestelmän virheilmoituksen. Järjestelmän virhenumerot ja niihin samaistetut tunnukset löytyvät otsaketiedostosta /usr/include/sys/errno.h
#include < stdio.h > int main(int argc, char *argv[]) { fprintf(stderr,"EACCES: " %s\n", strerror(EACCES); errno = ENOENT; perror(argv[0]); /*ohjelman nimi. SUOSITELLAAN */ exit(0); }
Jan Lindström (Jan.Lindstrom@cs.Helsinki.FI)