引用地址:http://www.cnblogs.com/notepi/archive/2013/06/15/3137103.html

Linux 学习书目推荐

Linux基础

1、《Linux与Unix Shell 编程指南》

C语言基础

1、《C Primer Plus,5th Edition》【美】Stephen Prata著

2、《The  C Programming Language, 2nd Edition》【美】Brian W. Kernighan David M. Rithie(K & R)著

3、《Advanced Programming in the UNIX Environment,2nd Edition》(APUE)

4、《嵌入式Linux应用程序开发详解》

Linux内核

1、《深入理解Linux内核》(第三版)

2、《Linux内核源代码情景分析》毛德操 胡希明著

研发方向

1、《UNIX  Network Programming》(UNP)

2、《TCP/IP详解》

3、《Linux内核编程》

4、《Linux设备驱动开发》(LDD)

硬件基础

1、《ARM体系结构与编程》杜春雷著

2、S3C2410 Datasheet

英语基础

1、《计算机与通信专业英语》

系统教程

1、《嵌入式系统――体系结构、编程与设计》

2、《嵌入式系统――采用公开源代码和StrongARM/Xscale处理器》毛德操 胡希明著

3、《Building Embedded Linux Systems》

理论基础

1、《算法导论》

2、《数据结构(C语言版)》

3、《计算机组织与体系结构?性能分析》

4、《深入理解计算机系统》【美】Randal E. Bryant David O’Hallaron著

5、《操作系统:精髓与设计原理》

6、《编译原理》

7、《数据通信与计算机网络》

8、《数据压缩原理与应用》

入门篇

《LINUX权威指南》书不错,写的很全面也比较广,涉及的不深,做为入门书籍不错,可以比较全面的了解linux 。另外比较热门的也可以看看《鸟哥的私房菜》等书,偏管理类的书。如果想做server方向的可以找来看看。

驱动 篇

《LINUX设备驱动程序 》就是网上说的“LDD”,经典之作,必备书籍。国产经典《Linux驱动详细解》也是一本非常不错的书,很实用,书中源代码分析比较多,基于2440的,对linux外围驱动有很全面的讲解

内核篇

浙江大学的《LINUX内核源代码情景分析》,外国鬼子的《莱昂氏UNIX源代码分析》还有《深入理解linux内核》都是出名的经典巨作。另外赵 炯的《LINUX内核完全剖析–基于0.12内核》也非常不错,对内核代码进行了详细的注释,非常有助于对内核的理解和代码的分析。

shell篇

《LINUX与UNIX Shell编程指南》

应用 编程

不用说了肯定是《unix环境高级编程》被称为unix编程的圣经。

TCP/IP篇

《TCP/IP详解》作者W.Richard Stevens也是《unix环境高级编程》的作者,牛人出的书没有一本不是经典的。但是英年早逝,默哀一下。

c语言

《The C Programming Language》正是作者造出来的c语言,书能垃圾就怪了

《c和指针》和《c缺陷和陷阱》两本必备。包含了c语言最容易出错的地方,加深c语言功力的好材料。

关于算法

《算法导论》

1 熟悉linux基本环境   >>>   《鸟哥的私访菜》《unix初级教程》 《linux编程宝典》(市面上无,图书馆有), 等等。

2 熟悉操作系统的基础知识 >>>  《现代操作系统》 《操作系统概念》

3 熟悉系统编程  >>> 《unix环境高级编程第二版》《unix操作系统设计与实现》

4  内核 按先后顺序: 《 linux内核设计与实现》 《linux设备驱动程序》 《深入理解 linux内核》 《linux内核源代码情景分析》 《深入理解linux虚拟内存系统》

5 其他一些书籍: 《freebsd操作系统设计与实现》 《solaris内核结构》 《unix高级教程:系统技术内幕》 《现代体系结构的unix系统:内核程序员的smp与cache技术》 《保护方式下的80386及其编程》 (后3本市面上没了,大学图书馆里一般都有》 《Intel64 and IA-32 Arichitectures Software Developer’s Manual》

6 其实内核玩深了,体系和编译也要学好     《计算机体系结构:量化研究方法》  《编译原理》(龙书)

Linux编程推荐书籍一览表

shell 编程

《LINUX与UNIX SHELL编程指南》

BASH宝典:

Advanced Bash Scripting Guide (如果你使用的是 GNU/Debian 系统,可以用 apt-get install abs-guide 安装该文档)

BASH Programming – Introduction HOW-TO

Bash Man

用户级编程书籍:

Advanced Programming in the UNIX Environment(中文版《UNIX环境高级编程》第二版)    作者 W.Richard
Stevens/尤晋元等

GNU/Linux编程指南       作者 Kurt Wall

Linux 程序设计权威指南  作者 于明俭、陈向阳、方汉

《The Art of Unix Programming》作者 E.S.R

Computer Systems A Programmer’s Perspective

(中文名)《深入理解计算机系统(修订版)》

《Unix Systems Programming》(中文版《UNIX系统编程》)作者:  (美)KAY
A.ROBBINS, STEVE ROBBINS  译者:陈涓 赵振平

网络编程:

Unix Network Programming V1 & V2,Unix网络编程卷1、2     作者 W.Richard Stevens

《unix网络编程》

XWindow编程

Definitive Guides to the X WindowSystem    作者 Dan Heller, Paula M. Ferguson

内核源代码阅读(结合源代码)和编程

(入门)

《边干边学Linux内核指导》

(高级)

《Linux Kernel Development》

《Linux内核源代码情景分析》

《深入分析Linux内核源代码》     陈莉君

《 Understanding Linux Network Internals 》即《 深入理解Linux网络内幕(英文影印版)》Christian Benvenuti

内核模块编程

《The Linux Kernel Module Programming Guide》

Linux设备驱动编程

Linux设备驱动程序/Linux Device
Drivers  作者 Alessandro Ruibini

多线程编程

《多线程编程指南》

linux学习书籍推荐linux学习书籍推荐的更多相关文章

  1. 为Linux技术学习推荐看的书籍—《Linux就该这么学》

    成长,是一种经历:经历,是一种人生的体验.人生的意义不在于我们拥有了什么,而在于从中我们体悟了什么.在这短短的三年,却在我的人生中弥足珍贵,在脑海中记忆犹新,在这大学三年里,我从一个莽撞少年成长为一名 ...

  2. 我的Linux学习之路及参考书籍

    学习目的 很简单的考虑,最近在各大招聘网站上找工作,发现多数c/c++开发职位都需要Linux开发经验,让我很苦恼,因为Linux我到目前为止知之甚少,知道Linux的概念,也在大学期间了解过一段时间 ...

  3. 关于Linux内核学习的误区以及相关书籍介绍

    http://www.hzlitai.com.cn/article/ARM9-article/system/1605.html 写给Linux内核新手-关于Linux内核学习的误区 先说句正经的:其实 ...

  4. 推荐一本学习Groovy的书籍Groovy程序设计!

    有朋友公司在用groovy开发,于是推荐我学习一下,搜到了这本书: 花了一个月时间读完了这本书!写的很棒,几乎没有废话,全书都是很重要的知识点和很好的讲解,确实像封面说的那样,使用的好可以提高开发效率 ...

  5. Linux测试环境搭建的学习建议

    随着Linux应用的扩展许多朋友开始接触Linux,根据学习Windwos的经验往往有一些茫然的感觉:不知从何处开始学起.这里介绍学习Linux测试环境搭建的一些建议. 一.Linux测试环境搭建从基 ...

  6. 请不要重复犯我在学习Python和Linux系统上的错误

    本人已经在运维行业工作了将近十年,我最早接触Linux是在大二的样子,那时候只追求易懂,所以就选择了Ubuntu作为学习.使用的对象,它简单.易用.好操作.界面绚丽,对于想接触Linux的新手来说是非 ...

  7. 分享身为linux爱好者的成长及学习经历

    成长是无尽的阶梯,一步一步的攀登,回望来时的路,会心一笑:转过头,面对前方,无言而努力的继续攀登.现在来和linux爱好者说说我的成长经历,在我的大学时光里我从一个一无所知的少年转变成了一个见多识广的 ...

  8. linux新手学习之Arch Linux入门经验分享

    我一直是以Ubuntu与Fedora作为新手入门的系统,但是其实我真正想推荐的是Arch,经过前面的学习,或许你对Linux已经有了一个大致的了解,现在如果你想加速你的步伐,也许可以看看本文.如果要问 ...

  9. 推荐一些学习MySQL的资源

    前言: 在日常工作与学习中,无论是开发.运维.还是测试,对于数据库的学习是不可避免的,同时也是日常工作的必备技术之一.在互联网公司,开源数据库用得比较多的当属MySQL了,相信各位小伙伴关注我的原因也 ...

随机推荐

  1. C#不安全代码

    当一个代码块使用 unsafe 修饰符标记时,C# 允许在函数中使用指针变量.不安全代码或非托管代码是指使用了指针变量的代码块. 下面的实例说明了不安全代码中的指针的定义与调用: static uns ...

  2. python的random模块

    As an example of subclassing, the random module provides the WichmannHill class that implements an a ...

  3. 对PostgreSQL中 pg_各表的RelationId的认识

    读取普通的table或者系统表,都会调用heap_open函数: /* ---------------- * heap_open - open a heap relation by relation ...

  4. C++ 内存相关

    1.C++的内存管理可分为以下几个部分: 栈:记录程序的执行过程. 堆:采用new,delete申请释放内存. 自由存储区:对应于C中使用malloc,free申请释放内存. 全局存储区:也叫静态存储 ...

  5. Educational Codeforces Round 1 E. Chocolate Bar 记忆化搜索

    E. Chocolate Bar Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/contest/598/prob ...

  6. BZOJ 2456: mode 水题

    2456: mode Time Limit: 1 Sec Memory Limit: 256 MB 题目连接 http://www.lydsy.com/JudgeOnline/problem.php? ...

  7. delphi 插入 HTML代码 播放器

    Delphi在Webbrowser中插入 HTML/java script代码 使用方法将下面的代码赋值到1个记事本里保存,然后保存为xxx.htm就可以看到效果使用PasteHtml实现功能 的事件 ...

  8. Codeforces 278C Learning Languages(并查集)

    题意抽象出来就是求联通块的个数吧,然后添加最少边使图联通. 注意所有人都不会任何语言的时候,答案是n而不是n-1. #include<algorithm> #include<iost ...

  9. 一入python深似海--dict(字典)的一种实现

    以下是python中字典的一种实现.用list数据结构实现字典.详细是这种:[[(key1,value1),(key2,value2),...],[],[],...] 内部每个hash地址是一个lis ...

  10. CODEFORCE 246 Div.2 B题

    题目例如以下: B. Football Kit time limit per test 1 second memory limit per test 256 megabytes input stand ...