[Course sharing] This article introduces how to transplant and develop an embedded linux system (Environment setup, uboot porting, and embedded Kernel configuration and compilation), and how to implement uboot.
Embedded linux system porting and development
(Environment setup, uboot porting, embedded Kernel configuration and compilation)
Dear user, I have a set of courses to share with you. If you are interested in this course, you can add my QQ2059055336 to contact me.
Course Content Overview
This course focuses on introducing the development method of Embedded linux system transplantation, using a combination of theories, practices, and hardware and software.
1. before starting each section, let's briefly review the main content mentioned in the previous section, give an overview of the content mentioned in this section, and explain the concepts, technical points, and design implementation ideas, finally, summarize the main points to be mastered in this course.
2. Summarize the key technical points during the lecture so that you can review them after class.
3. In the course of learning, the trainees should combine theory and practice, and combine hardware and software. The Code trainees mentioned should complete the modification and debugging on their own to consolidate and deepen the learning effect.
Course chapter distribution:
Course schedule:
Stage 1: Embedded linux composition and Development Environment Construction
1st introduction to embedded linux development-Composition of Embedded linux systems (Part 1)
2nd introduction to embedded linux development-Composition of Embedded linux systems (II)
3rd introduction to build an embedded linux development environment-cross tool chain
4th build an embedded linux development environment-Use of the GNU tool chain
5th embedded linux development environment setup-arm-linux-gcc Installation and Use
6th embedded linux development environment setup-embedded Linux development mode
7th build an embedded linux development environment-burning and Writing System Based on dnw
8th build an embedded linux development environment-a tftp-based Write System
9th embedded linux development environment setup-nfs File System
Phase 2: transplantation of embedded Bootloader
10th introduction to BootLoader
11th introduction to BootLoader Startup Process Analysis
12th Uboot source code directory structure analysis
13th Uboot configuration and compilation
14th analyze common Uboot commands (Part 1)
15th analyze common Uboot commands (II)
16th Uboot Configuration Analysis (Part 1)
17th Uboot Configuration Analysis (II)
18th Uboot Makefile (Part 1)
19th Uboot Makefile details (II)
20th Uboot source code analysis-1st-stage source code analysis (I)
21st Uboot source code analysis-Phase 1 source code analysis (medium)
22nd Uboot source code analysis-Phase 1 source code analysis (II)
23rd Uboot source code analysis-2nd-stage source code analysis (I)
24th Uboot source code analysis-Phase 1 source code analysis (II)
25th Uboot porting (I)
26th about porting Uboot (medium)
27th about porting Uboot (II)
28th add commands in Uboot
Stage 3: porting the embedded Linux Kernel
29th embedded Linux kernel features analysis
30th embedded Linux kernel Architecture Analysis
31st explanation of directory structure of Embedded Linux kernel source code
32nd introduction to embedded Linux Kernel configuration (Part 1)
33rd introduction to embedded Linux Kernel configuration (II)
34th introduction to embedded Linux kernel Compilation
35th introduction to embedded Linux kernel Makefile (1)
36th introduction to embedded Linux kernel Makefile (2)
37th introduction to embedded Linux kernel Makefile (3)
38th embedded Linux kernel Link Analysis
39th embedded linux porting-hierarchical relationship between kernel source code
40th embedded linux system transplantation-detailed explanation of uboot startup Kernel
41st introduction to the Startup Process of the embedded Linux kernel-architecture-related Boot Process (1)
42nd introduction to the Startup Process of the embedded Linux kernel-architecture-related Boot Process (2)
43rd introduction to the Startup Process of the embedded Linux kernel-architecture-related boot process (3)
44th introduction to the Startup Process of the embedded Linux kernel-architecture-related Boot Process (4)
45th introduction to the Startup Process of the embedded Linux kernel-General Startup Process (1)
46th introduction to the Startup Process of the embedded Linux kernel-General Startup Process (2)
47th transplantation of Embedded Linux kernel-transplantation of kernel architecture
48th embedded Linux kernel porting-kernel addition Driver Analysis
Stage 4: Build an embedded Linux root file system
49th introduction to embedded linux File System-root file system hierarchy analysis (I)
50th introduction to embedded linux File System-root file system hierarchy analysis (II)
51st introduction to embedded linux File System-kernel mounting root file system analysis
52nd introduction to the Startup Process of the Busybox init process in the embedded linux File System (Part 1)
53rd introduction to the embedded linux File System-Analysis of the Startup Process of the Busybox init process (II)
54th embedded linux File System-Busybox configuration and compilation
55th embedded linux File System-build an embedded linux root file system (I)
56th embedded linux File System-build an embedded linux root file system (II)
Questions about migration of uboot and kernel in Embedded linux
For U-boot development, hardware needs to be cropped. The purpose of U-boot is to boot the kernel. First, ensure that u-boot is compatible with your kernel, then you can crop the hardware. For example, your original u-boot does not support the USB download method, so you need to add support for the USB download method. before downloading, You need to perform initialization, check which hardware needs to be initialized on your Development Board and add them to U-boot. You need to crop the drivers of these hardware in the kernel, and port u-boot and kernel, you need to check the hardware that your development board wants to support and the functions that you want to implement. For example, the U-boot download interface is added for Development convenience.
ARM answers to briefly summarize 1 Embedded System Development Environment Construction Method 2 kernel porting concept in embedded environment
1. You need an embedded source program or the source code to be transplanted. 1) modify the variable type; 2) interrupt the time slice; change the code in ARM working mode; 3) Start code modification.
2. Single-Chip Microcomputer runs a program (multi-task) unrelated to the single-chip microcomputer compiled by others. You can rewrite the underlying program and add the multi-task functions to be implemented,
3. For the original linux program, check the startup code of the single-chip microcomputer?
4. Single Chip Microcomputer time slice and task efficiency, task switching, program re-entry, preemption and collaboration between tasks, data exchange.