ఒక system call (syscall) అనేది user-space ప్రోగ్రామ్ kernel నుండి ఒక సేవను — file తెరవడం, network డేటా పంపడం, memory కేటాయించడం, ప్రాసెస్ సృష్టించడం — అభ్యర్థించడానికి వాడే యంత్రాంగం. ఈ చర్యలు హార్డ్వేర్ను తాకుతాయి లేదా ఇతర processలను ప్రభావితం చేస్తాయి కాబట్టి, వాటిని కేవలం kernel మాత్రమే చేయగలదు, కాబట్టి ఒక syscall ఉద్దేశపూర్వకంగా protection సరిహద్దును దాటుతుంది.
User mode vs kernel mode
CPU (కనీసం) రెండు privilege స్థాయిలలో ఒకదానిలో నడుస్తుంది:
user mode → restricted: no direct hardware access, no privileged instructions
kernel mode → full access: hardware, all memory, privileged CPU instructions
