Ένα system call (syscall) είναι ο μηχανισμός που χρησιμοποιεί ένα πρόγραμμα του user-space για να ζητήσει μια υπηρεσία από τον kernel — άνοιγμα αρχείου, αποστολή δεδομένων δικτύου, δέσμευση μνήμης, δημιουργία διεργασίας. Επειδή αυτές οι ενέργειες αγγίζουν το υλικό ή επηρεάζουν άλλες διεργασίες, μόνο ο kernel επιτρέπεται να τις εκτελέσει, οπότε ένα syscall διασχίζει σκόπιμα το όριο προστασίας.
User mode vs kernel mode
Η CPU τρέχει σε ένα από (τουλάχιστον) δύο επίπεδα προνομίων:
user mode → restricted: no direct hardware access, no privileged instructions
kernel mode → full access: hardware, all memory, privileged CPU instructions
