How to make the Linux kernel better serve applications?

As business grows, service stability challenges will definitely come with it, such as how to analyze TCP retransmissions, how to troubleshoot memory leaks without interrupting tasks during operation, and what about CPU sys interest rate? Quick solution, these are real problems, if you know it, you will, if you don’t, you just won’t. Take our […]

What does the Linux kernel have and what does the memory management subsystem have? Chapter 6 – Small memory allocation (4)

Continuing from the previous article: What does the Linux kernel have and what does the memory management subsystem have? Chapter 5 – Small memory allocation (3) References to this article: linux process virtual address space “Interesting Talk about the Core Principles of Linux Operating System: Part 4 Memory Management–Liu Chao” Thanks! 2. Small memory allocation […]

Analysis of anonymous mapping page fault exception in Linux kernel virtual memory management

Before explaining the anonymous mapping page fault exception, we must first understand what is an anonymous page? Corresponding to the anonymous page is the file page. We should understand the file page well, which is the page that maps the file, such as mapping the file to the virtual memory through mmap and then reading […]

dotnet explores the principles of SemanticKernel’s planner

When using SemanticKernel, I was fascinated by SemanticKernel’s powerful plan capability. Through the plan function, AI can automatically schedule and assemble multiple modules to achieve complex functions. I am particularly curious about the principles of the planner in SemanticKernel and how the underlying implementation is implemented. Fortunately, SemanticKernel is completely open source. By reading the […]

GEM5 Ruby Garnet kernel source code interpretation: 2/38

#Introduction This article is the source code interpretation of gem5 Ruby Garnet kernel. I have written a lot of code about how to use GEM5 and configuration before. They are all gem5 user-level code interpretations. This series will have 38 files. This article reads a total of 6 files. Two files are python files, two […]

Offline compilation of OpenCL kernel source code

Offline Compilation of OpenCL Kernel Sources Offline compilation of OpenCL kernel source code Aside from online compilation during application execution, OpenCL kernel sources can be compiled offline into binaries that can be loaded into the drivers using special API calls (e.g. clCreateProgramWithBinary or clCreateProgramWithIL). In addition to online compilation during application execution, the OpenCL kernel […]

2023-2024-1 20232825 “Linux Kernel Principles and Analysis” Eighth Week Assignment

Table of Contents 1. Compilation and linking process 1. Preprocessing: 2. Compilation: 3. Assembly: 4. Linking: 2. ELF executable file format 3. Use the exec* library function to load an executable file 4. Use gdb to trace and analyze an execve system call kernel processing function sys_execve in conclusion: Attached, chatGPT auxiliary Q&A: 1. The […]