Enhancing Programmers’ Self-Cultivation

Enhancing Programmers' Self-Cultivation

Table of Contents 1.1 Starting with Hello World 1.2 The Essence Remains Unchanged 1.3 The Higher You Stand, The Further You See 1.4 What the Operating System Does 1.4.1 Don’t Let the CPU Doze Off 1.5 What to Do When Memory is Insufficient 1.5.1 About Isolation 1.5.2 Segmentation 1.5.3 Paging 1.6 Many Hands Make Light … Read more

Understanding Multitasking OS: Cooperative vs Preemptive

Understanding Multitasking OS: Cooperative vs Preemptive

Computer memory, is the temporary storage area of a computer, which holds the data and instructions needed by the Central Processing Unit (CPU). The instructions, which refer to specific operations of the processor, are defined by the Instruction Set Architecture, which typically includes four types of instructions: arithmetic, logic, data movement, and control flow. Before … Read more

Understanding the Linux Kernel

Understanding the Linux Kernel

Author: aurelianliu Refer to scheduling, memory, files, networks, etc., encountered during work. 1. OS Running States X86 architecture, user mode runs in ring3, kernel mode runs in ring0, two privilege levels. (1) The kernel and some privileged instructions, such as filling page tables, switching process environments, etc., generally operate in ring0. Kernel mode includes the … Read more

Exploration of Optimization for In-Vehicle Infotainment Systems

Exploration of Optimization for In-Vehicle Infotainment Systems

Source: Liu Bibo, Cheng Changchun / Dongfeng Motor Technology Center & Qoros Auto Research Institute As domestic and foreign OEMs gradually reach a consensus on smart vehicles, endowing cars with new missions, the application scenarios for vehicles have become increasingly rich, leading to more direct interactions between users and vehicles. The increase in usage scenarios … Read more

In-Depth Understanding of C++ and C Language Similarities and Differences

In-Depth Understanding of C++ and C Language Similarities and Differences

Hello everyone, nice to see you again! Continuing from our last session, we have set up a warm and comfortable environment for C++ development. Today, I will guide you to understand the relationship between C and C++, reviving our long-dormant memories of C! Differences Between C++ and C First and foremost, the simplest difference is … Read more

Mastering C++ Embedded Development for Device Control

Mastering C++ Embedded Development for Device Control

Embedded development sounds impressive, but it’s not that special. It’s just using C++ on small devices, like smartwatches or home appliance controllers. Today, we’ll talk about how to use C++ to handle the control logic of these little gadgets. Don’t worry, it’s quite simple! 1 Let’s Talk About the Characteristics of Embedded Development Embedded development … Read more

C++ and IoT: Development and Optimization of Embedded Systems

C++ and IoT: Development and Optimization of Embedded Systems

Development and Optimization of Embedded Systems Hey, C++ friends, today Hui Xiaoqin wants to talk to you about the application of C++ in the Internet of Things (IoT), especially in the development and optimization of embedded systems. The IoT is like a giant network connecting various devices and sensors, and embedded systems are the brains … Read more

Developing Embedded Systems with C++: A Comprehensive Guide

Developing Embedded Systems with C++: A Comprehensive Guide

Writing embedded systems is indeed an interesting task. Unlike regular application development, we have to deal directly with the hardware and also worry about memory usage and real-time performance. As a veteran in embedded systems for over a decade, I find that developing embedded systems with C++ is quite cool. It allows us to utilize … Read more

C++ and Embedded Systems: Core Technologies for IoT Device Development

C++ and Embedded Systems: Core Technologies for IoT Device Development

C++ and Embedded Systems: Core Technologies for IoT Device Development Hello everyone, I’m Xiao Shao. Today, let’s talk about a very practical knowledge point in C++—smart pointers. In the world of C++, smart pointers are like our capable assistants in managing memory. They help us automatically manage memory, avoid memory leaks, and make our code … Read more

An Introduction to Block Device Drivers

An Introduction to Block Device Drivers

Introduction I have been researching IO for a long time and have been unable to connect bio and block device drivers. I only knew that bio is passed to the block device driver through the IO scheduling algorithm, but I never fully understood how this happens or where the IO scheduling algorithm plays its role. … Read more