Linux Basics
1. "Linux and Unix Shell Programming Guide"
C Language Basics
1, "C Primer plus,5th Edition" "Beauty" Stephen Prata
2, "The C programming Language, 2nd Edition" "Mei" Brian W. Kernighan David M. Rithie (K & R)
3, "advanced programming in the UNIX environment,2nd Edition" (apue)
4, "Embedded Linux application Development detailed"
Linux kernel
1, "in-depth understanding of the Linux kernel" (third edition)
2, "Linux kernel source code scenario analysis" Maudeca Hu Himing
Research direction
1, "UNIX Network Programming" (UNP)
2, "TCP/IP detailed"
3, "Linux kernel Programming"
4, "Linux Device Driver Development" (LDD)
Hardware Basics
1, "ARM architecture and programming" Duchunrei
2, s3c2410 Datasheet
Basic English
1. "Computer and communication professional English"
System Tutorials
1, "Embedded system-architecture, programming and Design"
2, "embedded system-the use of open source code and Strongarm/xscale processor" Maudeca Hu Himing
3. "Building Embedded Linux Systems"
Theoretical basis
1, "Introduction to Algorithms"
2, "Data structure (c language version)"
3, "Computer Organization and Architecture: Performance Analysis"
4, "in-depth understanding of computer systems" "Beauty" Randal E. Bryant David O ' Hallaron
5, "Operating system: Essence and Design Principle"
6, "Compiling principle"
7. "Data Communication and computer network"
8, "data compression principle and application"
--------------------------------------------------------------------------------------------------------------- ------------------------------------------------
Introductory article
"Linux authoritative guide" book is good, write very comprehensive also relatively broad, involved in not deep, as a primer book Good, you can more comprehensive understanding of Linux. In addition, the more popular can also look at "bird Brother's private food" and other books, the management of the book. If you want to do the server direction can be found to see.
Driver Chapter
"Linux device Driver" is said on the internet "LDD", classic, necessary books. The domestic classic "Linux drive detailed solution" is also a very good book, very practical, the book source code analysis is more, based on 2440, the Linux peripheral drive has a very comprehensive explanation
Kernel Chapter
Zhejiang University's "Linux kernel source code scenario analysis", Foreign Devils "Leon's Unix Source code Analysis" and "in-depth understanding of the Linux kernel" is a famous classic masterpiece. In addition, Zhao Jiong's "Full Anatomy of the Linux kernel – based on the 0.12 kernel" is also very good, the kernel code is detailed comments, very helpful to the understanding of the kernel and the analysis of the code.
Shell article
"Linux and Unix shell Programming Guide"
Application programming
Needless to say, "Advanced Programming in UNIX environment" is called the Bible of Unix programming.
TCP/IP Chapter
W.richard Stevens, author of the TCP/IP detail, is also the author of Advanced Programming for UNIX environments, and none of the books from the cattle are classic. But die young and observe a moment of silence.
C language
"The C programming Language" is the author of the C language, the book can be Garbage is strange
"C and Pointers" and "C defects and pitfalls" are the two necessary. Contains the most error-prone areas of C language, and deepens the good material of C language skill.
About algorithms
Introduction to the algorithm
--------------------------------------------------------------------------------------------------------------- ------------------------------------------------
1 familiar with Linux basic Environment >>> "Sifang dish of Bird Brother" "Basic Unix Tutorial" "Linux Programming Treasure" (none on the market, library has), etc.
2 familiar with operating system basics >>> "Modern operating System" "Operating system Concept"
3 familiar with system programming >>> advanced Programming of UNIX Environment Second Edition, design and implementation of UNIX operating system
4 kernel sequencing: Linux kernel design and implementation, Linux device driver, in-depth understanding of the Linux kernel, scenario analysis of Linux kernel source code, deep understanding of Linux virtual memory system
5 other books: "FreeBSD OS design and implementation", "Solaris Kernel Architecture", "Advanced UNIX Tutorial: System technology Insider", "Modern Architecture Unix System: Kernel Programmer's SMP and cache technology", 80386 and its programming in protected mode (after 3 of the market is gone, the university library generally has "Intel64 and IA-32 arichitectures software Developer ' s Manual"
6 in fact, the kernel play deep, and the system and compile to learn "computer architecture: Quantitative Research Methods" "Compiling Principle" (Dragon book)
--------------------------------------------------------------------------------------------------------------- -----------------------------------------------
List of recommended books for Linux programming
Shell programming
"Linux and Unix shell Programming Guide"
Bash Bible:
Advanced Bash Scripting Guide (if you are using a Gnu/debian system, you can install the document with Apt-get installation abs-guide)
BASH Programming–introduction How-to
Bash Mans
User-level programming books:
Programming in the UNIX Environment (second edition of Advanced Programming for UNIX environments), author W.richard
stevens/Yu Jinyuan, etc.
Gnu/linux Programming Guide Author Kurt Wall
Linux Programming Authority Guide Author Yu Mingxian, Chen Xiangyang, Fanghan
The Art of Unix programming author E.S.R
Computer Systems A Programmer ' s perspective
(Chinese name) "In-depth understanding of computer Systems (revised edition)"
UNIX Systems Programming (Chinese version of UNIX system programming) (US) KAY
A.robbins, STEVE ROBBINS Translator: Juan Chen Zhaoping
Network programming:
Unix Network Programming V1 & V2,unix Web Programming Volume 1, 2 author W.richard Stevens
"UNIX Network Programming"
Xwindow programming
Definitive Guides to the X windowsystem author Dan Heller, Paula M. Ferguson
Kernel source code reading (combined with source code) and programming
Entry
Learn the Linux kernel guide at the edge of the dry side
Advanced
"Linux Kernel Development"
"Linux kernel source code scenario analysis"
"Deep analysis of Linux kernel source code" Chen Li
"Understanding Linux Network Internals" is an in-depth understanding of the Linux Web Insider (photocopy version) Christian Benvenuti
Kernel module Programming
The Linux Kernel Module Programming Guide
Linux Device driver programming
Linux Device driver/linux devices
Drivers author Alessandro Ruibini
Multithreaded programming
The Multithreaded Programming Guide
--------------------------------------------------------------------------------------------------------------- ------------------------------------------------
Linux operating system is mainly a number of configuration files and some command-line tools, to master the main operating system directory structure and configuration files, the use of System command-line tools to complete routine operating system maintenance work, monitoring work. You can then install and deploy some enterprise applications for monitoring, management, and so on.
You can understand the common configuration of the/etc directory, and understand the commands commonly used by/bin/sbin/usr/bin/usr/sbin to write regular maintenance scripts with the shell.
So you've been very good.
Beginner: Proficiency in command, familiar with Shell programming, can configure simple services, clear the location of various types of service-related configuration files,
Ability to read and modify system-provided configuration scripts (/etc/*.*)
Recommended Books:
"Bird Brother's private cuisine basics, Advanced articles"
"Advanced Bash Shell"
Intermediate: Familiar with TCP/IP Principles, OS principles, proficiency in C language, Linux system programming, network programming.
Recommended Books:
"The C programming Language"
Advanced Programming for the UNIX environment
"Linux Programming"
The TCP/IP protocol detailed volume one
Advanced Programming of UNIX Network
Senior:
"Linux Device Driver"
Deep understanding of the Linux kernel
"In-depth understanding of computer systems"
Deep understanding of the Linux Network Insider
linux Siku book
1. Linux kernel design and implementation edition2
2. Linux device driver edition3
3. Linux Kernel source code scenario analysis
4. deep understanding of Linux Kernel (third edition)
above-mentioned linux kernel Siku, hehe.
Introduction to Linux kernel design and implementation Edition 2