eolas/zk/Operating_system_API.md
2024-07-17 08:00:04 +01:00

1.2 KiB

title tags created
Operating_system_API
operating-systems
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.

OS API diagram

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.