Is Clang Better Than GCC? Google’s Kernel Developers Build Kernel with Clang

Is Clang Better Than GCC? Google's Kernel Developers Build Kernel with Clang

(Click the public account above to follow quickly) Source: Solidot www.solidot.org/story?sid=54012 If you have good articles to submit, please click → here for details At the Linux Plumbers Conference, Google’s kernel developers Greg Kroah-Hartman and Nick Desaulniers presented the progress of building the kernel with Clang. Desaulniers stated that today’s Android user space is built … Read more

Mastering Linux Device Driver Development – Bilingual Edition

Mastering Linux Device Driver Development - Bilingual Edition

Mastering Linux Device Driver Development, published by People’s Posts and Telecommunications Press, English original title: Essential Linux Device Drivers. Author: Sreekrishnan Venkateswaran, translated by Song Baohua and others. “Mastering Linux Device Driver Development” is a work in the field of Linux device driver development. The book is based on the 2.6 kernel and not only … Read more

Zephyr Kernel Time Management

Zephyr Kernel Time Management

Zephyr provides a powerful and extensible time framework for obtaining and tracking timing events from hardware timing sources of any precision. Time Units The kernel time is tracked in the following time units: Real Time Hardware Counter Cycles Ticks Real Time The kernel time is described in real-time units: milliseconds/microseconds, which is easy to understand … Read more

Analysis of Bus Device Driver Model

Analysis of Bus Device Driver Model

Reviewing the bus device driver model, I’ve made a few notes for reference, experts can skip this. 1. A significant part of the driver framework in the Linux system revolves around the bus device driver model. 2. Involves three important structures: struct bus_type: Bus struct device: Device struct device_driver: Driver 3. Core code analysis of … Read more

Essential Knowledge About Embedded Linux Systems

Essential Knowledge About Embedded Linux Systems

1 Components of Embedded Linux Systems 1. Hardware 2. Kernel 3. Applications (forming the root file system) 2 Main Tasks in Building Embedded Linux Systems 1. Kernel Part 2. Application Part Development of Embedded Linux can generally be divided into three levels: boot loading the kernel, constructing the file system, and graphical user interface. The … Read more

How to Learn Embedded Linux Kernel? Sharing My Years of Experience

How to Learn Embedded Linux Kernel? Sharing My Years of Experience

Regarding how to learn the Embedded Linux kernel, I have some personal insights and understandings that I would like to share. Everyone has their own methods for learning the Linux kernel, and it varies from person to person. Generally, engineers engaged in embedded Linux driver and kernel development can be divided into two types: one … Read more

Current Status and Future of Linux Large Folios by Major Companies

Current Status and Future of Linux Large Folios by Major Companies

This article analyzes the current community and product status of the hot Linux kernel project Large Folios and predicts future trends. The technical content discussed in the article comes from contributions to the community and products from several companies, including Google, OPPO, ARM, Nivida, Samsung, Huawei, and Alibaba. Authors | Barry Song, Yu Zhao Editors … Read more

Master Linux Driver, Kernel, and Application Compilation in 5 Minutes

Master Linux Driver, Kernel, and Application Compilation in 5 Minutes

As a newcomer to embedded Linux, many questions arise during the learning process. How do I compile a driver program? How do I load it into the kernel? This article will introduce some basic operations for embedded Linux development, guiding you step by step to master the compilation of drivers, kernels, and applications. Little Wang … Read more

Understanding Linux Process Descriptors

Understanding Linux Process Descriptors

Processes are the entities scheduled by the operating system, and the description of the resources possessed by a process is called the Process Control Block (PCB). Describing Processes with task_struct In the kernel, a process is described by the task_struct structure, known as the process descriptor, which stores all the information necessary for the normal … Read more