Managing CPU Frequency Scaling via Sysfs in Linux
The cpufreq infrastructure in Linux allows for dynamic adjustment of processor clock speeds to balance performance and power consumption. This subsystem exports its configuration through the sysfs interface, usually found at /sys/devices/system/cpu/cpu[N]/cpufreq/. By modifying specific files in this directory, users can control how the kernel ...
Posted on Wed, 05 Aug 2026 16:37:27 +0000 by northernmonkey
File Creation Operations in the Operating System
14.5 File Creation
14.5.1 The file_create Implementation
When creating a new file, several critical operations must be performed in sequence:
Inode Allocation: Each file requires an inode to track its size, location, and metadata. The process begins by allocating an inode number from the inode bitmap. This involves updating the inode bitmap, ...
Posted on Wed, 29 Jul 2026 16:49:33 +0000 by dnast
Linux /proc File System Overview
Understanding the /proc Virtual File System
The /proc directory serves as a virtual file system in Linux that provides access to kernel and process information through file-like interfaces. This system acts as a window into the kernel's data structures, allowing users and applications to retrieve system information without making direct system ...
Posted on Mon, 20 Jul 2026 17:02:57 +0000 by Loafin
Linux Core Concepts: Memory, Processes, IPC, and I/O Multiplexing
Inspecting Process Memory Usage
Using top
PID – Process ID
USER – Owner
PR – Priority (lower = higher)
NI – Nice value
VIRT – Virtual memory
RES – Physical memory
SHR – Shared memory
S – State (S=sleep, R=run, Z=zombie, N=negative nice)
%CPU – CPU usage
%MEM – Physical memory ratio
TIME+ – Cumulative CPU time
COMMAND – Execu ...
Posted on Sun, 12 Jul 2026 17:21:43 +0000 by Warboss Alex
Developing a Bare-Metal Environment for RISC-V
Modern applications rely on complex execution environments—ranging from standard libraries to operating systems—to manage resources and hardware interactions. To build a kernel from scratch, one must strip away these abstractions and interface directly with the CPU and memory. This process involves navigating the target platform's architecture, ...
Posted on Mon, 06 Jul 2026 16:13:44 +0000 by learningsql
Implementing Process-Specific Kernel Page Tables and Optimizing Copy Operations in xv6
Memory Layout and Page Table Management
Hardware Device Mapping
Hardware devices like UART0 (0x10000000L), VIRTIO0, CLINT, and PLIC have fixed physical addresses and interrupt numbers defined by hardware design. The kernel uses these addresses to communicate with devices, initialize registers, and handle interrupts.
Kernel Loading and Execution ...
Posted on Fri, 19 Jun 2026 17:44:33 +0000 by zhahaman2001
Obfuscating Linux Processes through Filesystem Mounting and Library Hijacking
Process Concealment via Procfs Mounting
In Linux environments, process metadata is exposed via the /proc pseudo-filesystem. Standard monitoring utilities like ps, top, and htop retrieve system information by reading the subdirectories within /proc that correspond to specific Process IDs (PIDs). By utilizing the mount command with the --bind fla ...
Posted on Wed, 03 Jun 2026 16:49:12 +0000 by cameronjdavis
Understanding IOMMU Groups and Domains in Linux
The Input/Output Memory Management Unit (IOMMU) is a hardware component that enables memory protection and address translation for Direct Memory Access (DMA) operations initiated by peripheral devices. By enforcing isolation between devices and system memory, the IOMMU enhances both security and performance.
In Linux, IOMMU groups represent the ...
Posted on Fri, 29 May 2026 23:30:59 +0000 by jefrat72
Interrupt Handling in Kernel Development: Architecture and Implementation
Modern operating system kernels rely fundamentally on interrupt-driven execution. Interrupts enable asynchronous event handling—such as hardware signals, exceptions, and system calls—without requiring constant polling or blocking waits.
Interrupt Classification
External Interrupts
Maskable interrupts arrive via the INTR pin and can be disabled ...
Posted on Mon, 11 May 2026 01:54:52 +0000 by dwu
A Practical Guide to SPI Driver Architecture and User-Space Programming in Linux
SPI Core Concepts
SPI (Serial Peripheral Interface) is a synchronous, full-duplex serial communication protocol originally developed by Motorola. It enables MCUs or MPUs to exchange data with peripherals such as flash memory, ADCs, network controllers, or other processors. Key attributes include high-speed operation, serial data transfer, and t ...
Posted on Fri, 08 May 2026 18:50:31 +0000 by A584537