Detailed Explanation of Pointers in C Language

Detailed Explanation of Pointers in C Language

Pointers in C language are variables that store the address of another variable. This variable can be an int, char, array, function, or any other pointer type. The size of a pointer depends on the computer architecture. However, in a 32-bit computer architecture, the size of a pointer is 2 bytes. Consider the following example … Read more

Understanding C Language Pointers: A Comprehensive Guide

Understanding C Language Pointers: A Comprehensive Guide

Click on “Beginner Learning Visuals” above to choose to add “Star” or “Top“ Essential knowledge delivered promptly. Editor’s Recommendation Pointers are crucial in C. To fully understand pointers, one must not only be proficient in C but also have fundamental knowledge of computer hardware and operating systems. Reprinted from丨Embedded Intelligence Bureau Why Do We Need … Read more

Why Microcontrollers Depend on C Language?

Why Microcontrollers Depend on C Language?

It is well known that microcontrollers are the core of embedded development. To master microcontrollers, the choice of programming language is also crucial. However, if you have explored the programming languages for different microcontrollers, you will find that most people use C language. There is even a saying that “microcontrollers cannot do without C language.” … Read more

Classic! Must-Know Stack Concepts in Embedded Programming

Classic! Must-Know Stack Concepts in Embedded Programming

Word Count: 9000 Content Quality: ⭐⭐⭐⭐⭐ 1. Prerequisite Knowledge—Memory Allocation in Programs A program compiled by C/C++ occupies memory divided into the following parts: 1. Stack Area (stack)—automatically allocated and released by the compiler, used for storing function parameters and local variable values. Its operation is similar to a stack in data structures. 2. Heap … Read more

Understanding Embedded Operating System Memory Management

Understanding Embedded Operating System Memory Management

Article word count: 5000, Content value index: ☆ ☆ ☆ ☆ ☆ Key content: ☆ Linux memory organization structure and page layout, causes of memory fragmentation and optimization algorithms. ☆ Several memory management methods in the Linux kernel, memory usage scenarios, and pitfalls in memory usage. ☆ Explore the mechanisms and mysteries of memory management … Read more

Technical Sharing | ARM Series – Virtualization (Part 2)

Technical Sharing | ARM Series - Virtualization (Part 2)

The previous article introduced the basic concepts of virtualization and hypervisors. To facilitate virtualization, ARM has done a lot of work, primarily defining four Exception Levels (EL). As mentioned in earlier articles about exceptions and privileges, I will elaborate a bit more here. Each exception level is numbered, ranging from EL0 to EL3, with higher … Read more

vLLM Framework Source Code Analysis: Block Allocation and Management

vLLM Framework Source Code Analysis: Block Allocation and Management

1. Block Overview A significant innovation of vLLM is the division of the physical layer GPU and CPU available memory into several blocks, which effectively reduces memory fragmentation issues. Specifically, vLLM’s blocks are divided into logical and physical levels, with a mapping relationship between the two. The following diagram explains the relationship between the two … Read more

Three Major Drawbacks of Writing Rust

Three Major Drawbacks of Writing Rust

Author | Roman Kashitsyn Translation | Yan Zheng Rust is a hot topic in the field of language design. It allows us to build efficient, memory-safe programs with concise, portable, and sometimes even beautiful code. However, everything has two sides; it’s not all roses and sunshine. The details of memory management often drive development work … Read more

Advanced Rust Asynchronous Programming: Optimizing Concurrency and Memory Management

Advanced Rust Asynchronous Programming: Optimizing Concurrency and Memory Management

Introduction The Rust language, as a system programming language that emphasizes memory safety and concurrency, has an asynchronous programming model that is a crucial part of its powerful capabilities. In recent years, Rust’s asynchronous programming has gradually become the preferred solution for developers to build efficient and highly concurrent systems. With a deeper understanding of … Read more

C++ Pointers: Basic Concepts, Pointer Arithmetic, and Pointer Arrays Explained

C++ Pointers: Basic Concepts, Pointer Arithmetic, and Pointer Arrays Explained

C++ Pointers: Basic Concepts, Pointer Arithmetic, and Pointer Arrays Explained In C++ programming, pointers are an important tool that helps us directly manipulate memory, enhancing the performance and efficiency of the program. This article will provide a detailed introduction to the basic concepts of pointers, pointer arithmetic, and how to use pointer arrays. 1. Basic … Read more