• Transfer to "linux learning route

Source: Internet
Author: User
Tags gdb debugger

Original address: http://blog.csdn.net/u010236550/article/details/19328363

1 First you have to learn the embedded one has a base: probably the following

1. Computer, electronics, communication, automation, micro-electric and other science and technology, such as more than 3 of college students and graduated engineering and technical personnel; (freshman sophomore recommended learning basis)

2. Have a certain C, C + +, Java, C # and other programming language Foundation, like and interested in the embedded research and development business;

3. Hope that through the actual project training, to become a deep embedded engineer, to change the existing living conditions, improve the health
Live quality;

With these, you continue to study the protection! (Of course, uestc more cattle, there are always wonderful!) Oh

2 The development route of the Linux is as follows: (from easy to difficult)

Linux Roadmap----Linux software engineer-----"Linux system engineer-------" Linux driver engineer


3 Specific Learning courses 1 Linux software engineers embedded Linux software engineers learning route
Serial number Learning Reference Courses Course Content Learning situation
1 Linux operating system use Linux operating system concepts and installation methods, detailed introduction of Linux basic commands, management configuration and editor, including VI Editor, GCC compiler, GDB debugger and make project management tools and other knowledge. Master
2 embedded Linux C language Advanced programming C language is the most important and main programming language in the field of embedded, including function and program structure, pointers, arrays, common algorithms, library functions and other knowledge, in addition, this section also focuses on the basic content of data structure, including linked lists, queues, stacks, trees, hash tables, graphs and other content. proficient
 
3 c++ object-oriented programming c++ is one of the main languages of Linux application development, learning the basic idea of object-oriented programming, as well as the basic content of C + + language, to pave the course for the later. Master
4 Embedded Linux project development process Embedded product requirements analysis and selection, hardware platform, porting, startup code, drive development, system deployment and other processes. Understanding (more difficult)


2 Linux System engineer
Serial number Learning Reference Courses Course Content Learning situation
1 ARM Processor Programming The content includes ARM processor architecture, programming environment, instruction set, addressing mode, debugging, assembly, and mixed programming, to lay the groundwork for the learning of later transplant courses. Master
2 ARM Hardware Interface Development ARM hardware Interface Development This course focuses on ARM's common interface development and hardware circuit design fundamentals (including IO, serial, watchdog, real-time clock, SPI, IIC, scanning keyboard, flash operation, etc.), for future device-driven learning to lay a good foundation. Understanding (more difficult)
3 Linux system development System development is the basic skill of embedded Linux underlying development, how to build the embedded Linux running environment from scratch, including kernel cut, kernel porting, cross compiling, kernel debugging, startup program bootloader writing, root file system production and integrated deployment Linux system. Proficient (somewhat difficult)
4 Linux in the 3G field Plainly, is to learn a bit of Android knowledge (the previous Linux system development also need you to study, I do not think there is no Linux work experience, or to understand it)


3 Linux Drive Engineers The main goal is to master the development of embedded product development from requirements analysis to detailed design of the entire process, in-depth knowledge of Linux driver development skills, skilled in porting or writing device drivers.

· Serial number

Learning Reference Courses

Learning content

Learning situation

1

Advanced development of Embedded Linux drivers

Drive development is the most difficult content of embedded Linux development, and is one of the most scarce talents in the embedded industry at present. With the knowledge of the previous course, to understand the embedded Linux common interface driver writing methods, including:
1, flash drive: Master in the Linux environment to drive common flash memory (nor flash, NAND flash);
2, block device driver: Master the principle of block equipment driving, the preparation of learning RAMDisk;
3. Network Card driver: Master The writing principle of network card device and be able to transplant various network card drivers skillfully. On the basis of familiar with the hardware register of NIC, it has the ability to write a perfect NIC driver for it.
4, LCD drive: Master the principle of Frambuffer drive. Have the ability to use the Controller embedded Platform reference LCD manual to achieve a variety of common LCD drive;
5, SD card driver: Master Sdio interface operation, familiar with SD card driving principle;
6, USB device driver: Understand the USB host device driver structure and programming methods.

Master

2

WinCE Operating System Development basics

Windows CE is currently another of the most mainstream embedded operating system, embedded college use its own in the Windows CE system teaching advantages, understand the characteristics of Windows CE application development and system development, and compare the Linux operating system, understand the current mainstream embedded OS similarities and differences, Improved understanding of embedded OS development

Know



  The above is an approximate learning route!   Overall: The company interview will not require you to master how much, some also need an understanding, overall, study well in front of 2 points you have been very NB. Although the above said to be proficient in a lot of, but I feel familiar with the master is very good, like we have students to say ha.

• Transfer to "linux learning route

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.