Prøve GULL - Gratis

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.

The Linux System Call Execution Model: An Insight

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.

imageRole 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)

FLERE HISTORIER FRA Open Source For You

Open Source For You

Open Source For You

A Simple System that Uses Duplicati for Backing Up Data

The open source based data backup system outlined here can be really useful for a small office home office setup. Learn how to set up Duplicati on Windows, back up data to a Linux server, schedule daily backups, secure them with encryption, restore files when needed, and receive email notifications.

time to read

9 mins

August 2025

Open Source For You

Lisp for Robotics: Implementing Graph Traversal

Created in 1959 by John McCarthy, Lisp is a programming language designed to manipulate symbolic data easily, which is a key characteristic of AI. This language is still used for prototyping and to demonstrate different AI concepts. Here's a short tutorial on how it can help to implement three graph traversal algorithms.

time to read

5 mins

August 2025

Open Source For You

LibreOffice 25.2.5 is stable and reliable after 63 bug fixes

The Document Foundation has officially released LibreOffice 25.2.5, the fifth maintenance update in the LibreOffice 25.2 series.

time to read

1 min

August 2025

Open Source For You

Open Source For You

The Evolution of PostgreSQL in the Age of AI

PostgreSQL, enhanced with the pgvector extension, brings semantic search capabilities into a traditional SQL environment. With support for both structured queries and Al-driven search, pgvector enables developers to build intelligent, cost-effective applications within a familiar ecosystem, positioning PostgreSQL as a future-ready, Al-native database. Let's learn more....

time to read

5 mins

August 2025

Open Source For You

Open Source For You

Calico: Open source platform for Kubernetes networking, security, and observability is in version 3.30

Calico is an open source, unified platform that integrates networking, security, and observability for Kubernetes environments—whether deployed in the cloud, on-premises, or at the edge.

time to read

1 min

August 2025

Open Source For You

Open Source For You

Red Hat launches RHEL for Business Developers

Red Hat has announced Red Hat Enterprise Linux for Business Developers, a new self-service offering aimed at simplifying access to its flagship enterprise Linux platform for development and testing.

time to read

1 min

August 2025

Open Source For You

Open Source For You

Data Governance in the Digital Era: An Overview

Data governance plays a critical role in ensuring effective data management in an organisation. Businesses who invest in it are at a definite advantage over those who don't.

time to read

7 mins

August 2025

Open Source For You

Open Source For You

Shape the Success of Your Business with Smart Data Management and Security Practices

In today's world, data is a company's best asset, if used well. Also, data management and data security are no longer merely good business practices - they are critical to the success of an organisation.

time to read

6 mins

August 2025

Open Source For You

Wireshark 4.4.8 comes with updated protocol support and key bug fixes

The Wireshark team has announced the release of Wireshark 4.4.8, the eighth maintenance update in the 4.4 stable series of the world's most popular open source network protocol analyser.

time to read

1 min

August 2025

Open Source For You

Open Source For You

HealSphere: An Open Source-Based Mental Health Support Platform

This real-world CI/CD implementation has been developed using open source tools to deploy a modular mental health support platform.

time to read

11 mins

August 2025

Listen

Translate

Share

-
+

Change font size