Linux的经典书籍及学习方法

来源:互联网 发布:淘宝找回手机真的假的 编辑:程序博客网 时间:2024/04/28 08:38

Linux的经典书籍及学习方法

 

一、linux之路,路漫漫其修远兮,吾将上下而求索!先上经典书籍!

1.入门篇 

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

2.驱动篇 

LINUX设备驱动程序 》科波特著就是网上说的“LDD”,经典之作,必备书籍。国产经典《Linux驱动详细解》也是一本非常不错的书,很实用,书中源代码 分析比较多,基于2440的,对linux外围驱动有很全面的讲解。程序开发,高薪在 Linux Linux程序员,高薪在驱动开发。可以说, Linux驱动程序员,薪水在万元以下的,一个都没有。普遍观点认为, Linux驱动开发很难学,这并不正确。初学者认为 Linux驱动开发很难学,关键在于其没有选对正确的入门书籍。《 Linux设备驱动程序》这本书,过去已经有多位 Linux项目经理推荐过,你要想学MOD编程,想挑战高薪职位,这本书读一读是很有必要的。当然,这本书不是一本针对初学者的书籍,初学者应首先学习前面提到的《UNIX环境高级编程》再看这本书,你才能真正的学懂学好 Linux 驱动开发。 

3.内核篇 

浙江大学的《LINUX内核源代码情景分析》,外国的《UNIX源代码分析》还有深入理解linux内核都是出名的经典巨作。

学习 Linux ,就要学习 Linux的精华。而 Linux的精华,则在于 Linux的内核。《深入理解 Linux内核》就是一本辅助学习 Linux内核的经典书籍。有的初学者,在没有人指导的情况下,就钻入 Linux Kernel代码的海洋中埋头苦学,结果学了半天仍然是一头雾水。当然了,在大师指导下学习就不一样了。本书以最新的 Linux 2.6版架构为基础,分门别类地向初学者介绍了Linux内核的架构、编程思想、以及功能模块。相信你在本书的指导下学习,对于你读懂 Linux操作系统的精华部分,会取得事半功倍的效果。事实上,不少知名公司招聘的题目里面,很多就出自这本书,可见它真的是论述 Linux内核的经典书籍。 

4.shell篇 

LINUX与UNIX Shell编程指南

5.应用编程 

不用说了肯定是unix环境高级编程被称为unix编程的圣经。UNIX环境高级编程》是 Unix/ Linux程序员案头必备的一本书籍。可以说,Linux程序员如果没有读过这本书,就好像基督教徒没有读过圣经一样,是很难让人理解的。这本书概括了 Linux编程所需的一切理论框架、主要系统函数、多进程编程、乃至 Linux网络通信。对于初学者,如果你能将《操作系统》这门课程结合着这本书来学习,试着用 Linux程序实践《操作系统》这门书中讲的进程间通信、进程调度、进程同步等内容,相信这将是一个一举两得的事情。哦,忘了告诉大家,上次 CNN采访 Google总裁佩林的时候,佩林的书架上就有这本书的英文版,可见它真的是一本全球开发者必备的一本书。

6.TCP/IP篇 

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

7.c语言 

The C Programming Language》正是作者造出来的c语言,书能垃圾就怪了。
c和指针》和《c缺陷和陷阱》两本必备。包含了c语言最容易出错的地方,加深c语言功力的好材料。

C专家编程,c语言技术手册, Practice cProgramming 等。

8.算法 

算法导论》,床头必备喝

注:这些经典的书是经得起反复琢磨的,知识并不是一蹴而就的,需要反复实践,反复理解!千万不要妄想一口吃个胖子!

 

9、《嵌入式 Linux 应用开发完全手册》,韦东山著

要说 Linux应用最广泛的地方,那一定是无处不在的嵌入式设备了,《嵌入式 Linux应用开发完全手册》就是一本教会您怎样开发Linux嵌入式系统软件的一本好书。这本书综合了常见的嵌入式开发经验技巧,以及常见的嵌入式系统应用,系统移植,调试及异常处理等,内容非常丰富,是中文 Linux领域难得的一本好书。嵌入式处理器种类繁多,韦老师着重讲了目前国内最常用的ARM系统,实用性很强,是国内嵌入式程序员不容错过的一本工具书。  

10、《人月神话》(32周年中文纪念版),布鲁克斯著 

上面为大家推荐了几本 Linux编程经典书籍,但要问编程的最终目的是什么,那一定还是要应用到实际项目中。做项目,那就一定离不开《人月神话》这本书。《人月神话》的作者布鲁克斯,是公司的超级大牛人,也是图灵奖的获得者。去年,他到中国访问的时候曾经表示,《人月神话》这本书,浓缩了项目实践中的正反两方面经验,是项目经理和系统分析师必读的一本书。各位年轻的朋友,最终还是会要管项目的,与其你临时再学习,还不如早点接触这方面的知识比较好。可以说,Linux的项目,对开发者的要求都很高,大家不要去跟 Windows程序员学一些不好的习惯,特别是项目实施方面的一些不好的习惯,而应该深入体会大师的书籍。目前,《人月神话》的32周年纪念版已经上市了,有志于成为项目经理和产品经理的人,不应该错过这本做项目的圣经。  

二、如何学习linux

Linux操作系统主要就是一些配置文件(/etc)和命令行工具(/bin /sbin /usr/bin /usr/sbin),要掌握操作系统的主要目录结构和配置文件,运用系统的命令行工具(shell脚本)完成常规的操作系统维护工作,监控工作。进而可以安装部署一些企业应用,进行监控、管理等等。 

1.重要的命令:find,sed,awk,正则……

2.工具:gnu下的著名软件 gcc,gdb,vi,make……

3.unix编程,编译等。Xwin开发方式,gtk,qt……

4.文件系统,/dev下的设备(会用),/var下重要的东西,/etc 下的配置(常用服务配置apache, ftpd, sshd, xinetd,squid, natd, named),系统启动顺序,配置相应服务等……

5.c,python,php等高级语言…… 

三、个人水平定位

1.初级:熟练使用命令、熟悉Shell编程、能配置简单的服务,清楚各类服务相关的配置文件的位置, 能看懂并可修改系统提供的配置脚本(/etc/*.*)。推荐书籍: 
鸟哥的私房菜基础篇、高级篇》 
Advanced Bash Shell》 
2.中级:熟悉TCP/IP原理、OS原理、熟练使用C语言、Linux系统编程、网络编程。 推荐书籍: 
The C Programming Language》 
Unix环境高级编程》 
Linux程序设计》 
TCP/IP协议详解卷一》 
Unix网络高级编程》 
3.高级: 内核,驱动级别。推荐书籍:
Linux Device Driver》 
深入理解Linux内核》 
深入理解计算机系统》 
深入理解LINUX网络内幕》 

四、学习途径

1.HelpSystem  帮助文档(man)

2.onlinebooks  在线文档(wiki ,blogs)

3.TrainingGuide   培训教程

4.TopicCollections  专题

5.Forms          论坛

6.名家的书籍

7.IRC,邮件列表等

8.理论与理论中的实践的差别并不如理论与实践中的实践差别那样大!

 

五、其他的书

javascript基础教程,~高级程序设计,~权威指南,~DOM编程艺术,~设计模式,~入门经典

UNIX in aNutshell,The unix programming environment,unix技术手册

managingprojects with make

applyingRCS and SCCS

 

六、自己的路

linux/unix(c , bash(shell) , 工具(vi, gcc, make) , 内核机制, python(高级语言) , 开源)

设计理念,系统管理,unix环境,服务器,嵌入式,桌面,移动设备

 

贡献者:水煮鱼、xiangzi888 

 


0 0
原创粉丝点击