-
Challenges of Deploying eBPF-Based Tracing in Embedded Systems, and Alternatives in Embedded Platforms (Libtracefs/libtraceevent)
Challenges of Deploying eBPF-Based Tracing in Embedded Systems, and Alternatives in Embedded Platforms (Libtracefs/libtraceevent)Presentation OverviewThis page summarizes the key insights from my presentation: Challenges of Deploying eBPF-Based Tr...…
-
Comparing ZNS and FDP: Two NVMe Features
Comparing ZNS and FDP: Two NVMe FeaturesIntroductionNVMe (Non-Volatile Memory Express) continues to evolve with new features that enhance storage efficiency and performance. Two notable advancements are Zoned Namespace (ZNS) and Flexible Data Plac...…
-
UFS timeout management
UFS timeout managementUFS only has the SW timeout timer in the block layer, it doesn’t have a HW timer on thehost side.the SW timer setup flow:scsi_queue_rq() //scsi_lib.c blk_mq_start_request(req) scsi_dispatch_cmd() SCSI-based storage, you can c...…
-
Astyle
1. Commonly Used Functions(1) Beautify a Single FileTo beautify a single file with default settings:astyle --style=ansi Form1.csBefore formatting:private void Form1_Load(object sender, EventArgs e){ int s; for (int i=0;i<10;i++){ f...…
-
Printing Stack Traces in the Linux Kernel
📌 Printing Stack Traces in the Linux KernelPrinting stack traces is one of the most valuable debugging tools available to kernel developers. When something goes wrong in kernel space, the call stack helps reveal the path the code took before hitti...…
-
Diagnostic Log and Trace (DLT).
What is DLTDiagnostic Log and Trace (DLT). It’s a standardized protocol, widely used in the automotive industry, to manage and format log and trace data for electronic control units (ECUs). DLT enables efficient logging and tracing by standardizin...…
-
Understanding U-Boot Environment Variables and Boot Arguments
Understanding U-Boot Environment Variables and Boot ArgumentsU-Boot is a popular bootloader used in embedded systems. Understanding its environment variables and boot arguments is crucial for configuring and booting Linux systems effectively. Here...…
-
Xen stetup on hikey960
Setting Up Xen on HiKey960This tutorial explains how to set up Xen on the HiKey960. It is based on the official Xen wiki tutorial. Since there are several points that can be confusing, I have summarized all the steps I followed.HiKey960 VersionsBe...…
-
Understanding Enum Size and Alignment in C
Understanding -fshort-enums in CWhen working with enumerations (enum) in C, it’s easy to assume they are always 4 bytes, just like int. However, compilers offer optimization flags like -fshort-enums that can reduce memory usage by adjusting enum s...…
-
Shared Memory in Linux Inter-Process Communication
Shared Memory in Linux Inter-Process Communication (IPC)In Linux, shared memory is an efficient method for inter-process communication (IPC). Through shared memory, multiple processes can access the same memory region directly, enabling fast data ...…