Difference between revisions of "System call (syscall)"

From wikieduonline
Jump to navigation Jump to search
 
(18 intermediate revisions by 2 users not shown)
Line 2: Line 2:
  
  
* [[ptrace]]
+
* <code>[[ptrace]]</code>
 +
* <code>[[unlink]]</code>: <code>[[rm]]</code>
 +
* <code>[[chroot]]</code>
 +
* <code>[[fork]]</code>
 +
* <code>[[futex]]</code>
  
 +
* <code>[[strace]] -c -f -p $PID</code>
  
 +
==Categories of system calls==
 +
System calls can be grouped roughly into six major categories:<ref>{{Cite book|title=Operating System Concepts|last=Silberschatz|first=Abraham|publisher=Wiley|others=Peter B Galvin; Greg Gagne|year=2018|isbn=9781119320913|edition=10th|location=Hoboken, NJ|pages=67|oclc=1004849022}}</ref>
 +
 +
:
 +
 +
# 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]])
 +
#*Terminate [[process]]: [[process_mrelease]](2), [[kill]]
 +
#*[[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 total system information (including time, date, computer name, enterprise etc.)
 +
#* get/set process, file, or device metadata (including author, opener, creation time and date, etc.)
 +
# Communication
 +
#* create, delete communication connection
 +
#* send, receive messages
 +
#* transfer status information
 +
#* attach or detach remote devices
 +
#Protection
 +
#*get/set file permissions
 +
 +
== Related terms ==
 +
* [[Linux commands]]
 +
* [[man]]
 +
* [[/var/log/audit/audit.log]]
  
 
== See also ==
 
== See also ==
* {{Dtrace}}
+
* {{syscall}}
 +
* {{perf}}
 
* {{Linux Kernel}}
 
* {{Linux Kernel}}
 +
 +
 +
[[Category:Computing]]

Latest revision as of 08:02, 26 June 2023

Categories of system calls[edit]

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

  1. Process control
  1. File management
    • create file, delete file
    • open, close
    • read, write, reposition
    • get/set file attributes
  2. Device management
    • request device, release device
    • read, write, reposition
    • get/set device attributes
    • logically attach or detach devices
  3. Information maintenance
    • get/set total system information (including time, date, computer name, enterprise etc.)
    • get/set process, file, or device metadata (including author, opener, creation time and date, etc.)
  4. Communication
    • create, delete communication connection
    • send, receive messages
    • transfer status information
    • attach or detach remote devices
  5. Protection
    • get/set file permissions

Related terms[edit]

See also[edit]

Advertising: