Tagged articles

Linux kernel

367 articles · Page 2 of 4
Liangxu Linux
Liangxu Linux
May 10, 2025 · Fundamentals

Single Linux Kernel Commit Delivers 40× Memory Allocation Speedup

A recent Intel‑driven Linux kernel test revealed that a single commit fixing THP‑PMD alignment boosted 1‑byte malloc throughput by 3889% (≈40×), highlighting how tiny memory‑management tweaks can dramatically improve performance despite being demonstrated on synthetic benchmarks.

Intel XeonLinux kernelTHP
0 likes · 6 min read
Single Linux Kernel Commit Delivers 40× Memory Allocation Speedup
Linux Kernel Journey
Linux Kernel Journey
Apr 23, 2025 · Industry Insights

Highlights from the 3rd eBPF Developer Conference: A Technical Recap

The 3rd eBPF Developer Conference held on April 19, 2025 at Xi'an University of Posts and Telecommunications featured 36 expert talks on eBPF advancements, network and security innovations, observability, performance optimization, a vibrant project marketplace, student projects, and provides video and PPT resources for the community.

Linux kernelOpen Sourceconference
0 likes · 7 min read
Highlights from the 3rd eBPF Developer Conference: A Technical Recap
Linux Kernel Journey
Linux Kernel Journey
Mar 30, 2025 · Fundamentals

Analyzing KVM Misc Device Initialization and Access on Linux

This article walks through the registration of the KVM misc device in the Linux 5.9 kernel for arm64, explains how /dev/kvm is created via misc_register, and demonstrates a user‑space program that opens the device and uses an ioctl to retrieve the KVM API version, with detailed code analysis.

ARM64KVMLinux kernel
0 likes · 13 min read
Analyzing KVM Misc Device Initialization and Access on Linux
Linux Kernel Journey
Linux Kernel Journey
Mar 26, 2025 · Fundamentals

Efficient Memory Management: Paging Mechanism in x86‑64 Architecture

This article explains how the x86‑64 paging mechanism maps virtual addresses to physical memory, detailing the required protection‑mode conditions, page‑table structures, control‑register settings, various paging modes (32‑bit, PAE, 4‑level, 5‑level), and provides concrete kernel code examples and address‑translation demonstrations.

4-level-pagingLinux kernelMemory Management
0 likes · 40 min read
Efficient Memory Management: Paging Mechanism in x86‑64 Architecture
Linux Code Review Hub
Linux Code Review Hub
Mar 22, 2025 · Fundamentals

Inside Linux inotify: How the Kernel Tracks File Changes

This article dissects Linux’s inotify mechanism, detailing the kernel data structures, system‑call flow, and functions that generate and deliver file‑system event notifications, complete with code walkthroughs and diagrams. It explains how read/write operations trigger event creation, how events are queued in inotify_device, and how user‑space processes retrieve them via read and poll interfaces.

File MonitoringLinux kernelSystem Calls
0 likes · 14 min read
Inside Linux inotify: How the Kernel Tracks File Changes
Deepin Linux
Deepin Linux
Mar 21, 2025 · Fundamentals

Understanding Memory Pools: Concepts, Implementations, and Practical Use Cases

This article explains the concept of memory pools, how they reduce allocation overhead and fragmentation compared to traditional malloc/new, describes various pool designs and Linux kernel APIs, provides multiple C and C++ implementations, and discusses performance benefits and typical application scenarios such as servers, real‑time and embedded systems.

C++Linux kernelMemory pool
0 likes · 40 min read
Understanding Memory Pools: Concepts, Implementations, and Practical Use Cases
Linux Code Review Hub
Linux Code Review Hub
Mar 19, 2025 · Operations

Mastering Linux Performance with ftrace: Theory, Features, and Real‑World Use Cases

This article explains why Linux dominates server workloads, introduces the built‑in ftrace tracing framework, details its diverse tracers, lightweight static instrumentation and stable design, shows how to configure and use it via debugfs, and demonstrates performance tuning and fault diagnosis with real examples while comparing it to systemTap and LTTng.

Linux kerneldebugfsftrace
0 likes · 33 min read
Mastering Linux Performance with ftrace: Theory, Features, and Real‑World Use Cases
ITPUB
ITPUB
Mar 17, 2025 · Fundamentals

How Does a PC Boot? From Power‑On to the First Linux Kernel Instruction

This article walks through the complete boot sequence—from the UEFI firmware that runs after power‑on, through the boot manager and BootOrder variables, to the systemd‑boot loader loading initrd and the Linux kernel, explaining each component and its role in detail.

FirmwareLinux kernelUEFI
0 likes · 12 min read
How Does a PC Boot? From Power‑On to the First Linux Kernel Instruction
Open Source Linux
Open Source Linux
Mar 12, 2025 · Fundamentals

How One Linux Kernel Patch Boosted Memory Allocation Speed by 40×

Recent testing of an Intel‑powered Linux kernel patch revealed that a single code change dramatically improved memory allocation throughput by nearly 40‑fold, highlighting the massive impact of fine‑tuned memory management optimizations and the importance of addressing THP and PMD alignment issues.

Linux kernelMemory ManagementTHP
0 likes · 5 min read
How One Linux Kernel Patch Boosted Memory Allocation Speed by 40×
Liangxu Linux
Liangxu Linux
Mar 9, 2025 · Fundamentals

How One Line of Code Boosted Linux Kernel Memory Allocation by 40×

A single commit to the Linux kernel aligned transparent huge pages with PMD boundaries, delivering a near‑40‑fold increase in 1‑byte malloc throughput and illustrating how precise memory‑management tweaks can dramatically improve system performance.

Linux kernelMemory ManagementTHP
0 likes · 5 min read
How One Line of Code Boosted Linux Kernel Memory Allocation by 40×
Linux Kernel Journey
Linux Kernel Journey
Mar 3, 2025 · Fundamentals

Understanding KVM Hyp Mode Memory Mapping Initialization

This article walks through the step‑by‑step initialization of KVM's hyp mode memory mapping on ARM64, covering EL2 register setup, identity mapping, page‑table allocation, stack preparation, and code section mappings required for a functional hypervisor environment.

ARM64EL2KVM
0 likes · 13 min read
Understanding KVM Hyp Mode Memory Mapping Initialization
Ubuntu
Ubuntu
Feb 28, 2025 · Industry Insights

Ubuntu 24.04 LTS vs 22.04: Disruptive New Features and Long-Term Support

Ubuntu 24.04 LTS (Noble Numbat) introduces a Flutter‑based installer, GNOME 46 desktop, Linux 6.8 kernel, PipeWire as the default audio server, Thunderbird 115 as the default mail client, enhanced AppArmor and frame‑pointer security, broader hardware support and an optional 12‑year Ubuntu Pro support window, marking a substantial upgrade over 22.04.

AppArmorFlutter installerGNOME 46
0 likes · 7 min read
Ubuntu 24.04 LTS vs 22.04: Disruptive New Features and Long-Term Support
Linux Kernel Journey
Linux Kernel Journey
Feb 27, 2025 · Cloud Native

Designing FUSE: From Kernel VFS to Userspace and JuiceFS Performance

This article explains the evolution of file system architecture from kernel‑level VFS to userspace via FUSE, reviews the historical role of NFS, details JuiceFS's implementation on top of FUSE, and presents benchmark results that demonstrate its high throughput and practical limitations.

FUSEJuiceFSLinux kernel
0 likes · 15 min read
Designing FUSE: From Kernel VFS to Userspace and JuiceFS Performance
21CTO
21CTO
Feb 24, 2025 · Backend Development

Why Rust Adoption Stalls in 2024 Despite Its Safety Edge

The 2024 Rust State Survey reveals improved developer productivity but persistent challenges like slow compilation, debugging difficulty, and limited industry adoption, highlighting concerns over complexity, low usage in tech, and the uncertain future of Rust in the Linux kernel.

2024 SurveyLinux kernelProgramming Language Adoption
0 likes · 6 min read
Why Rust Adoption Stalls in 2024 Despite Its Safety Edge
Linux Code Review Hub
Linux Code Review Hub
Feb 12, 2025 · Fundamentals

Stop Being a Linux Kernel Code Parrot: Embrace Reality‑First Understanding

The author, with over two decades of development experience, argues that many learners treat Linux kernel code as a rote exercise instead of mapping real‑world scheduling problems to code, and outlines essential questions about task_struct management, scheduling policies, CPU placement, fairness, and universal scheduler design.

CPU schedulingLinux kernelOperating Systems
0 likes · 5 min read
Stop Being a Linux Kernel Code Parrot: Embrace Reality‑First Understanding
Deepin Linux
Deepin Linux
Feb 7, 2025 · Fundamentals

Understanding ext4 Extent: Data Structures and B+‑Tree Mechanism

This article explains the purpose, design, and internal data structures of ext4 extents, describes how the B+‑tree indexes extents for efficient mapping of logical to physical blocks, and compares ext4’s extent mechanism with older file‑system addressing methods and other modern file systems.

B+TreeData StructuresExtent
0 likes · 37 min read
Understanding ext4 Extent: Data Structures and B+‑Tree Mechanism
Deepin Linux
Deepin Linux
Feb 3, 2025 · Backend Development

Understanding and Using io_uring for High‑Performance Asynchronous I/O in Linux

This article introduces Linux's io_uring framework, explains its design goals and advantages over traditional I/O models, details its core components and system calls, provides step‑by‑step implementation examples for file and network operations, and discusses performance comparisons and practical application scenarios.

Linux kernelhigh performanceio_uring
0 likes · 43 min read
Understanding and Using io_uring for High‑Performance Asynchronous I/O in Linux
Infra Learning Club
Infra Learning Club
Jan 20, 2025 · Fundamentals

How GPU Kernel Virtualization Works: A Deep Dive into the cgpu Project

This article explains the principles of GPU kernel virtualization by analyzing the cgpu project's source code, detailing kernel interception of device operations, the driver’s file_operations, module initialization and cleanup, procfs interfaces, scheduling logic, and compilation steps on Ubuntu 22.04.

GPU virtualizationKernel ModuleLinux kernel
0 likes · 5 min read
How GPU Kernel Virtualization Works: A Deep Dive into the cgpu Project
Liangxu Linux
Liangxu Linux
Jan 16, 2025 · Fundamentals

Building a Simple malloc and Mark‑Sweep GC for the Linux Kernel

This guide walks through creating a 32‑bit Linux‑kernel memory allocator using a free‑list, implementing morecore and add_to_free_list functions, and then adding a basic mark‑and‑sweep garbage collector that scans heap, BSS, data segments and the stack to reclaim unused blocks.

C programmingGarbage CollectionLinux kernel
0 likes · 12 min read
Building a Simple malloc and Mark‑Sweep GC for the Linux Kernel
ITPUB
ITPUB
Jan 14, 2025 · Information Security

How a Microsoft Patch Nearly Crashed Linux: Code Review, CFI, and Open‑Source Lessons

A Microsoft‑submitted performance patch for the x86_64 architecture was merged into Linux kernel 6.13 without maintainer acknowledgment, breaking control‑flow integrity and nearly causing a system‑wide failure, prompting swift emergency fixes from Intel and AMD engineers and sparking a broader discussion on open‑source code‑review practices.

CFICode ReviewLinux kernel
0 likes · 5 min read
How a Microsoft Patch Nearly Crashed Linux: Code Review, CFI, and Open‑Source Lessons
Architect's Guide
Architect's Guide
Jan 9, 2025 · Backend Development

Investigation and Resolution of Random Nacos Service Deregistration in a Spring Cloud Alibaba Microservice Cluster

This article details a week‑long investigation of intermittent Nacos service deregistration in a Spring Cloud Alibaba microservice environment, describing the background architecture, multiple hypothesis tests, diagnostic commands, kernel version mismatch, and the final fix by upgrading the Linux kernel.

Linux kernelMicroservicesNacos
0 likes · 7 min read
Investigation and Resolution of Random Nacos Service Deregistration in a Spring Cloud Alibaba Microservice Cluster
Deepin Linux
Deepin Linux
Jan 4, 2025 · Fundamentals

Early I/O Memory Mapping (early_ioremap) in the Linux Kernel

The article explains the purpose, implementation, and usage of early I/O memory mapping (early_ioremap) in the Linux kernel, detailing its initialization, fixmap foundations, code flow, and differences from regular ioremap, with examples and kernel source snippets.

I/OLinux kernelboot process
0 likes · 39 min read
Early I/O Memory Mapping (early_ioremap) in the Linux Kernel
Tencent Cloud Developer
Tencent Cloud Developer
Jan 3, 2025 · Operations

Deep Dive into Linux Kernel Page Cache Xarray: Problem, Analysis, and Optimizations

The article examines a long‑standing hidden bug in the Linux kernel’s page‑cache Xarray that caused occasional data loss with Large Folio support, details its discovery and fix by the TencentOS team, and shows how consolidating multiple tree walks into a single walk in Linux 6.10 reduced latency and improved performance by about ten percent.

Linux kernelbug fixkernel development
0 likes · 27 min read
Deep Dive into Linux Kernel Page Cache Xarray: Problem, Analysis, and Optimizations
Linux Kernel Journey
Linux Kernel Journey
Jan 1, 2025 · Backend Development

eBPF Tailcall: 6 Common Pitfalls and How to Detect Them

The article outlines six distinct kernel‑level bugs affecting the eBPF tailcall feature across multiple Linux versions, explains the underlying causes and the commits that fixed them, and introduces a detection tool to verify whether a running kernel is affected.

BPFLinux kernelbpf2bpf
0 likes · 7 min read
eBPF Tailcall: 6 Common Pitfalls and How to Detect Them
Deepin Linux
Deepin Linux
Dec 30, 2024 · Fundamentals

Understanding NUMA Node Detection and Memory Management in the Linux Kernel

This article explains the fundamentals of NUMA architecture, how Linux detects and represents NUMA nodes, the memory zone hierarchy, allocation policies, and practical techniques such as using numactl and taskset to bind processes for optimal performance on multi‑socket servers.

Linux kernelMemory ManagementNUMA
0 likes · 22 min read
Understanding NUMA Node Detection and Memory Management in the Linux Kernel
Linux Kernel Journey
Linux Kernel Journey
Dec 25, 2024 · Fundamentals

Stop Being a Linux Kernel Code Parrot: Think Like a Scheduler Designer

The author, with over two decades of development experience, argues that learning the Linux kernel requires understanding real-world scheduling problems rather than merely copying kernel code, and outlines key questions about task_struct management, priority, preemption, CPU placement, fairness, and universal scheduler design.

CPU schedulingLinux kerneloperating system fundamentals
0 likes · 4 min read
Stop Being a Linux Kernel Code Parrot: Think Like a Scheduler Designer
Liangxu Linux
Liangxu Linux
Dec 11, 2024 · Fundamentals

Why Do Processes Need Sleep? Inside Linux’s Sleep and Wake Mechanism

Processes must pause execution to wait for resources, and the Linux kernel provides sleep and wake mechanisms—implemented via functions like schedule_timeout_interruptible and try_to_wake_up—to efficiently relinquish CPU time, avoid busy‑waiting, and resume when resources become ready.

Linux kernelProcess Schedulingsleep
0 likes · 10 min read
Why Do Processes Need Sleep? Inside Linux’s Sleep and Wake Mechanism
Linux Kernel Journey
Linux Kernel Journey
Nov 25, 2024 · Fundamentals

Simulating MDIO Communication with GPIO on Linux

This guide explains why and how to implement MDIO over GPIO on a Linux system, covering MDIO fundamentals, Clause22/Clause45 frame structures, YT8521 PHY pinout, required kernel drivers, device‑tree configuration, log verification, and command‑line usage.

Device TreeEthernet PHYGPIO
0 likes · 8 min read
Simulating MDIO Communication with GPIO on Linux
Liangxu Linux
Liangxu Linux
Nov 17, 2024 · Operations

Why Processes Need Sleep and Wakeup: Linux Kernel Mechanisms Explained

Processes represent execution contexts that include code and resources; to avoid wasteful busy‑waiting, operating systems let them sleep and later wake them, using mechanisms like schedule_timeout_interruptible, timers, and try_to_wake_up, which the Linux kernel implements through specific state changes and scheduling logic.

Linux kernelProcess SchedulingSystem Programming
0 likes · 10 min read
Why Processes Need Sleep and Wakeup: Linux Kernel Mechanisms Explained
Deepin Linux
Deepin Linux
Nov 12, 2024 · Fundamentals

Understanding Linux Memory Barriers: Types, Usage, and Implementation

This article provides a comprehensive overview of Linux memory barriers, explaining why they are needed for correct ordering of memory operations on modern multi‑core CPUs, describing the different barrier types (read, write, full), their implementation in the kernel and Java, and illustrating their use in synchronization primitives and lock‑free data structures with code examples.

CPU architectureLinux kernelconcurrency
0 likes · 71 min read
Understanding Linux Memory Barriers: Types, Usage, and Implementation
Liangxu Linux
Liangxu Linux
Nov 4, 2024 · Fundamentals

Unlocking GNU C Extensions: Zero‑Length Arrays, Variable‑Length Arrays, and More

This guide explains key GNU C extensions—including zero‑length and variable‑length arrays, case ranges, statement expressions, typeof, variadic macros, designated initializers, built‑in functions, and attribute syntax—showing how they differ from standard ANSI C and how to use them safely in Linux kernel development.

C extensionsGNU CLinux kernel
0 likes · 10 min read
Unlocking GNU C Extensions: Zero‑Length Arrays, Variable‑Length Arrays, and More
Java Tech Enthusiast
Java Tech Enthusiast
Nov 4, 2024 · Fundamentals

Linux Kernel Patch Improves Performance by 2.6% in Intel Benchmark

Linus Torvalds merged a small patch into the Linux kernel that streamlines the 64‑bit copy_from_user() routine by skipping the costly barrier_nospec() and applying masked user‑address handling, delivering a 2.6% speedup on Intel’s “will it scale” per‑thread‑ops benchmark and slated for inclusion in the upcoming Linux 6.12 stable release.

Linux kernelbenchmarkcopy_from_user
0 likes · 4 min read
Linux Kernel Patch Improves Performance by 2.6% in Intel Benchmark
OPPO Kernel Craftsman
OPPO Kernel Craftsman
Nov 1, 2024 · Fundamentals

Highlights of the 19th China Linux Kernel Developers Conference (CLK 2024)

The 19th China Linux Kernel Developers Conference in Wuhan on October 26, 2024 attracted over 80,000 online viewers and nearly 400 developers, showcased five technical sub‑forums—from memory and storage I/O to virtualization and scheduling—featured AI‑focused kernel talks, announced a new open‑source innovation institute, and made all materials publicly available on GitHub.

AILinux kernelMemory Management
0 likes · 9 min read
Highlights of the 19th China Linux Kernel Developers Conference (CLK 2024)
vivo Internet Technology
vivo Internet Technology
Oct 30, 2024 · Fundamentals

vivo's Linux Kernel Innovation at the 19th China Linux Kernel Developer Conference

At the 19th China Linux Kernel Developer Conference, vivo unveiled nine open‑source innovations—including DMA‑BUF DIO for AI model loading, ZHP memory compression, EROFS and f2fs filesystem enhancements, and I/O optimizations—contributing significant performance gains and demonstrating its commitment to Linux kernel advancement worldwide.

DMA-BUFEROFSF2FS
0 likes · 6 min read
vivo's Linux Kernel Innovation at the 19th China Linux Kernel Developer Conference
360 Zhihui Cloud Developer
360 Zhihui Cloud Developer
Oct 28, 2024 · Operations

How Zero‑Intrusion eBPF Transforms TCP Network Monitoring and Troubleshooting

This article explains how zero‑intrusion eBPF technology enables detailed, non‑disruptive TCP network monitoring, covering data collection interfaces, aggregation methods, implementation steps, usage limitations, and practical installation and visualization guidance for improving network performance and fault analysis.

Linux kernelOperationseBPF
0 likes · 9 min read
How Zero‑Intrusion eBPF Transforms TCP Network Monitoring and Troubleshooting
Linux Kernel Journey
Linux Kernel Journey
Oct 13, 2024 · Fundamentals

Unveiling the TCP Connection Process: Inside the Linux Socket System Calls

This article dissects the Linux kernel's TCP connection workflow, explaining how the three‑way handshake prevents stale SYN packets, and walks through the socket(), bind(), listen() and connect() system calls with detailed code analysis of the underlying kernel functions and data structures.

Linux kernelTCPnetwork programming
0 likes · 42 min read
Unveiling the TCP Connection Process: Inside the Linux Socket System Calls
Linux Kernel Journey
Linux Kernel Journey
Sep 30, 2024 · Cloud Native

How to Eliminate the Per‑CPU Map in XDP TCP‑Option Parsing

This article walks through removing the per‑CPU map used to pass the TCP‑option offset in an XDP program, shows the required code changes, explains the verifier errors that arise, and presents the final fix using an int offset with a bitwise mask.

BPF verifierLinux kernelNetworking
0 likes · 8 min read
How to Eliminate the Per‑CPU Map in XDP TCP‑Option Parsing
Deepin Linux
Deepin Linux
Sep 28, 2024 · Fundamentals

Understanding io_uring: Linux Asynchronous I/O Framework and Its Implementation

This article provides a comprehensive overview of Linux's io_uring, explaining its design goals, shared‑memory mechanism, submission and completion queues, core system calls, performance advantages over traditional I/O models, typical use cases, and includes a complete example of a network server built with io_uring.

Linux kernelio_uringperformance
0 likes · 39 min read
Understanding io_uring: Linux Asynchronous I/O Framework and Its Implementation
BirdNest Tech Talk
BirdNest Tech Talk
Sep 26, 2024 · Operations

How to Trace Linux Packet Drops with eBPF and kfree_skb_reason

This article explains why packets are dropped in Linux, introduces the kfree_skb_reason API added in kernel 5.17, and shows step‑by‑step how to use bpftrace to capture drop reasons, five‑tuple details, and stack traces for precise network debugging.

Linux kernelbpftraceeBPF
0 likes · 9 min read
How to Trace Linux Packet Drops with eBPF and kfree_skb_reason
21CTO
21CTO
Sep 24, 2024 · Backend Development

Why Rust Could Revolutionize Linux Kernel Development – Insights from RustConf

At RustConf, Miguel Ojeda highlighted the challenges and optimism surrounding the Rust for Linux project, explaining how unstable Rust features, developer hesitancy, and industry interest shape the effort to make Rust a safe, second language for kernel development.

Linux kernelRustkernel development
0 likes · 5 min read
Why Rust Could Revolutionize Linux Kernel Development – Insights from RustConf
Liangxu Linux
Liangxu Linux
Sep 23, 2024 · Fundamentals

Why Did Real‑Time Linux Take 20 Years to Reach the Mainline Kernel?

After two decades of development, the PREEMPT_RT real‑time patch finally merged into the mainline Linux kernel, highlighting the technical, political, and funding challenges that delayed its inclusion and explaining the benefits of deterministic, low‑latency performance for critical systems.

Linux kernelPREEMPT_RTRTOS
0 likes · 10 min read
Why Did Real‑Time Linux Take 20 Years to Reach the Mainline Kernel?
Liangxu Linux
Liangxu Linux
Sep 17, 2024 · Fundamentals

Unlocking Automatic Module Initialization with Linux Kernel Initcall on STM32

This guide explains how to replicate Linux kernel's initcall mechanism in STM32 projects by using function‑pointer sections, modifying the linker script, and defining ordered initialization macros to replace sequential main‑function calls, enabling modular and loosely‑coupled code execution.

C++InitcallLinux kernel
0 likes · 8 min read
Unlocking Automatic Module Initialization with Linux Kernel Initcall on STM32
OPPO Kernel Craftsman
OPPO Kernel Craftsman
Sep 13, 2024 · Fundamentals

Call for Papers: 19th China Linux Kernel Developers Conference (CLK 2024)

The 19th China Linux Kernel Developers Conference (CLK 2024) in Wuhan on October 26 invites paper submissions from September 10‑25 on topics such as RISC‑V, ARM64, scheduling, memory, storage, networking, containers, AI, automotive and embedded Linux kernel optimization, with abstracts limited to 500 words and results announced September 30.

Linux kernelOS developmentOpen Source
0 likes · 4 min read
Call for Papers: 19th China Linux Kernel Developers Conference (CLK 2024)
Linux Kernel Journey
Linux Kernel Journey
Sep 12, 2024 · Fundamentals

Understanding Linux Memory Allocation: Fast Path vs. Slow Path in the Source Code

This article dissects the Linux kernel's page allocation mechanisms, explaining how alloc_pages() follows a fast‑path using low watermarks and falls back to a slow‑path that triggers kswapd, direct reclaim, and compaction, while also detailing the corresponding page‑freeing functions and their internal data structures.

Linux kernelbuddy allocatorcompaction
0 likes · 30 min read
Understanding Linux Memory Allocation: Fast Path vs. Slow Path in the Source Code
Deepin Linux
Deepin Linux
Sep 10, 2024 · Fundamentals

Comprehensive Embedded Software Interview Guide: Memory Management, IPC, DMA, Kernel Allocation, and Core Concepts

This article provides an extensive overview of embedded software fundamentals, covering heap vs. stack differences, wild pointers, DMA roles, inter‑process communication methods, memory allocation strategies, malloc vs. new, volatile usage, pointer concepts, Linux kernel locks, FreeRTOS mechanisms, stack overflow prevention, compilation stages, quick‑sort algorithm, header inclusion, CAN identifiers, struct memory optimization, STM32 interrupt handling, user‑to‑kernel transitions, and condition‑variable thundering‑herd effects.

C++CompilationDMA
0 likes · 121 min read
Comprehensive Embedded Software Interview Guide: Memory Management, IPC, DMA, Kernel Allocation, and Core Concepts
Linux Kernel Journey
Linux Kernel Journey
Sep 10, 2024 · Fundamentals

How BPF Powers the Linux sched_ext Scheduler: In‑Depth Implementation and Workflow

This article provides a comprehensive technical walkthrough of Linux's sched_ext scheduler extension, explaining how BPF enables custom scheduling policies, detailing the underlying CFS and EEVDF concepts, the new SCHED_EXT class, dispatch queues, kernel configuration, and practical code examples for building and testing BPF‑based schedulers.

BPFCFSEEVDF
0 likes · 19 min read
How BPF Powers the Linux sched_ext Scheduler: In‑Depth Implementation and Workflow
Deepin Linux
Deepin Linux
Sep 9, 2024 · Backend Development

Understanding epoll: Level‑Triggered vs Edge‑Triggered Modes and Kernel Implementation

This article explains the concepts of level‑triggered (LT) and edge‑triggered (ET) event notification in Linux epoll, describes epoll's core data structures such as the red‑black tree and ready‑list, details the three main APIs (epoll_create, epoll_ctl, epoll_wait), and examines the locking and internal kernel mechanisms that enable efficient I/O multiplexing.

I/O multiplexingLinux kerneledge-triggered
0 likes · 69 min read
Understanding epoll: Level‑Triggered vs Edge‑Triggered Modes and Kernel Implementation
Top Architecture Tech Stack
Top Architecture Tech Stack
Sep 9, 2024 · Information Security

A Developer’s Hidden Backdoor: MAC Address Modification Blocked by Intentional Code

The article recounts a real‑world incident where a device’s MAC address could not be changed because a previous engineer deliberately disabled the relevant function, discusses the discovery of the backdoor code, and examines the legal and ethical implications of such intentional vulnerabilities.

Code ReviewLinux kernelMAC address
0 likes · 4 min read
A Developer’s Hidden Backdoor: MAC Address Modification Blocked by Intentional Code
Liangxu Linux
Liangxu Linux
Aug 18, 2024 · Backend Development

Why Does the Thundering Herd Problem Still Appear with epoll? Deep Dive and Fixes

This article explains the thundering herd phenomenon in multi‑process/thread servers, details its performance costs, demonstrates the issue with accept() and epoll_wait() through C examples, explores thread‑level herd, and presents mitigation techniques such as accept mutexes, SO_REUSEPORT, and Nginx's handling.

Linux kernelSO_REUSEPORTServer Programming
0 likes · 20 min read
Why Does the Thundering Herd Problem Still Appear with epoll? Deep Dive and Fixes
Deepin Linux
Deepin Linux
Aug 16, 2024 · Fundamentals

Understanding Linux Kernel Oops, BUG, and Panic: Debugging Techniques and Tools

This article explains Linux kernel crash diagnostics, covering Oops messages, BUG and BUG_ON macros, the die() and panic() pathways, preparation steps for reproducing bugs, kernel configuration options for debugging, and useful memory‑debugging utilities such as MEMWATCH, YAMD, Electric Fence and strace.

Linux kernelOopsbug
0 likes · 26 min read
Understanding Linux Kernel Oops, BUG, and Panic: Debugging Techniques and Tools
OPPO Kernel Craftsman
OPPO Kernel Craftsman
Aug 9, 2024 · Fundamentals

Linux Kernel Memory Management Locks and Optimization Case Studies

The article examines Linux kernel 6.9 memory-management locks—PG_locked, lru_lock, mmap_lock, anon_vma rwsem, mapping i_mmap_rwsem, and shrinker_rwsem—explaining their roles and presenting eight community-driven optimizations such as per-memcg lru_lock, per-VMA locks, speculative faults, and lock-less shrinker techniques to improve concurrency and performance.

LRU LockLinux kernelMemory Management
0 likes · 24 min read
Linux Kernel Memory Management Locks and Optimization Case Studies
Deepin Linux
Deepin Linux
Aug 5, 2024 · Fundamentals

Understanding Linux Kernel Memory Pools and Their Implementation

This article explains the concept, benefits, and implementation details of memory pools in the Linux kernel, covering allocation functions, design principles, common strategies, and a thread‑safe C++ memory‑pool class with example code.

C++Linux kernelMemory pool
0 likes · 27 min read
Understanding Linux Kernel Memory Pools and Their Implementation
ByteDance SYS Tech
ByteDance SYS Tech
Aug 5, 2024 · Operations

How Netcap Uses eBPF to Trace Kernel Network Packets and Solve Drop Issues

Netcap, an open‑source eBPF‑based kernel network capture tool from ByteDance STE, lets developers trace packets across the entire Linux network stack, filter with tcpdump syntax, and extend functionality with custom filters, dramatically improving the efficiency of diagnosing kernel packet loss problems.

DebuggingLinux kerneleBPF
0 likes · 11 min read
How Netcap Uses eBPF to Trace Kernel Network Packets and Solve Drop Issues
Linux Code Review Hub
Linux Code Review Hub
Jul 25, 2024 · Fundamentals

How openEuler 24.03 LTS’s Dynamic Composite Page Boosts Memory Performance

The openEuler 24.03 LTS release introduces a dynamic composite page (large folio) that retains 4 KB base‑page compatibility while enabling 64 KB page performance gains, reducing TLB misses and memory overhead, and delivering double‑digit benchmark improvements for big‑data, Kafka, MySQL, I/O and memory‑allocation workloads.

ARM64Linux kernelMemory Management
0 likes · 11 min read
How openEuler 24.03 LTS’s Dynamic Composite Page Boosts Memory Performance
Linux Code Review Hub
Linux Code Review Hub
Jun 5, 2024 · Operations

Observing Virtio‑Net NIC Queues with eBPF: A Practical Guide

This article explains how to extend eBPF to make virtio‑net NIC queue metrics observable, walks through the front‑end send/receive flow, defines key queue indices, integrates the probes into the rtrace tool, and demonstrates fault detection with real‑time data.

Linux kernelNIC queueeBPF
0 likes · 17 min read
Observing Virtio‑Net NIC Queues with eBPF: A Practical Guide
Linux Code Review Hub
Linux Code Review Hub
Jun 3, 2024 · Fundamentals

SCHED_EXT: The Extensible Kernel Scheduler Class for Custom Scheduling

The article provides a detailed technical overview of Linux's new extensible scheduler class SCHED_EXT, explaining its architecture, eBPF‑based customization interfaces, core data structures, queue management, scheduling points, and a central‑scheduler example, while comparing it with traditional CFS and per‑CPU run‑queues.

EEVDFLinux kerneleBPF
0 likes · 17 min read
SCHED_EXT: The Extensible Kernel Scheduler Class for Custom Scheduling
OPPO Kernel Craftsman
OPPO Kernel Craftsman
May 24, 2024 · Fundamentals

Linux Kernel Preemption Mechanism: Principles, Implementation, and Performance Analysis

The article examines Linux 6.1’s preemption mechanism, explaining latency sources, the three preemption configurations (none, voluntary, full), the TIF_NEED_RESCHED flag and preempt_count tracking, and how preempt_enable/disable affect real‑time responsiveness, illustrated by a case where RT threads cannot preempt CFS due to disabled preemption in critical driver code.

Linux kernelOperating SystemsTIF_NEED_RESCHED
0 likes · 21 min read
Linux Kernel Preemption Mechanism: Principles, Implementation, and Performance Analysis
Deepin Linux
Deepin Linux
May 17, 2024 · Fundamentals

Comprehensive Overview of epoll Data Structures and Implementation in Linux

This article systematically explains epoll's core data structures—including a red‑black tree and a doubly linked ready list—its three main APIs, the kernel implementation details, thread‑safety mechanisms, ET vs. LT behavior, and how it improves over select/poll for high‑concurrency network programming.

I/O multiplexingLinux kerneledge-triggered
0 likes · 68 min read
Comprehensive Overview of epoll Data Structures and Implementation in Linux
21CTO
21CTO
Apr 18, 2024 · Artificial Intelligence

GPT‑6, VAR Models, and the Latest AI Breakthroughs Shaping Tech

The article surveys recent AI and tech developments, from Sam Altman's claim that GPT‑6 will become a universal tool and Baidu's new intelligent computing OS, to Peking University and ByteDance's VAR model outperforming diffusion models, plus updates on Boston Dynamics' Atlas robot, Linux kernel Kconfig, AMD Ryzen Pro CPUs, and SQLite 3.45.3.

Artificial IntelligenceDatabaseLinux kernel
0 likes · 11 min read
GPT‑6, VAR Models, and the Latest AI Breakthroughs Shaping Tech
Liangxu Linux
Liangxu Linux
Apr 5, 2024 · Fundamentals

Why Zero‑Length Arrays Matter in Linux Kernel Development

This article explains what zero‑length arrays are, how they are defined in C, why they appear frequently in the Linux kernel as flexible array members, and provides a complete kernel‑style implementation showing creation, expansion, and cleanup of a dynamically sized integer array.

C++Dynamic memory allocationFlexible array member
0 likes · 10 min read
Why Zero‑Length Arrays Matter in Linux Kernel Development
MaGe Linux Operations
MaGe Linux Operations
Mar 31, 2024 · Backend Development

Mastering Tomcat Performance: Key Tuning Parameters and Best Practices

This article explains how to optimize Tomcat by adjusting server.xml parameters such as maxThreads, acceptCount, maxConnections, and connectionTimeout, while also covering related Linux kernel settings, file descriptor limits, and JVM options to achieve balanced performance for both CPU‑bound and I/O‑bound workloads.

JVMLinux kernelTomcat
0 likes · 14 min read
Mastering Tomcat Performance: Key Tuning Parameters and Best Practices
Bin's Tech Cabin
Bin's Tech Cabin
Mar 28, 2024 · Backend Development

Why MappedByteBuffer Beats FileChannel (And When It Doesn’t) – Deep Linux Kernel Insights

This article examines the internal read/write mechanisms of Java's FileChannel and MappedByteBuffer on Linux kernel 5.4, compares their performance through detailed source analysis and benchmarks, and explains why MappedByteBuffer often outperforms FileChannel for small I/O but can be overtaken for larger transfers due to page‑fault and dirty‑page handling.

FileChannelLinux kernelMappedByteBuffer
0 likes · 28 min read
Why MappedByteBuffer Beats FileChannel (And When It Doesn’t) – Deep Linux Kernel Insights
Alibaba Cloud Big Data AI Platform
Alibaba Cloud Big Data AI Platform
Mar 18, 2024 · Operations

Build Pure‑C eBPF Projects with Native libbpf – No libbpf‑bootstrap Needed

This article walks through constructing pure‑C eBPF programs using the native libbpf library, covering kernel‑libbpf version mapping, environment setup for RPM and DEB systems, detailed Makefile analysis, embedding BPF objects via hexdump, and extending the approach to USDT and Uprobe tracing without relying on libbpf‑bootstrap.

C programmingLinux kernelSystem Tracing
0 likes · 40 min read
Build Pure‑C eBPF Projects with Native libbpf – No libbpf‑bootstrap Needed
OPPO Kernel Craftsman
OPPO Kernel Craftsman
Mar 1, 2024 · Mobile Development

GPU Frequency Scaling on Qualcomm Adreno Using the Linux devfreq Framework

Using Qualcomm’s Adreno GPU as a case study, the article explains how the Linux devfreq framework enables GPU frequency scaling by creating a kgsl devfreq device and an msm‑adreno‑tz governor, detailing their initialization, event handling, target‑frequency computation, and the kernel callbacks that apply the new rates.

AdrenoGPULinux kernel
0 likes · 5 min read
GPU Frequency Scaling on Qualcomm Adreno Using the Linux devfreq Framework
21CTO
21CTO
Feb 28, 2024 · Backend Development

What the 2023 Rust Survey Reveals About Global Adoption and Future Challenges

The 2023 Rust Survey shows modest growth in Rust usage worldwide, highlights China's 6% developer share, details tool preferences, uncovers concerns over complexity and performance, and outlines the community's top priorities for language improvements and ecosystem support.

Developer SurveyLinux kernelProgramming Language
0 likes · 7 min read
What the 2023 Rust Survey Reveals About Global Adoption and Future Challenges
Java Tech Enthusiast
Java Tech Enthusiast
Feb 17, 2024 · Information Security

Linux Kernel SandBox Mode (SBM) Patch Enhances Memory Safety

Huawei engineer Petr Tesarik submitted a Linux kernel patch that adds SandBox Mode (SBM), an API confining kernel code to predefined memory regions, using hardware paging and CPU privilege levels to isolate components, detect out‑of‑bounds accesses, recover from violations, terminate the sandbox and return error codes such as -EFAULT, enabling continued execution.

Linux kernelSandboxhardware isolation
0 likes · 2 min read
Linux Kernel SandBox Mode (SBM) Patch Enhances Memory Safety
OPPO Kernel Craftsman
OPPO Kernel Craftsman
Feb 2, 2024 · Fundamentals

Linux Shared Memory (shmem) Deep Dive: Architecture, Implementation, and Practice

Linux’s shmem subsystem provides hybrid anonymous/file‑backed pages that enable diverse shared‑memory scenarios—parent‑child communication, IPC, tmpfs, Android ashmem, and memfd—by using APIs such as shmem_file_setup, handling page faults through cache and swap mechanisms, and employing a specialized reclamation process to manage memory efficiently.

Linux kernelMemory ManagementVirtual Memory
0 likes · 10 min read
Linux Shared Memory (shmem) Deep Dive: Architecture, Implementation, and Practice
OPPO Kernel Craftsman
OPPO Kernel Craftsman
Jan 5, 2024 · Fundamentals

Read‑Write Semaphore (rw_semaphore) and Per‑CPU rwsem in the Linux Kernel (ARM64)

The article explains Linux kernel read‑write semaphores, detailing the classic rw_semaphore’s optimistic‑spinning and hand‑off mechanisms, then introduces the per‑CPU rwsem for ARM64, which replaces global counters with per‑CPU data and an RCU fast‑path to cut cache‑coherency traffic at the cost of losing optimistic spinning.

ARM64Linux kerneloptimistic spinning
0 likes · 12 min read
Read‑Write Semaphore (rw_semaphore) and Per‑CPU rwsem in the Linux Kernel (ARM64)
OPPO Kernel Craftsman
OPPO Kernel Craftsman
Dec 29, 2023 · Fundamentals

Overview of Linux Kernel Synchronization Mechanisms: Atomic Operations, Spinlocks, Semaphores, and Mutexes

The article systematically explains Linux kernel synchronization primitives—from basic atomic operations through queued spinlocks, counting semaphores, and sleeping mutexes to read‑write semaphores and per‑CPU variants—detailing their underlying data structures, memory‑barrier semantics, and the fast‑path and slow‑path acquisition and release APIs.

Linux kernelSemaphoreatomic-operations
0 likes · 13 min read
Overview of Linux Kernel Synchronization Mechanisms: Atomic Operations, Spinlocks, Semaphores, and Mutexes
Liangxu Linux
Liangxu Linux
Nov 29, 2023 · Fundamentals

Inside Linux Cgroup CPU Subsystem: How Containers Get CPU Time Controlled

This article provides a detailed, code‑driven explanation of how Linux cgroup’s CPU subsystem manages container CPU usage, covering cgroup creation, limit configuration, kernel object relationships, scheduler integration, bandwidth enforcement, and the role of period and slack timers.

CPU schedulingLinux kernelcfs_bandwidth
0 likes · 27 min read
Inside Linux Cgroup CPU Subsystem: How Containers Get CPU Time Controlled
21CTO
21CTO
Nov 22, 2023 · Frontend Development

New UI Releases: Slint 1.3, Flutter 3.16, Rust 1.74, Notion AI, Linux Kernel

The article summarizes recent releases across UI toolkits and core platforms, covering Slint 1.3's Android support, Flutter 3.16's Impeller preview, Rust 1.74's Cargo enhancements, Notion's AI‑driven Q&A feature, and multiple Linux kernel updates addressing security and bug fixes.

Linux kernelNotion AIRust
0 likes · 6 min read
New UI Releases: Slint 1.3, Flutter 3.16, Rust 1.74, Notion AI, Linux Kernel
OPPO Kernel Craftsman
OPPO Kernel Craftsman
Nov 10, 2023 · Fundamentals

Insights from the 18th China Linux Kernel Developers Conference (CLK 2023) on Enhancing China’s Open‑Source Influence

At the 18th China Linux Kernel Developers Conference in Shenzhen, nearly 500 engineers and senior experts from Tencent, Huawei, Loongson, Intel and Ant Group showcased major open‑source contributions and discussed strategies—such as corporate‑academic alliances, documentation translation and mentorship—to boost China’s code quality, trust and global influence in the Linux ecosystem.

ChinaLinux kernelcollaboration
0 likes · 18 min read
Insights from the 18th China Linux Kernel Developers Conference (CLK 2023) on Enhancing China’s Open‑Source Influence
OPPO Kernel Craftsman
OPPO Kernel Craftsman
Nov 10, 2023 · Operations

Memory Compaction in the Linux Kernel: Mechanisms, Strategies, and Implementation Details

Linux’s memory compaction mitigates external fragmentation by moving movable pages, employing four strategies—direct, passive (kcompactd), proactive, and active—each invoking the compact_zone core with configurable compact_control parameters, migrate‑page and free‑page scanners, and distinct trigger and exit conditions.

Linux kernelMemory CompactionMemory Fragmentation
0 likes · 45 min read
Memory Compaction in the Linux Kernel: Mechanisms, Strategies, and Implementation Details
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
OPPO Kernel Craftsman
OPPO Kernel Craftsman
Nov 2, 2023 · Industry Insights

OPPO’s Kernel Tweaks: Dynamic HugePages and Scheduler Boosts for Smoother ColorOS

At the 18th China Linux Kernel Developer Conference, OPPO unveiled memory and scheduler optimizations—including a dynamic 64 KB huge‑page scheme, LRU reclamation improvements, and a latency‑aware scheduler balance—that collectively raise memory access performance by over 10 %, reduce lock contention, and lower frame‑drop and audio‑stutter rates, demonstrating the impact of programmable kernel technologies on Android smoothness.

Linux kernelMemory OptimizationMobile OS
0 likes · 7 min read
OPPO’s Kernel Tweaks: Dynamic HugePages and Scheduler Boosts for Smoother ColorOS

How XDP Is Redefining Network Performance Beyond Traditional Stacks

This article examines XDP (eXpress Data Path), a Linux kernel eBPF‑based technology that pushes packet processing to the earliest point in the network interface, delivering ultra‑low latency, enhanced security, and flexible custom processing for high‑performance routing, DDoS mitigation, and cloud environments.

Cloud NativeLinux kernelXDP
0 likes · 5 min read
How XDP Is Redefining Network Performance Beyond Traditional Stacks
OPPO Amber Lab
OPPO Amber Lab
Sep 26, 2023 · Fundamentals

Join the 18th China Linux Kernel Conference: Call for Papers & Event Details

The 18th China Linux Kernel Developers Conference (CLK) will take place on October 28, 2023 in Shenzhen, featuring a call for papers on topics such as hardware architectures, scheduling, memory management, storage, networking, virtualization, performance, testing, and more, with submission deadlines from September 22 to October 10.

Linux kernelOpen SourceSubmission
0 likes · 4 min read
Join the 18th China Linux Kernel Conference: Call for Papers & Event Details