Linux Basics
1. Linux and Unix shell programming guide
C language basics
1. c primer plus, 5 thEdition [us] Stephen Prata
2. The C programming language, 2nd edition [us] by Brian W. kernighan David M. rithie (K & R)
3. Advanced Programming in the Unix environment, 2nd edition (apue)
4. Detailed description of Embedded Linux Application Development
Linux Kernel
1. deep understanding of Linux kernel (Third edition)
2. Mao dejian, author of Linux kernel source code Scenario Analysis
R & D direction
1. UNIX Network Programming (UNP)
2. Explanation of TCP/IP
3. Linux kernel Programming
4. Linux device driver development (LDD)
5. Yang zongde, "Linux Advanced Programming Design"
Hardware Basics
1. Du chunlei, ARM architecture and Programming
2. S3C2410 Datasheet
Basic English
1. Professional English for computer and communication
System tutorial
1. Embedded System-architecture, programming and design
2. Embedded Systems-using open source code and strongarm/XScale Processors
3. Building embedded Linux systems
4. Principle and instance development of embedded ARM system by Yang zongde
Theoretical Basis
1. Introduction to Algorithms
2. Data Structure (c)
3. Computer Organization and architecture? Performance Analysis
4. Understanding computer systems in depth [us] Randal E. Bryant David O '''allaron
5. Operating System: essence and design principle
6. compilation principles
7. Data communication and computer network
8. Data Compression Principles and Applications
C language book recommendation
1. The C programming language C Programming Language
2. pointers on C and pointer
3. c traps and pitfalls C traps and Defects
4. Expert C Lanuage Expert C Programming
5. Writing clean code ----- microsofttechiniques for developing bug-free C Programs
Essence of programming-Tips for Microsoft to write high-quality and error-free C Programs
6. programming embedded systems in C and C ++ Embedded System Programming
7. C language Embedded System Programming Practice
8. Lin Rui, high quality c ++/C Programming Guide
To learn C as much as possible, you should not only focus on C itself. Algorithms and architecture methods are all important.