Tag

kernel

1 views collected around this technical thread.

Deepin Linux
Deepin Linux
Jun 12, 2025 · Fundamentals

Unlocking Linux Kernel I/O: How the OS Handles High‑Performance Data Transfer

Linux kernel I/O mechanisms, from basic file operations and descriptors to advanced models like blocking, non‑blocking, multiplexed, signal‑driven, and asynchronous I/O, are explained in depth, covering their structures, system calls, caching strategies, and performance optimizations such as io_uring.

I/OSystems Programmingkernel
0 likes · 30 min read
Unlocking Linux Kernel I/O: How the OS Handles High‑Performance Data Transfer
Deepin Linux
Deepin Linux
Jun 11, 2025 · Fundamentals

How ARM+Linux Interrupts Power Efficient Computing: Deep Dive into Mechanisms

This article explains the role of the interrupt system in ARM‑based Linux platforms, covering hardware modes, vector tables, exception handling, GIC architecture, and kernel integration, and provides detailed code examples and optimization techniques for developers working on embedded and high‑performance systems.

ARMEmbedded SystemsGIC
0 likes · 47 min read
How ARM+Linux Interrupts Power Efficient Computing: Deep Dive into Mechanisms
Deepin Linux
Deepin Linux
Jun 10, 2025 · Fundamentals

How Linux Memory Reclamation Works: Zones, Swap, and Compression Explained

This article explains Linux's memory reclamation mechanisms, covering the role of memory as the system's bloodstream, the three reclamation paths (fast, direct, kswapd), zone watermarks, page cache structures, reverse mapping, and how swap and compression are used to keep the system stable under memory pressure.

Memory Reclamationkernellinux
0 likes · 52 min read
How Linux Memory Reclamation Works: Zones, Swap, and Compression Explained
Deepin Linux
Deepin Linux
Jun 9, 2025 · Operations

Mastering Linux Kernel Oops: Debugging Secrets Every Developer Should Know

This comprehensive guide explains what Linux kernel Oops errors are, why they occur, and provides step‑by‑step debugging techniques—including environment setup, kernel configuration, printk usage, BUG macros, GDB, objdump, and memory‑checking tools—to help developers quickly locate and fix Oops issues in custom kernel modules.

GDBOopsPrintk
0 likes · 48 min read
Mastering Linux Kernel Oops: Debugging Secrets Every Developer Should Know
Deepin Linux
Deepin Linux
May 31, 2025 · Fundamentals

Understanding the Linux CFS Scheduler: Architecture, Implementation, and Common Questions

This article explains the Linux Completely Fair Scheduler (CFS), covering its design goals, core concepts such as virtual runtime, weight, red‑black tree management, load‑balancing mechanisms, scheduling policies, and answers common questions about its operation and kernel code.

CFSOperating Systemkernel
0 likes · 23 min read
Understanding the Linux CFS Scheduler: Architecture, Implementation, and Common Questions
Deepin Linux
Deepin Linux
May 26, 2025 · Fundamentals

Understanding Linux Memory Management: Bootmem, Memblock, Buddy Allocator, and Slab Allocator

This article provides a comprehensive overview of Linux memory management, detailing the roles and mechanisms of the early boot memory allocator, the memblock subsystem, the buddy allocator for physical pages, and the slab allocator for small objects, including their data structures, algorithms, and practical usage scenarios.

BootmemBuddy AllocatorOperating System
0 likes · 72 min read
Understanding Linux Memory Management: Bootmem, Memblock, Buddy Allocator, and Slab Allocator
Deepin Linux
Deepin Linux
Apr 27, 2025 · Fundamentals

Understanding vhost/virtio: Handwritten Implementation and QEMU Backend Integration

This article explains how vhost/virtio solves virtual device communication bottlenecks, walks through a hand‑written implementation with shared memory and ring buffers, and details QEMU's backend driver creation, device realization, and the vhost‑user/vhost‑net interfaces that enable high‑performance virtual networking.

NetworkingQEMUVirtualization
0 likes · 40 min read
Understanding vhost/virtio: Handwritten Implementation and QEMU Backend Integration
Deepin Linux
Deepin Linux
Apr 16, 2025 · Fundamentals

Understanding Netlink: Linux IPC Mechanism, Data Structures, APIs and Development Guide

Netlink is a Linux‑specific inter‑process communication mechanism that provides asynchronous, full‑duplex, and multicast communication between user space and kernel space, offering advantages over traditional IPC methods and serving a wide range of networking, monitoring, and system‑management scenarios.

IPCNetlinkSocket API
0 likes · 54 min read
Understanding Netlink: Linux IPC Mechanism, Data Structures, APIs and Development Guide
Deepin Linux
Deepin Linux
Apr 11, 2025 · Fundamentals

Understanding ZRAM: Linux Memory Compression and Swap Optimization

This article explains the ZRAM technology in Linux, covering its principles, configuration steps, kernel integration, performance optimizations, and practical use cases for improving memory utilization on embedded devices, Android, and legacy PCs.

Memory Compressionkernellinux
0 likes · 24 min read
Understanding ZRAM: Linux Memory Compression and Swap Optimization
Deepin Linux
Deepin Linux
Apr 7, 2025 · Fundamentals

Understanding Linux Kernel Page Reclamation Mechanisms

This article explains how Linux manages memory through page reclamation, detailing the role of LRU algorithms, page classification, reverse mapping, direct and asynchronous reclaim paths, and the OOM killer, while providing code examples and practical tuning advice.

OOM KillerPage Reclamationkernel
0 likes · 62 min read
Understanding Linux Kernel Page Reclamation Mechanisms
Deepin Linux
Deepin Linux
Apr 5, 2025 · Fundamentals

Understanding Linux Kernel Reverse Mapping (RMAP): Concepts, Data Structures, and Implementation

This article explains the Linux kernel reverse‑mapping (RMAP) mechanism, covering its historical background, core concepts, key data structures such as anon_vma and anon_vma_chain, and the detailed workflow for page creation, fork handling, and page reclaim or migration, with full code examples.

Anonymous PagesRMAPReverse Mapping
0 likes · 27 min read
Understanding Linux Kernel Reverse Mapping (RMAP): Concepts, Data Structures, and Implementation
Deepin Linux
Deepin Linux
Mar 30, 2025 · Fundamentals

Understanding Linux Kernel Synchronization Mechanisms

This article explains how the Linux kernel ensures safe concurrent access to shared resources through various synchronization mechanisms such as atomic operations, spinlocks, mutexes, read‑write locks, and semaphores, illustrating their concepts, APIs, and practical usage with code examples.

Synchronizationatomic operationsconcurrency
0 likes · 42 min read
Understanding Linux Kernel Synchronization Mechanisms
Deepin Linux
Deepin Linux
Mar 29, 2025 · Fundamentals

Deep Dive into Linux task_struct: Core Data Structure for Process Management

This article provides a comprehensive overview of the Linux kernel's task_struct structure, detailing its key fields, process and thread identification, state definitions, memory and credential handling, kernel stack layout, and includes a practical kernel module example for iterating over all processes.

C++Process Managementkernel
0 likes · 41 min read
Deep Dive into Linux task_struct: Core Data Structure for Process Management
Refining Core Development Skills
Refining Core Development Skills
Mar 25, 2025 · Fundamentals

Understanding Linux Kernel Physical Memory Management and the memblock Allocator

Linux does not expose all physical memory to users; this article explains why the kernel reserves memory, detailing the early memblock allocator, crash kernel reservations, page structure overhead, and the handoff to the buddy system, illustrating how these mechanisms consume several hundred megabytes of RAM.

Crash KernelMemBlockPage Structures
0 likes · 15 min read
Understanding Linux Kernel Physical Memory Management and the memblock Allocator
Deepin Linux
Deepin Linux
Mar 24, 2025 · Fundamentals

Understanding Page Fault Handling and Virtual Memory Management in the uCore Kernel

This article explains how Linux-like operating systems use virtual memory and the MMU to map virtual addresses to physical memory, describes the data structures (vma_struct and mm_struct) used by uCore, details the page‑fault handling flow, classifies fault types, and shows how these mechanisms affect system performance.

Operating SystemVirtual Memorykernel
0 likes · 27 min read
Understanding Page Fault Handling and Virtual Memory Management in the uCore Kernel
Deepin Linux
Deepin Linux
Mar 18, 2025 · Fundamentals

Understanding the Linux Kernel Buddy Memory Allocation Algorithm

This article explains the Linux kernel buddy memory allocation algorithm, covering its basic principles, allocation and reclamation processes, key data structures, initialization steps, code examples, advantages and drawbacks, as well as its applications and evolution across kernel versions.

Buddy AlgorithmOperating Systemallocation
0 likes · 36 min read
Understanding the Linux Kernel Buddy Memory Allocation Algorithm
Deepin Linux
Deepin Linux
Mar 17, 2025 · Fundamentals

Understanding and Debugging Linux Kernel Oops Errors

This article explains what Linux kernel Oops messages are, distinguishes between BUG, Oops, and panic, outlines common causes, preparation steps, debugging tools, kernel configuration options, and provides a detailed case study with analysis and solutions for kernel Oops troubleshooting.

OopsOperating Systemdebugging
0 likes · 44 min read
Understanding and Debugging Linux Kernel Oops Errors
Deepin Linux
Deepin Linux
Mar 11, 2025 · Fundamentals

Understanding Linux Real‑Time Scheduling: Concepts, Data Structures, and Optimization Techniques

This article explains how Linux’s real‑time scheduler works, covering the underlying concepts, key kernel data structures such as rt_rq and rt_prio_array, the SCHED_FIFO and SCHED_RR policies, practical code examples, configuration APIs, and optimization tips for industrial and multimedia applications.

SCHED_FIFOSCHED_RRkernel
0 likes · 32 min read
Understanding Linux Real‑Time Scheduling: Concepts, Data Structures, and Optimization Techniques
Cognitive Technology Team
Cognitive Technology Team
Mar 3, 2025 · Fundamentals

Fundamentals of I/O Read/Write: Kernel and Process Buffers

This article explains the core principles of I/O read/write operations, detailing the data preparation and copying stages, the roles of kernel and user buffers, synchronization models, and performance optimizations such as double buffering, circular buffers, zero‑copy, read‑ahead, and delayed write.

BuffersI/OOperating System
0 likes · 7 min read
Fundamentals of I/O Read/Write: Kernel and Process Buffers
Deepin Linux
Deepin Linux
Feb 25, 2025 · Fundamentals

Understanding the Linux Network Packet Reception Process

This article provides a comprehensive, step‑by‑step explanation of how Linux receives network packets—from hardware DMA and interrupt handling through soft‑interrupt processing, kernel initialization, driver registration, and protocol‑stack traversal—culminating in delivery to the application layer via sockets.

NetworkingOperating SystemPacket Reception
0 likes · 28 min read
Understanding the Linux Network Packet Reception Process