System call, the Glossary
In computing, a system call (commonly abbreviated to syscall) is the programmatic way in which a computer program requests a service from the operating system on which it is executed.[1]
Table of Contents
107 relations: Abstraction (computer science), Address space, AMD, API, Application binary interface, Assembly language, C (programming language), C standard library, C++, Call gate (Intel), Call stack, Calling convention, Close (system call), Complex instruction set computer, Computer network, Computer program, Context switch, CP-67, CPU modes, DOS API, DOS/360 and successors, Embedded system, Exec (system call), Exit (system call), Exokernel, Fork (system call), Framebuffer, FreeBSD, Ftrace, Function (computer programming), Garbage collection (computer science), Glibc, Glossary of computer science, Hard disk drive, High-level programming language, HP-UX, IA-32, IA-64, IBM System/360, Instruction set architecture, INT (x86 instruction), Intel, Interrupt, IOS, IRIX, Kernel (operating system), KernelTrap, Kill (command), Library (computing), Linux, ... Expand index (57 more) »
- System calls
Abstraction (computer science)
In software engineering and computer science, abstraction is the process of generalizing concrete details, such as attributes, away from the study of objects and systems to focus attention on details of greater importance.
See System call and Abstraction (computer science)
Address space
In computing, an address space defines a range of discrete addresses, each of which may correspond to a network host, peripheral device, disk sector, a memory cell or other logical or physical entity.
See System call and Address space
AMD
Advanced Micro Devices, Inc. (AMD) is an American multinational corporation and fabless semiconductor company based in Santa Clara, California, that designs, develops and sells computer processors and related technologies for business and consumer markets.
API
An is a way for two or more computer programs or components to communicate with each other. System call and API are application programming interfaces.
Application binary interface
In computer software, an application binary interface (ABI) is an interface between two binary program modules. System call and application binary interface are application programming interfaces and operating system technology.
See System call and Application binary interface
Assembly language
In computer programming, assembly language (alternatively assembler language or symbolic machine code), often referred to simply as assembly and commonly abbreviated as ASM or asm, is any low-level programming language with a very strong correspondence between the instructions in the language and the architecture's machine code instructions.
See System call and Assembly language
C (programming language)
C (pronounced – like the letter c) is a general-purpose programming language.
See System call and C (programming language)
C standard library
The C standard library or libc is the standard library for the C programming language, as specified in the ISO C standard.
See System call and C standard library
C++
C++ (pronounced "C plus plus" and sometimes abbreviated as CPP) is a high-level, general-purpose programming language created by Danish computer scientist Bjarne Stroustrup.
Call gate (Intel)
A call gate is a mechanism in Intel's x86 architecture for changing the privilege level of a process when it executes a predefined function call using a CALL FAR instruction.
See System call and Call gate (Intel)
Call stack
In computer science, a call stack is a stack data structure that stores information about the active subroutines of a computer program.
See System call and Call stack
Calling convention
In computer science, a calling convention is an implementation-level (low-level) scheme for how subroutines or functions receive parameters from their caller and how they return a result.
See System call and Calling convention
Close (system call)
A close system call is a system call used to close a file descriptor by the kernel. System call and close (system call) are system calls.
See System call and Close (system call)
Complex instruction set computer
A complex instruction set computer (CISC) is a computer architecture in which single instructions can execute several low-level operations (such as a load from memory, an arithmetic operation, and a memory store) or are capable of multi-step operations or addressing modes within single instructions.
See System call and Complex instruction set computer
Computer network
A computer network is a set of computers sharing resources located on or provided by network nodes.
See System call and Computer network
Computer program
A computer program is a sequence or set of instructions in a programming language for a computer to execute.
See System call and Computer program
Context switch
In computing, a context switch is the process of storing the state of a process or thread, so that it can be restored and resume execution at a later point, and then restoring a different, previously saved, state.
See System call and Context switch
CP-67
CP-67 is a hypervisor, or Virtual Machine Monitor, from IBM for its System/360 Model 67 computer.
CPU modes
CPU modes (also called processor modes, CPU states, CPU privilege levels and other names) are operating modes for the central processing unit of most computer architectures that place restrictions on the type and scope of operations that can be performed by instructions being executed by the CPU.
DOS API
The DOS API is an API which originated with 86-DOS and is used in MS-DOS/PC DOS and other DOS-compatible operating systems.
DOS/360 and successors
Disk Operating System/360, also DOS/360, or simply DOS, is the discontinued first member of a sequence of operating systems for IBM System/360, System/370 and later mainframes.
See System call and DOS/360 and successors
Embedded system
An embedded system is a computer system—a combination of a computer processor, computer memory, and input/output peripheral devices—that has a dedicated function within a larger mechanical or electronic system.
See System call and Embedded system
Exec (system call)
In computing, exec is a functionality of an operating system that runs an executable file in the context of an already existing process, replacing the previous executable. System call and exec (system call) are system calls.
See System call and Exec (system call)
Exit (system call)
On many computer operating systems, a computer process terminates its execution by making an exit system call.
See System call and Exit (system call)
Exokernel
Exokernel is an operating system kernel developed by the MIT Parallel and Distributed Operating Systems group, and also a class of similar operating systems.
Fork (system call)
In computing, particularly in the context of the Unix operating system and its workalikes, fork is an operation whereby a process creates a copy of itself. System call and fork (system call) are system calls.
See System call and Fork (system call)
Framebuffer
A framebuffer (frame buffer, or sometimes framestore) is a portion of random-access memory (RAM) containing a bitmap that drives a video display.
See System call and Framebuffer
FreeBSD
FreeBSD is a free and open-source Unix-like operating system descended from the Berkeley Software Distribution (BSD).
Ftrace
ftrace (Function Tracer) is a tracing framework for the Linux kernel.
Function (computer programming)
In computer programming, a function, procedure, method, subroutine, routine, or subprogram is a callable unit of software logic that has a well-defined interface and behavior and can be invoked multiple times.
See System call and Function (computer programming)
Garbage collection (computer science)
In computer science, garbage collection (GC) is a form of automatic memory management.
See System call and Garbage collection (computer science)
Glibc
The GNU C Library, commonly known as glibc, is the GNU Project implementation of the C standard library.
Glossary of computer science
This glossary of computer science is a list of definitions of terms and concepts used in computer science, its sub-disciplines, and related fields, including terms relevant to software, data science, and.
See System call and Glossary of computer science
Hard disk drive
A hard disk drive (HDD), hard disk, hard drive, or fixed disk is an electro-mechanical data storage device that stores and retrieves digital data using magnetic storage with one or more rigid rapidly rotating platters coated with magnetic material.
See System call and Hard disk drive
High-level programming language
In computer science, a high-level programming language is a programming language with strong abstraction from the details of the computer.
See System call and High-level programming language
HP-UX
HP-UX (from "Hewlett Packard Unix") is Hewlett Packard Enterprise's proprietary implementation of the Unix operating system, based on Unix System V (initially System III) and first released in 1984.
IA-32
IA-32 (short for "Intel Architecture, 32-bit", commonly called i386) is the 32-bit version of the x86 instruction set architecture, designed by Intel and first implemented in the 80386 microprocessor in 1985.
IA-64
IA-64 (Intel Itanium architecture) is the instruction set architecture (ISA) of the discontinued Itanium family of 64-bit Intel microprocessors.
IBM System/360
The IBM System/360 (S/360) is a family of mainframe computer systems that was announced by IBM on April 7, 1964, and delivered between 1965 and 1978. It was the first family of computers designed to cover both commercial and scientific applications and a complete range of applications from small to large.
See System call and IBM System/360
Instruction set architecture
In computer science, an instruction set architecture (ISA) is an abstract model that generally defines how software controls the CPU in a computer or a family of computers.
See System call and Instruction set architecture
INT (x86 instruction)
INT is an assembly language instruction for x86 processors that generates a software interrupt.
See System call and INT (x86 instruction)
Intel
Intel Corporation is an American multinational corporation and technology company headquartered in Santa Clara, California, and incorporated in Delaware.
Interrupt
In digital computers, an interrupt (sometimes referred to as a trap) is a request for the processor to interrupt currently executing code (when permitted), so that the event can be processed in a timely manner.
IOS
iOS (formerly iPhone OS) is a mobile operating system developed by Apple exclusively for its smartphones.
IRIX
IRIX is a discontinued operating system developed by Silicon Graphics (SGI) to run on the company's proprietary MIPS workstations and servers.
Kernel (operating system)
The kernel is a computer program at the core of a computer's operating system and generally has complete control over everything in the system.
See System call and Kernel (operating system)
KernelTrap
KernelTrap was a computing news website which covered topics related to the development of free and open source operating system kernels, and especially, the Linux kernel.
See System call and KernelTrap
Kill (command)
In computing, kill is a command that is used in several popular operating systems to send signals to running processes.
See System call and Kill (command)
Library (computing)
In computer science, a library is a collection of read-only resources that is leveraged during software development to implement a computer program. System call and library (computing) are operating system technology.
See System call and Library (computing)
Linux
Linux is both an open-source Unix-like kernel and a generic name for a family of open-source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991, by Linus Torvalds.
Linux distribution
A Linux distribution (often abbreviated as distro) is an operating system made from a software collection that includes the Linux kernel and often a package management system.
See System call and Linux distribution
Linux kernel
The Linux kernel is a free and open source, UNIX-like kernel that is used in many computer systems worldwide.
See System call and Linux kernel
Linux kernel interfaces
The Linux kernel provides multiple interfaces to user-space and kernel-mode code that are used for varying purposes and that have varying properties by design.
See System call and Linux kernel interfaces
Loader (computing)
In computer systems a loader is the part of an operating system that is responsible for loading programs and libraries.
See System call and Loader (computing)
MacOS
macOS, originally Mac OS X, previously shortened as OS X, is an operating system developed and marketed by Apple since 2001.
Macro (computer science)
In computer programming, a macro (short for "macro instruction") is a rule or pattern that specifies how a certain input should be mapped to a replacement output.
See System call and Macro (computer science)
Memory management
Memory management is a form of resource management applied to computer memory. System call and memory management are operating system technology.
See System call and Memory management
Microsoft Windows
Microsoft Windows is a product line of proprietary graphical operating systems developed and marketed by Microsoft.
See System call and Microsoft Windows
Minicomputer
A minicomputer, or colloquially mini, is a type of smaller general-purpose computer developed in the mid-1960s and sold at a much lower price than mainframe and mid-size computers from IBM and its direct competitors.
See System call and Minicomputer
Modularity
Broadly speaking, modularity is the degree to which a system's components may be separated and recombined, often with the benefit of flexibility and variety in use.
See System call and Modularity
Multics
Multics ("MULTiplexed Information and Computing Service") is an influential early time-sharing operating system based on the concept of a single-level memory.
Multithreading (computer architecture)
In computer architecture, multithreading is the ability of a central processing unit (CPU) (or a single core in a multi-core processor) to provide multiple threads of execution.
See System call and Multithreading (computer architecture)
MVS
Multiple Virtual Storage, more commonly called MVS, is the most commonly used operating system on the System/370, System/390 and IBM Z IBM mainframe computers.
NetBSD
NetBSD is a free and open-source Unix-like operating system based on the Berkeley Software Distribution (BSD).
Open (system call)
For most file systems, a program initializes access to a file in a file system using the open system call. System call and open (system call) are system calls.
See System call and Open (system call)
OpenBSD
OpenBSD is a security-focused, free and open-source, Unix-like operating system based on the Berkeley Software Distribution (BSD).
Operating system
An operating system (OS) is system software that manages computer hardware and software resources, and provides common services for computer programs.
See System call and Operating system
Oracle Solaris
Solaris is a proprietary Unix operating system originally developed by Sun Microsystems.
See System call and Oracle Solaris
OS/360 and successors
OS/360, officially known as IBM System/360 Operating System, is a discontinued batch processing operating system developed by IBM for their then-new System/360 mainframe computer, announced in 1964; it was influenced by the earlier IBSYS/IBJOB and Input/Output Control System (IOCS) packages for the IBM 7090/7094 and even more so by the PR155 Operating System for the IBM 1410/7010 processors.
See System call and OS/360 and successors
PDP-11
The PDP–11 is a series of 16-bit minicomputers sold by Digital Equipment Corporation (DEC) from 1970 into the late 1990s, one of a set of products in the Programmed Data Processor (PDP) series.
Plan 9 from Bell Labs
Plan 9 from Bell Labs is a distributed operating system which originated from the Computing Science Research Center (CSRC) at Bell Labs in the mid-1980s and built on UNIX concepts first developed there in the late 1960s.
See System call and Plan 9 from Bell Labs
POSIX
The Portable Operating System Interface (POSIX) is a family of standards specified by the IEEE Computer Society for maintaining compatibility between operating systems. System call and POSIX are application programming interfaces.
Process (computing)
In computing, a process is the instance of a computer program that is being executed by one or many threads. System call and process (computing) are operating system technology.
See System call and Process (computing)
Processor register
A processor register is a quickly accessible location available to a computer's processor.
See System call and Processor register
Procfs
The proc filesystem (procfs) is a special filesystem in Unix-like operating systems that presents information about processes and other system information in a hierarchical file-like structure, providing a more convenient and standardized method for dynamically accessing process data held in the kernel than traditional tracing methods or direct access to kernel memory.
Protection ring
In computer science, hierarchical protection domains, often called protection rings, are mechanisms to protect data and functionality from faults (by improving fault tolerance) and malicious behavior (by providing computer security). System call and protection ring are operating system technology.
See System call and Protection ring
Ptrace
ptrace is a system call found in Unix and several Unix-like operating systems.
Read (system call)
In modern POSIX compliant operating systems, a program that needs to access data from a file stored in a file system uses the read system call. System call and read (system call) are system calls.
See System call and Read (system call)
Reduced instruction set computer
In electronics and computer science, a reduced instruction set computer (RISC) is a computer architecture designed to simplify the individual instructions given to the computer to accomplish tasks.
See System call and Reduced instruction set computer
Scheduling (computing)
In computing, scheduling is the action of assigning resources to perform tasks. System call and scheduling (computing) are operating system technology.
See System call and Scheduling (computing)
Service Request Block
A Service Request Block (SRB) is a data structure of MVS/370 and successor versions of IBM mainframe operating systems employed mainly, but not exclusively, by the Start Input/Output interface.
See System call and Service Request Block
Signal (IPC)
Signals are standardized messages sent to a running program to trigger specific behavior, such as quitting or error handling.
See System call and Signal (IPC)
Software portability
Software portability is a design objective for source code to be easily made to run on different platforms.
See System call and Software portability
Status register
A status register, flag register, or condition code register (CCR) is a collection of status flag bits for a processor.
See System call and Status register
Strace
strace is a diagnostic, debugging and instructional userspace utility for Linux.
Supervisor Call instruction
A Supervisor Call instruction (SVC) is a hardware instruction used by the System/360 family of IBM mainframe computers up to contemporary zSeries, the Amdahl 470V/5, 470V/6, 470V/7, 470V/8, 580, 5880, 5990M, and 5990A, and others; Univac 90/60, 90/70 and 90/80, and possibly others; the Fujitsu M180 (UP) and M200 (MP), and others; and is also used in the Hercules open source mainframe emulation software. System call and Supervisor Call instruction are system calls.
See System call and Supervisor Call instruction
System resource
In computing, a system resource, or simply resource, is any physical or virtual component of limited availability that is accessible to a computer.
See System call and System resource
Thread (computing)
In computer science, a thread of execution is the smallest sequence of programmed instructions that can be managed independently by a scheduler, which is typically a part of the operating system.
See System call and Thread (computing)
Thread pool
In computer programming, a thread pool is a software design pattern for achieving concurrency of execution in a computer program.
See System call and Thread pool
Truss (Unix)
is a system tool available on some Unix-like operating systems.
See System call and Truss (Unix)
TSS (operating system)
The IBM Time Sharing System TSS/360 is a discontinued early time-sharing operating system designed exclusively for a special model of the System/360 line of mainframes, the Model 67.
See System call and TSS (operating system)
Unix
Unix (trademarked as UNIX) is a family of multitasking, multi-user computer operating systems that derive from the original AT&T Unix, whose development started in 1969 at the Bell Labs research center by Ken Thompson, Dennis Ritchie, and others.
Unix-like
A Unix-like (sometimes referred to as UN*X or *nix) operating system is one that behaves in a manner similar to a Unix system, although not necessarily conforming to or being certified to any version of the Single UNIX Specification.
User space and kernel space
A modern computer operating system usually uses virtual memory to provide separate address spaces, or separate regions of a single address space, called user space and kernel space. System call and user space and kernel space are operating system technology.
See System call and User space and kernel space
VAX
VAX (an acronym for Virtual Address eXtension) is a series of computers featuring a 32-bit instruction set architecture (ISA) and virtual memory that was developed and sold by Digital Equipment Corporation (DEC) in the late 20th century.
VDSO
vDSO (virtual dynamic shared object) is a kernel mechanism for exporting a carefully selected set of kernel space routines to user space applications so that applications can call these kernel space routines in-process, without incurring the performance penalty of a mode switch from user mode to kernel mode that is inherent when calling these same kernel space routines by means of the system call interface.
VM (operating system)
VM (often: VM/CMS) is a family of IBM virtual machine operating systems used on IBM mainframes System/370, System/390, zSeries, System z and compatible systems, including the Hercules emulator for personal computers.
See System call and VM (operating system)
VSE (operating system)
VSEn (Virtual Storage Extended) is an operating system for IBM mainframe computers, the latest one in the DOS/360 lineage, which originated in 1965.
See System call and VSE (operating system)
Wait (system call)
In computer operating systems, a process (or task) may wait for another process to complete its execution. System call and wait (system call) are system calls.
See System call and Wait (system call)
Windows API
The Windows API, informally WinAPI, is the foundational application programming interface (API) that allows a computer program to access the features of the Microsoft Windows operating system in which the program is running.
See System call and Windows API
Windows Native API
The Native API is a lightweight application programming interface (API) used by Windows NT and user mode applications.
See System call and Windows Native API
Windows NT
Windows NT is a proprietary graphical operating system produced by Microsoft as part of its Windows product line, the first version of which, Windows NT 3.1, was released on July 27, 1993.
See System call and Windows NT
Wrapper function
A wrapper function is a function (another word for a subroutine) in a software library or a computer program whose main purpose is to call a second subroutine or a system call with little or no additional computation.
See System call and Wrapper function
Write (system call)
The write is one of the most basic routines provided by a Unix-like operating system kernel. System call and write (system call) are system calls.
See System call and Write (system call)
X86
x86 (also known as 80x86 or the 8086 family) is a family of complex instruction set computer (CISC) instruction set architectures initially developed by Intel based on the 8086 microprocessor and its 8-bit-external-bus variant, the 8088.
X86 memory segmentation
x86 memory segmentation refers to the implementation of memory segmentation in the Intel x86 computer instruction set architecture.
See System call and X86 memory segmentation
Z/OS
z/OS is a 64-bit operating system for IBM z/Architecture mainframes, introduced by IBM in October 2000.
See also
System calls
- Chroot
- Close (system call)
- Dup (system call)
- Entropy-supplying system calls
- Epoll
- Exec (system call)
- Execute Channel Program in Real Storage
- Fork (system call)
- FreeBSD jail
- Ioctl
- Kqueue
- Open (system call)
- Poll (Unix)
- Read (system call)
- Select (Unix)
- Splice (system call)
- Stat (system call)
- Supervisor Call instruction
- Sync (Unix)
- Sysctl
- System call
- Unlink (Unix)
- Wait (system call)
- Write (system call)
References
[1] https://en.wikipedia.org/wiki/System_call
Also known as INT 0x80, Syscall, System calls.
, Linux distribution, Linux kernel, Linux kernel interfaces, Loader (computing), MacOS, Macro (computer science), Memory management, Microsoft Windows, Minicomputer, Modularity, Multics, Multithreading (computer architecture), MVS, NetBSD, Open (system call), OpenBSD, Operating system, Oracle Solaris, OS/360 and successors, PDP-11, Plan 9 from Bell Labs, POSIX, Process (computing), Processor register, Procfs, Protection ring, Ptrace, Read (system call), Reduced instruction set computer, Scheduling (computing), Service Request Block, Signal (IPC), Software portability, Status register, Strace, Supervisor Call instruction, System resource, Thread (computing), Thread pool, Truss (Unix), TSS (operating system), Unix, Unix-like, User space and kernel space, VAX, VDSO, VM (operating system), VSE (operating system), Wait (system call), Windows API, Windows Native API, Windows NT, Wrapper function, Write (system call), X86, X86 memory segmentation, Z/OS.