Tagged articles
39 articles
Page 1 of 1
IT Services Circle
IT Services Circle
Nov 8, 2025 · Fundamentals

Why System Calls Aren’t Just Ordinary Function Calls: A Deep Dive

System calls differ from regular function calls by using the CPU’s privileged syscall instruction, indirect indexing via registers, and a mode switch from user to kernel space, allowing the OS to control which kernel functions applications can invoke, while ordinary calls use direct addresses and stay in user mode.

CPUOperating SystemSystem Call
0 likes · 7 min read
Why System Calls Aren’t Just Ordinary Function Calls: A Deep Dive
Deepin Linux
Deepin Linux
Nov 1, 2025 · Fundamentals

Master Linux System Call Hooking: Theory, Security & Performance Tricks

This article explores Linux system call hooking by first reviewing syscall fundamentals, then detailing various Hook techniques—including function pointer replacement, LD_PRELOAD, and kernel modules—accompanied by C/C++ examples, and demonstrates practical applications in security monitoring, performance optimization, and debugging across real-world scenarios.

DebuggingHookSecurity
0 likes · 29 min read
Master Linux System Call Hooking: Theory, Security & Performance Tricks
Liangxu Linux
Liangxu Linux
Sep 1, 2025 · Fundamentals

What Happens Inside Linux When You Call fork()? A Deep Dive

This article explains how the fork() system call creates a duplicate process in Linux, walks through a simple code experiment, details the kernel steps—including task_struct creation, PID allocation, copy-on-write memory handling, and resource inheritance—and highlights common use cases, optimizations, and pitfalls.

Copy-on-WriteSystem Callc++
0 likes · 12 min read
What Happens Inside Linux When You Call fork()? A Deep Dive
Deepin Linux
Deepin Linux
Jul 25, 2025 · Information Security

How to Hook Linux System Calls for Real‑Time Monitoring and Security

This article explains the concepts and implementation of Linux system‑call hooking, covering both user‑space techniques like LD_PRELOAD and kernel‑space methods such as inline patches and kprobes, and shows how to monitor, filter, and secure calls without breaking normal program flow.

HookLD_PRELOADSystem Call
0 likes · 36 min read
How to Hook Linux System Calls for Real‑Time Monitoring and Security
Deepin Linux
Deepin Linux
Jun 26, 2025 · Fundamentals

How Memory I/O Powers Your Computer: From CPU to Cache Explained

This article demystifies memory I/O by exploring its hardware foundations, the interaction between CPU and memory controllers, the role of user and kernel spaces, timing parameters, cache hierarchies, and practical optimization strategies for databases, file systems, and server applications.

CPUCacheOperating System
0 likes · 33 min read
How Memory I/O Powers Your Computer: From CPU to Cache Explained
Liangxu Linux
Liangxu Linux
Apr 16, 2025 · Fundamentals

How Early Programmers Imagined the Birth of Operating Systems

A nostalgic narrative explains how low‑level hardware control led to the invention of system calls, kernel/user modes, and ultimately the operating system concept, illustrating the transition from direct hardware manipulation to abstracted library functions.

System Callhardware abstractionkernel-mode
0 likes · 5 min read
How Early Programmers Imagined the Birth of Operating Systems
Java Tech Enthusiast
Java Tech Enthusiast
Apr 16, 2025 · Fundamentals

The Origin of System Calls and Kernel/User Modes

In the 1950s programmers wrote directly to hardware, but the fragility of hard‑coded memory and I/O led to the invention of a privileged “expert” kernel mode and a restricted “novice” user mode, with a special instruction to switch, forming the basis of modern system calls and operating system protection.

AssemblyOperating SystemSystem Call
0 likes · 5 min read
The Origin of System Calls and Kernel/User Modes
Deepin Linux
Deepin Linux
Dec 22, 2024 · Fundamentals

Deep Dive into Linux Kernel task_struct: Structure, Fields, and Usage

This article provides a comprehensive analysis of the Linux kernel's task_struct data structure, detailing its members such as task IDs, parent‑child relationships, state flags, credentials, scheduling information, signal handling, memory and file management, kernel stack layout, and its role in process creation via system calls like fork.

System Callc++kernel
0 likes · 22 min read
Deep Dive into Linux Kernel task_struct: Structure, Fields, and Usage
Deepin Linux
Deepin Linux
Oct 23, 2024 · Fundamentals

Understanding Linux x86-64 System Call Implementation

This article provides a comprehensive overview of how Linux kernel system calls are implemented on the x86-64 architecture, covering the conceptual differences from regular function calls, register conventions, initialization processes, syscall tables, and practical assembly examples such as write and getpid.

AssemblyOS InternalsSystem Call
0 likes · 28 min read
Understanding Linux x86-64 System Call Implementation
Lobster Programming
Lobster Programming
Jul 7, 2024 · Backend Development

Understanding Linux poll(): Structure, Events, and How It Works

This article explains the Linux poll() system call, detailing its pollfd structure, event flags, parameters like nfds and timeout, return values, and step‑by‑step operation flow for reading and writing data, highlighting differences from select and its advantages on 32‑bit systems.

BackendIO MultiplexingSystem Call
0 likes · 5 min read
Understanding Linux poll(): Structure, Events, and How It Works
Deepin Linux
Deepin Linux
Mar 5, 2024 · Fundamentals

Understanding System Calls, APIs, and Their Relationship in Linux

This article explains the concept of system calls, how they provide a privileged interface between user programs and the kernel, distinguishes them from APIs and library functions, and describes their role in Linux operating‑system architecture and application development.

APIC libraryOperating System
0 likes · 19 min read
Understanding System Calls, APIs, and Their Relationship in Linux
Deepin Linux
Deepin Linux
Nov 9, 2023 · Fundamentals

Understanding Linux Memory Mapping (mmap): API, Implementation, and Use Cases

This article explains Linux memory mapping (mmap), covering its purpose, API parameters, different mapping types, internal kernel implementation, page‑fault handling, copy‑on‑write semantics, practical use cases, and includes a complete Objective‑C example demonstrating file mapping and manipulation.

Copy-on-WriteLinux kernelPage Fault
0 likes · 27 min read
Understanding Linux Memory Mapping (mmap): API, Implementation, and Use Cases
AntTech
AntTech
Jul 18, 2023 · Information Security

HODOR: Shrinking the Attack Surface on Node.js via System Call Limitation

Researchers from Shanghai Jiao Tong University, Ant Security Light-Year Lab, and Zhejiang University present HODOR, a system that reduces the attack surface of Node.js applications by generating fine-grained system‑call allowlists using Seccomp, achieving an average 80% reduction in exploit surface with negligible runtime overhead.

Node.jsSecuritySystem Call
0 likes · 12 min read
HODOR: Shrinking the Attack Surface on Node.js via System Call Limitation
Liangxu Linux
Liangxu Linux
Jun 27, 2023 · Fundamentals

Understanding Linux System Calls: How Applications Interact with the Kernel

This article explains what Linux system calls are, how they are implemented—including parameter preparation, mode switching, execution, and return—and lists common file, process, network, and device calls, highlighting their role in enabling applications to access kernel services.

System Callc++linux
0 likes · 7 min read
Understanding Linux System Calls: How Applications Interact with the Kernel
MaGe Linux Operations
MaGe Linux Operations
Dec 19, 2022 · Fundamentals

What Happens When You Delete an In‑Use File on Linux?

This article investigates Linux's handling of files that are in use—whether opened for reading, running as executables, or loaded as shared libraries—by experimenting with deletion, replacement, and modification, revealing how the kernel preserves file contents via inode references until all processes release them.

Shared LibrarySystem Callfile deletion
0 likes · 16 min read
What Happens When You Delete an In‑Use File on Linux?
Liangxu Linux
Liangxu Linux
Jul 22, 2022 · Fundamentals

How Linux Character Device Drivers Work: From Open Call to Kernel Integration

This guide explains what a Linux driver is, classifies character, block and network devices, walks through the open() system call flow from user space to the kernel’s VFS and driver list, and shows how to write, compile, and load a simple character device driver module.

Kernel ModuleSystem Callcharacter device
0 likes · 20 min read
How Linux Character Device Drivers Work: From Open Call to Kernel Integration
Architects' Tech Alliance
Architects' Tech Alliance
Dec 10, 2021 · Fundamentals

How Does Linux System Call I/O Work? A Deep Dive into Read/Write, Buffers, and Performance

The article explains Linux’s traditional system‑call I/O path, detailing how read() and write() trigger multiple CPU and DMA copies and context switches, describes read and write workflows, explores network and disk I/O, examines the Linux I/O stack, page cache, buffering strategies, zero‑copy, mmap and Direct I/O, and discusses performance trade‑offs.

BufferingDirect I/OI/O
0 likes · 13 min read
How Does Linux System Call I/O Work? A Deep Dive into Read/Write, Buffers, and Performance
Liangxu Linux
Liangxu Linux
Sep 5, 2021 · Fundamentals

Understanding Linux timerfd: From Procfs to Epoll Integration

This article explains the structure and operation of Linux timerfd, covering its representation in /proc, the timerfd_create/settime/gettime system calls, internal kernel structures, and how timerfd integrates with epoll for event-driven programming.

System Callepollfile descriptor
0 likes · 15 min read
Understanding Linux timerfd: From Procfs to Epoll Integration
Laravel Tech Community
Laravel Tech Community
Mar 5, 2021 · Backend Development

PHP chroot() Function: Changing the Root Directory

The PHP chroot() function changes the current process's root directory to a specified path, works only on supported systems in CLI/CGI/embedded SAPI with root privileges, returns TRUE on success or FALSE on failure, and is illustrated with a simple example.

$rootSystem Callchroot
0 likes · 2 min read
PHP chroot() Function: Changing the Root Directory
ITPUB
ITPUB
Mar 3, 2021 · Fundamentals

How Linux Starts Your Program: Inside execve, the Loader, and the Dynamic Linker

From the moment a user types a command in the shell to the final exit of the program, this article walks through Linux’s execution pipeline—including shell command parsing, fork, execve, kernel loading via load_elf_binary, the dynamic linker’s role, and the glibc startup sequence—illustrated with detailed diagrams and code snippets.

ShellSystem Calldynamic linker
0 likes · 11 min read
How Linux Starts Your Program: Inside execve, the Loader, and the Dynamic Linker
Liangxu Linux
Liangxu Linux
Feb 24, 2021 · Fundamentals

What Really Differentiates Linux and Windows Kernels?

An in‑depth look at the core differences between Linux and Windows kernels, covering kernel fundamentals, user‑ versus kernel‑space, system calls, Linux’s monolithic design with multitasking, SMP and ELF format, and Windows NT’s hybrid architecture with the PE executable format.

ELFPESystem Call
0 likes · 11 min read
What Really Differentiates Linux and Windows Kernels?
Laravel Tech Community
Laravel Tech Community
Sep 21, 2020 · Backend Development

PHP chgrp Function: Change File Group Ownership

The article explains PHP’s chgrp function, which changes a file’s group ownership, outlines its syntax, required parameters, permission restrictions, return values, and provides a complete PHP example demonstrating how to modify a file’s group and display the result.

BackendFile PermissionsPHP
0 likes · 2 min read
PHP chgrp Function: Change File Group Ownership
Alibaba Cloud Developer
Alibaba Cloud Developer
Jul 16, 2020 · Information Security

Unraveling Kernel Crashes: A Deep Dive into Memory Dump Analysis

This article explains why operating system and driver defects cause system hangs and reboots, introduces the methodology of memory dump analysis—including deadlock and exception techniques—and walks through a real Linux kernel panic case to illustrate how to trace, diagnose, and remediate such crashes.

Kernel PanicSecuritySystem Call
0 likes · 14 min read
Unraveling Kernel Crashes: A Deep Dive into Memory Dump Analysis
Sohu Tech Products
Sohu Tech Products
Jun 3, 2020 · Fundamentals

Understanding Linux System Call Mechanisms: Software Interrupts, Fast Syscall Instructions, and vDSO

Linux system calls provide the interface between user programs and the kernel, and this article explains the three implementation methods—software interrupts, fast syscall instructions (SYSENTER/SYSCALL), and the virtual dynamic shared object (vDSO)—detailing their operation, performance impact, and relevant assembly code examples.

System CallkernelvDSO
0 likes · 16 min read
Understanding Linux System Call Mechanisms: Software Interrupts, Fast Syscall Instructions, and vDSO
360 Zhihui Cloud Developer
360 Zhihui Cloud Developer
Nov 7, 2019 · Fundamentals

Unlocking Linux Memory: A Practical Guide to mmap and Its Real-World Uses

This article explains Linux’s virtual address space, the mmap system call, its prototype and typical applications—including shared file mapping, inter‑process communication, and file I/O optimization—while illustrating concepts with diagrams and code examples, and discusses alignment, copy‑on‑write, and memory swapping considerations.

Copy-on-WriteSystem CallVirtual Memory
0 likes · 9 min read
Unlocking Linux Memory: A Practical Guide to mmap and Its Real-World Uses
Efficient Ops
Efficient Ops
Jul 20, 2017 · Fundamentals

How Linux Init Switches from Kernel to User Mode: Inside kernel_execve

This article explains how the Linux init process (pid 1) transitions from kernel mode to user mode using kernel_execve and the int 0x80 system call, detailing the register changes, assembly flow, and verification experiment that reveal the privilege level switch.

System Callinit processkernel_execve
0 likes · 10 min read
How Linux Init Switches from Kernel to User Mode: Inside kernel_execve
ITPUB
ITPUB
Jun 22, 2017 · Fundamentals

How Does Linux’s Init Process Switch from Kernel to User Mode?

This article explains how the Linux init process (pid 1) transitions from kernel mode to user mode, detailing the role of kernel_thread, run_init_process, kernel_execve, the int 0x80 system call, register changes, and a practical experiment confirming the __USER_CS value.

AssemblySystem Callinit process
0 likes · 13 min read
How Does Linux’s Init Process Switch from Kernel to User Mode?
MaGe Linux Operations
MaGe Linux Operations
Apr 16, 2017 · Fundamentals

Unlocking Linux Memory: How mmap Works and When to Use It

This article explains the Linux mmap system call, its usage, flags, error handling, related calls like munmap and msync, two shared‑memory techniques, and the underlying virtual‑address and vm_area_struct mechanisms that enable memory mapping.

System Callmemory mappingmmap
0 likes · 16 min read
Unlocking Linux Memory: How mmap Works and When to Use It