Word Count: 1400 Practical Index: ⭐⭐⭐⭐⭐
For those learning hardware, it is essential to first have a perceptual understanding of the basic usage methods of the hardware and to deeply understand the control methods of the hardware. If you start by learning the Linux system and porting, you will quickly fall into a deep vortex.
If you buy a board, it usually comes with some Linux experiment examples. Spend some time working on these; this process is meaningful and helps accumulate perceptual knowledge for further learning. Can you imagine someone who has never used a Linux system learning Linux programming well? Follow the manual examples and perform the experiments in them.
Three parts: bootloader, Linux kernel, root filesystem.
As mentioned above, a complete Linux system has three parts, and now that you know their relationships and functions, what you need to do is to learn to create these components yourself. Of course, it is not possible to write these codes directly; it’s not feasible. In fact, the source code for all three can be downloaded online, but this source code cannot run on your system just by downloading and compiling; it requires many modifications until it can run on your board. This modification process is called porting. During the porting process, there is a lot to learn and a lot of relevant knowledge to understand. Once you complete this process, you will find that you have become a novice expert.
Porting the system is not the final goal; the ultimate goal is to develop products and projects, which requires driver development.
Linux drivers can be quite varied. There are significant differences between writing for Linux 2.4 and Linux 2.6, and even among different versions of Linux 2.6, there are differences in driver programming. Therefore, writing Linux drivers is not an easy task, and there may not be enough reference materials for writing drivers for the latest versions. My suggestion is to use and port a not-so-new kernel version; this way, you will have enough materials to learn driver programming.
In addition to writing drivers for projects, you will also need to write application programs. The current trend is the development of graphical applications, and the most commonly used library for graphical applications is still the Qt/E library. However, I hope you can use the domestic MiniGUI library. MiniGUI programming is quite similar to VC programming under Windows, making it relatively easy to learn, and the results should be quite good.
Summary
The above introduces the entry-level advice for ARM and Embedded Linux. If you follow the steps outlined above to learn Embedded Linux, you will essentially have completed your learning. During the learning process, you will definitely encounter various problems; at that time, you cannot just wait for others to solve ARM or embedded-related issues for you. For relatively simple problems, you can also search for answers online.
Disclaimer: This article is sourced from the internet, and the copyright belongs to the original author. If there are any copyright issues, please contact for removal.
8 Highly Rated Linux E-books Recommended on Douban
How to Obtain: Reply with 【714】 in the backend
1
“15 Years of Experience: How to Learn Microcontrollers Properly…”
“6500 Words of Practical Content! Here are 10 Embedded Software Testing Tips I Suggest You Save…”
3
“2000 Words of Practical Content! How to Learn Embedded Linux After Microcontroller…”

This Week’s Live Broadcast | Click to View👇

Monday | Huawei Master Brother Takes You into Artificial Intelligence
1. What is Artificial Intelligence?
2. Classification of Artificial Intelligence
3. Practical Applications of Artificial Intelligence

Tuesday | C Language Compiler Code Optimization
1. Accessing C Language Variables
2. Compiler Code Optimization
3. The volatile Keyword