Embedded Linux learning steps

Source: Internet
Author: User

Embedded learning steps
I. Linux Basics
1. Familiar with: ① install the Linux operating system ② detailed explanation of the Linux Startup Process ③ Linux File System ④ common Linux commands
2. Knowledge: ① Linux services can be installed independently; ② Linux operating systems can skillfully use ③ basic Linux commands
3. Settings: ① common Linux services and Linux operating system installation ② basic Linux Command practices
4. Use: ① Linux environment variables to customize Linux services ② use the VI editor or other
Editor
Ii. Shell Basics
1. Shell Introduction
2. Familiar with background bash programming and programming environment in Linux
3. Familiar with various shells in Linux, proficient in shell programming, familiar with basic VI operations, and comparing different shells
Difference
4. Compile a shell script program to test whether the server is connected.
5. Compile a shell script to check whether a process exists.
6. Compile a shell script program with cyclic statements
III. C Programming basics in Linux
1. Linux C language environment overview, GCC usage, GDB debugging technology, Autoconf, automake, and makefile
Code optimization
2. Familiar with the development environment in Linux, GCC compiler, and makefile rules
3. Compile the hello World Program and use the make command to compile the program.
4. Compile a program with loops and debug a problematic program
Iv. Embedded Development Basics
1. Overview of Embedded Systems
2. Cross-compilation, TFTP service configuration, and NFS service configuration
3. Download Bootloader and Kernel
4. Embedded Linux application software development process
5. Familiar with embedded system concepts and development processes
6. Establish an Embedded System Development Environment
7. Create a cross_gcc tool chain, compile and download U-boot, compile and download the Linux kernel, compile and download Linux
Applications
V. Embedded System Transplantation
1. Linux kernel code and platform-related code analysis,
2. Introduction to the ARM platform and key technologies for platform migration
3. Port the Linux kernel to the ARM platform
4. Understand the concept of porting to Linux Kernel
5. Port the linux2.6 kernel to the arm9-development Board
Vi. Embedded LINUX serial communication
1. Basic concepts of serial I/O
2. Embedded Linux application software development process
3. Linux system files and devices, file-related system calls
4. Configure the Super Terminal and mincom
5. proficient in Serial Communication
6. Familiar with file I/O
7. Compile a serial communication program
8. Write multi-Serial Communication Programs
7. multi-thread design of embedded systems
1. Linux System Process Overview
2. Embedded system process features, system calls related to process operation daemon
3. Understand the concept of processes in Linux and be able to write multi-process programs
4. Write a multi-process program and a daemon program
5. The sleep system calls the task manager for synchronization and communication.
6. Linux task overview and Task Scheduling
7. Pipelines, signals, shared task management, Apis
8. Understand the Linux System Task Management Mechanism
9. Familiar with several methods of inter-process communication
10 familiar with synchronization and communication in Linux
11 compile a simple pipeline program for file transfer and a program for sharing memory
8. Embedded Linux Network Programming
1. Network Knowledge Base: ① TCP/IP network structure in Embedded Linux ② socket programming ③ common API functions ④
Analysis of ping command implementation ⑤ basic UDP Interface Programming License Management 6 PPP protocol 7 GPRS
2. Understand the embedded Linux Network Architecture ① be able to perform socket programming in the Linux environment ② be familiar with UDP protocol,
PPP protocol, ③ familiar with GPRS, use socket to write proxy servers, write license servers ④ pointed out
Advantages and disadvantages of TCP and UDP
3. Compile a web server and a network player running on the ARM platform.
9. GUI development
1. Gui basics ① embedded system GUI type ② compile QT ③ conduct QT development familiarize yourself with common embedded GUI ④
Enough for Qt programming, Use q t to write a hello World Program
2. debug a program that adds a signal/slot and process the event by reloading the qwindget class method.
10: Linux character driver
1. Basic knowledge of Device Drivers: ① LINUX module ② character device driver analysis ③ fs_operation structure ④
Load the driver and understand the concept of the driver. ⑤ understand the structure of the driver for Linux character devices.
2. Write character device drivers, skull drivers, keyboard drivers, and I/O drivers.
3. Analyze a dog driver
4. Compare different Linux block device drives of drivers in Linux 2.4 and
Working principle of Device Drivers
5. Typical block Device Driver Analysis, block device read/write request queue
6. Understand the Linux block device driver structure, write simple block device drivers, and compare character devices and blocks.
Device similarities and differences, write the MMC Card Driver
7. Analyze a file system and compare the differences between the Linux 2.4 kernel and the Linux Kernel
11. File System
1. Virtual File System, file system establishment, ramfs file system, proc file system, and devfs File System
2. MTD technology introduction, MTD block device initialization, MTD block device read/write operations
3. Understand the file system of Linux, understand the file system of Embedded Linux, understand MTD technology, and be able to compile
Write a simple file system and add mtd support for the arm9board
4. Transplant the jffs2 file system, modify the operating system parameters through the proc file system, and analyze the source generation of the rofms file system.
Code to create a cramfs File System

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.