System calls: Difference between revisions

From Computer Science Wiki
No edit summary
No edit summary
 
(4 intermediate revisions by the same user not shown)
Line 1: Line 1:
[[file:resource.png|right|frame|Resource Management<ref>http://www.flaticon.com/</ref>]]
[[file:resource.png|right|frame|Resource Management<ref>http://www.flaticon.com/</ref>]]
[[File:Operating system placement.svg.png|frame|System calls happen between the application and operating system layer part of this diagram.|right]]
[[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>.|right]]
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.<ref>https://en.wikipedia.org/wiki/System_call</ref>
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.<ref>https://en.wikipedia.org/wiki/System_call</ref>


Line 33: Line 38:
#*get/set file permissions
#*get/set file permissions


[[File:Operating system placement.svg.png|frame|System calls happen at the operating system part of this diagram.|left]]
== Video ==
 
<html>
 
<iframe width="560" height="315" src="https://www.youtube.com/embed/xHu7qI1gDPA" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
 
</html>
[[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]
 




[https://man7.org/linux/man-pages/man2/syscalls.2.html Please click here for a list of system calls in Linux]





Latest revision as of 09:53, 24 November 2020

Resource Management[1]
System calls happen between the application and operating system layer part of this diagram.
This diagram shows a simplified representation of a system call[2].


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.[3]

Categories of system calls can be grouped as noted below[4]:

  1. Process control
    • create process (for example, fork (operating system)|fork on Unix-like systems, or NtCreateProcess 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
  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

Video



References