Poging GOUD - Vrij
The Linux System Call Execution Model: An Insight
Open Source For You
|August 2024
This two-part series of articles focuses on the system call execution model in Linux based operating systems. This first part explains what system calls are, why they are required and the role of the glibc wrapper in system call execution. It then touches on the system call execution model from the Linux kernel perspective.
-
A system call is a request by a user space program (application) to interact with an OS executing in the kernel space. Basically, the user application invokes a system call when it requires access to the services that can only be accessed through a higher privilege mode — for example, creating a new task, doing network I/O or file I/O, or accessing hardware resources. These operations cannot be directly performed by the user space application; hence, operating systems like Linux provide a set of routines called system calls which are basically C functions executing in the kernel space.
When a user space program invokes a system call, there is a software interrupt (nowadays x86-64 provides syscall instruction for fast system call execution) and the mode switches from user space to kernel space (or more precisely, the privilege mode changes from lower to higher). Now the system call handler in the kernel space performs the required operation on behalf of the user space application and sends the response back to it.
We will see in detail in later sections as to how the user space to kernel space mode switching happens and how kernel space system call handlers are invoked. But first let’s examine the role of the standard C library in the execution of system calls.
Role of the C library When we say C library, the most commonly and widely distributed C library with a Linux based OS is glibc or GNU C library. This C library helps implement standard C functions and APIs like print(), scanf(), malloc(), fopen(), strcpy(), etc. These standard functions may or may not invoke system calls internally — for example, printf() internally invokes write(2)
Dit verhaal komt uit de August 2024-editie van Open Source For You.
Abonneer u op Magzter GOLD voor toegang tot duizenden zorgvuldig samengestelde premiumverhalen en meer dan 9000 tijdschriften en kranten.
Bent u al abonnee? Aanmelden
MEER VERHALEN VAN Open Source For You
Open Source For You
The Fragile Edge: Chaos Engineering for Reliable IoT
Chaos engineering is a great way of detecting possible failures in loT devices. This technology has evolved well for testing cloud failure, but open source communities are still working towards building an efficient chaos engineering toolkit for testing loT devices.
9 mins
November 2025
Open Source For You
What Open Source RAG can do for Modern Enterprises
Follow this guide to leverage your enterprise data with a self-hosted AI assistant, powered by the semantic search capabilities of open source vector databases.
10 mins
November 2025
Open Source For You
ASF elevates Apache DevLake and Grails to top-level status
The Apache Software Foundation (ASF) has announced that Apache DevLake and Apache Grails have graduated to Top-Level Projects (TLPs), signalling maturity, community growth, and operational independence.
1 min
November 2025
Open Source For You
Anthropic releases Claude Agent SDK alongside Claude Sonnet 4.5
Anthropic has unveiled Claude Sonnet 4.5, its most powerful code-focused AI model to date, alongside the launch of the Claude Agent SDK, an open source toolkit that allows developers to build autonomous agents powered by Claude's architecture.
1 min
November 2025
Open Source For You
How AI is Impacting the Internet of Things
AI and IoT are complementing each other to build powerful and secure connected devices.
3 mins
November 2025
Open Source For You
Building Future-ready AI Hardware with Neuromorphic Computing and Sensing
If machines could learn and adapt like us, what doors would that open? Neuromorphic systems are not just mimicking the brain, they are setting the stage for AI that learns, senses, and evolves, just like we do.
3 mins
November 2025
Open Source For You
Open Source MLOps Tools: Ideal for Managing ML Data Workflows
MLOps adds automation, organisation and reliability to the machine learning lifecycle. Open source MLOps tools do a great job of helping build a machine learning model, with each tool tackling a distinct challenge.
6 mins
November 2025
Open Source For You
Google open sources MCP server for analysing ads data
Google has officially open sourced the Google Ads API Model Context Protocol (MCP) server, now available on GitHub.
1 min
November 2025
Open Source For You
Popular Simulation Platforms for the Internet of Vehicles
In these days of traffic congestion and autonomous driving, software that connects pedestrians and vehicles with governing bodies is the need of the hour. Open source simulation platforms for the Internet of Vehicles are enabling just that.
3 mins
November 2025
Open Source For You
Building an IoT Product? Use OpenRemote
OpenRemote, the open source IoT platform, helps businesses and developers innovate while lowering expenses and enabling complete control over their connected products.
5 mins
November 2025
Listen
Translate
Change font size
