System calls: Difference between revisions

From Computer Science Wiki
No edit summary
No edit summary
Line 8: Line 8:


[[File:System call.png|500px|frame|This diagram shows a simplified representation of a system call<ref>https://www.guru99.com/system-call-operating-system.html</ref>.|left]]
[[File:System call.png|500px|frame|This diagram shows a simplified representation of a system call<ref>https://www.guru99.com/system-call-operating-system.html</ref>.|left]]
System calls can be grouped roughly into six major categories:[12]
# Process control
#* create process (for example, <code>[[fork (operating system)|fork]]</code> on Unix-like systems, or <code>NtCreateProcess</code> in the [[Windows NT]] [[Native API]])
#*[[Kill (command)|terminate process]]
#*[[Loader (computing)|load]], [[Exec (operating system)|execute]]
#* get/set process attributes
#*[[Wait (operating system)|wait]] for time, wait event, [[Signal (computing)|signal]] event
#*[[Dynamic memory allocation|allocate]] and [[Garbage collection (computer science)|free]] memory
# File management
#* create file, delete file
#* open, close
#* read, write, reposition
#* get/set file attributes
# Device management
#* request device, release device
#* read, write, reposition
#* get/set device attributes
#* logically attach or detach devices
# Information maintenance
#* get/set time or date
#* get/set system data
#* get/set process, file, or device attributes
# Communication
#* create, delete communication connection
#* send, receive messages
#* transfer status information
#* attach or detach remote devices
#Protection
#*get/set file permissions





Revision as of 09:42, 24 November 2020

Resource Management[1]

In computing, a system call (commonly abbreviated to syscall) is the programmatic way in which a computer program requests a service from the kernel of the operating system on which it is executed. This may include hardware-related services (for example, accessing a hard disk drive), creation and execution of new processes, and communication with integral kernel services such as process scheduling. System calls provide an essential interface between a process and the operating system.[2]


System calls happen at the operating system part of this diagram.


This diagram shows a simplified representation of a system call[3].


System calls can be grouped roughly into six major categories:[12]

  1. Process control
  2. File management
    • create file, delete file
    • open, close
    • read, write, reposition
    • get/set file attributes
  3. Device management
    • request device, release device
    • read, write, reposition
    • get/set device attributes
    • logically attach or detach devices
  4. Information maintenance
    • get/set time or date
    • get/set system data
    • get/set process, file, or device attributes
  5. Communication
    • create, delete communication connection
    • send, receive messages
    • transfer status information
    • attach or detach remote devices
  6. Protection
    • get/set file permissions


Please click here for a list of system calls in Linux


References