1.2 KiB
title | tags | created | |
---|---|---|---|
Operating_system_API |
|
Wednesday, July 17, 2024 |
Operating system API
A user can interact with the operating system either via the GUI or the shell. (The UI is in fact an abstraction for interfacing with the shell.) When programs interact with the operating system they use the operating system's API.
Every OS has an API. This specification details how a program should interact with the OS, exposing functions, properties and data types.
Whether using the GUI or a terminal emulator, the shell translates the user's commands into API calls. The API the invokes internal operating system code to perform the action.
Example: opening a file
A user can use a file explorer and the mouse to open a file. However a running application doesn't have to do this. Instead it can call the OS API.
On a Unix-like system the applicaton would use the open
API function to open
the file:
open("foo.txt", 0_WRONLY|0_CREAT)
This command makes the action write-only and creates the file because it does not yet exist. When the user opens a file in their File Explorer, the application translates their graphical actions into this API call.