Embedded System Development

Source: Internet
Author: User
Embedded System Development

Reprinted from: http://blog.chinaunix.net/uid-23480577-id-3086129.html



Follow these steps:
1. Linux Basics

Install linux
Linux File System
Common Linux commands
Linux Startup Process details
Familiar with Linux services, able to install Linux operating systems independently
Familiar with basic Linux commands
Understand Common Services of Linux system install linux OS
Linux basic command practices
Set Linux environment variables
Customized Linux service shell programming basics use VI to edit files
Use Emacs to edit an object
Use other editors
2. shell programming Basics
Shell Introduction
Recognition background Program
Bash programming familiar with the editing environment in Linux
Familiar with Linux Shell
Familiar with basic VI operations through shell programming
Familiar with basic Emacs operations
Compare the differences between different shells
Compile a shell script program to test whether the server is connected
Compile a shell script program to check whether a process exists
Compile a shell script program with cyclic statements
3. C Programming basics in Linux
Linux C language environment overview
GCC usage
GDB debugging technology
Autoconf
Automake
Makefile
Code Optimized the development environment familiar with Linux systems
Familiar with GCC compiler
Familiar with makefile rules writing hello and world programs
Use the make command to compile the program
Compile a program with a loop
Debug a problematic program
4. Embedded System Development Basics
Embedded System Overview
Cross-Compilation
Configure the TFTP service
Configure NFS service
Download Bootloader and Kernel
Embedded Linux application software development process
Familiar with embedded system concepts and development processes
Build an embedded system development environment and create a cross_gcc tool chain
Compile and download U-boot
Compile and download the Linux Kernel
Compile and download Linux applications
Embedded System Transplantation
Linux Kernel code
Platform-related code analysis
ARM platform Introduction
Key Technologies for platform migration
Port the Linux kernel to the ARM platform to understand the concept of porting.
Port Linux kernel linux2.6 to armarray Development Board
5. Serial Communication in Embedded Linux
Basic concepts of serial I/O
Embedded Linux application software development process
Linux Files and devices
File-related system calls
Configure the Super Terminal and minicom to be familiar with Serial Communication
Familiar with file I/O writing Serial Communication Programs
Write multi-serial communication program
6. Embedded System multi-process Program Design
Linux Process Overview
Embedded System Process Features
Process operations
Daemon
Measure the test taker's knowledge about the concept of processes in Linux.
Ability to Write multi-process programs
Write a daemon program
Sleep System Call task management, synchronization and communication Linux task Overview
Task Scheduling
MPs queue
Signal
Shared Memory
Task Management API to understand the task management mechanism in Linux
Familiar with several methods of inter-process communication
Familiar with synchronization and communication between tasks in Embedded Linux
Write a simple pipeline program for File Transfer
Write a program using shared memory
7. multi-thread programming in Embedded Systems
Basic thread knowledge
Multi-Thread Programming Method
Synchronization issues in thread applications understand the concept of threads
Ability to write a simple multi-threaded program to write a multi-threaded Program
8. Embedded Linux Network Programming
Basic network knowledge
TCP/IP network structure in Embedded Linux
Socket programming
Common API functions
Analysis of ping command implementation
Basic UDP Interface Programming
License Management
PPP protocol
GPRS understand the network architecture of Embedded Linux
Capable of socket programming in an embedded Linux environment
Familiar with UDP and PPP protocols
Familiar with GPRS using socket to write proxy servers
Use SOCKET to write a router
Compile a License Server
Advantages and disadvantages of TCP and UDP
Write a Web Server
Compile a network player running on the ARM platform
Array, Gui Program Development
Gui Basics
Embedded System GUI type
Compile QT
Perform QT development to familiarize yourself with common guis in Embedded Systems
Ability to program QT and use QT to compile the "Hello, world" program
Debug an instance with signals/Slots
Handle events using the reload qwidget Class Method
10. Linux character Device Driver
Basic device driver knowledge
Linux system module
Character Device Driver Analysis
Fs_operation Structure
Load drivers understand the concept of Device Drivers
Understand the driver structure of Linux character Devices
Write character device drivers and skull drivers
Write a keyboard driver
Write an I/O Driver
Analyze a dog driver
Differences between the Linux 2.4 kernel and the kernel character device drivers
Linux block device drivers working principle
Typical block Device Driver Analysis
Read/write request queues of Block devices understand the structure of Linux block Device Drivers
Ability to compile simple block device drivers to compare the similarities and differences between character devices and block Devices
Write mmccard driver
Analyze a File System
The differences between Linux 2.4 kernel and kernel block Device Drivers
11. File System
Virtual File System
File System Creation
Ramfs memory File System
Proc file system
Devfs File System
MTD technology Overview
MTD block device Initialization
Read/write operations on MTD Block devices
Measure the test taker's understanding about the file system of embedded Linux.
Understand MTD Technology
Able to write a simple file system and add mtd support for the armarray Development Board
Port jffs2 File System
Modify operating system parameters through proc file system
Analyze the romfs File System Source code
Create a cramfs File System

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.