Operating System | Introduction of System Call

In computing, a system call is the programmatic way in which a computer program requests a service from the kernel of the operating system it is executed on. A system call is a way for programs to interact with the operating system. A computer program makes a system call when it makes a request to the operating system’s kernel. System call provides the services of the operating system to the user programs via Application Program Interface(API). It provides an interface between a process and operating system to allow user-level processes to request services of the operating system. System calls are the only entry points into the kernel system. All programs needing resources must use system calls.

Services Provided by System Calls :

  1. Process creation and management
  2. Main memory management
  3. File Access, Directory and File system management
  4. Device handling(I/O)
  5. Protection
  6. Networking, etc.
  7. Types of System Calls : There are 5 different categories of system calls –

    1. Process control: end, abort, create, terminate, allocate and free memory.
    2. File management: create, open, close, delete, read file etc.
    3. Device management
    4. Information maintenance
    5. Communication

    Examples of Windows and Unix System Calls –

    Windows Unix
    Process Control CreateProcess() ExitProcess() WaitForSingleObject() fork() exit() wait()
    File Manipulation CreateFile() ReadFile() WriteFile() CloseHandle() open() read() write() close()
    Device Manipulation SetConsoleMode() ReadConsole() WriteConsole() ioctl() read() write()
    Information Maintenance GetCurrentProcessID() SetTimer() Sleep() getpid() alarm() sleep()
    Communication CreatePipe() CreateFileMapping() MapViewOfFile() pipe() shmget() mmap()
    Protection SetFileSecurity() InitlializeSecurityDescriptor() SetSecurityDescriptorGroup() chmod() umask() chown()

    Reference –http://www.cs.columbia.edu/~jae/4118/L02-intro2-osc-ch2.pdf

    My Personal Notes arrow_drop_up

    Check out this Author's contributed articles.

    If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

    Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.

    Improved By : manjit

    Article Tags :
    Practice Tags :


    Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.