本人EE知识体系导航 - Embedded menu

原标题:嵌入式读书列表 - 参考

本篇标题用EE不免“大”了点儿,但事实上EE毕业的同学们做嵌入式已不是大惊小怪的事情。

 

“Curriculum of Open Source University”
   三百六十行,各行亦有各行的书柜,一些瞧过的书,Linux嵌入式方向,年末了,写个读后感大集合,若对大伙儿有用,鼓个掌,龙年攒人品。都是些个人观点,若有不当,看官一笑了之。
 
第一阶段:

《鸟哥的私房菜》
	浅显易懂,边读边实践,近距离认识linux。
	目标:掌握shell;
	     摆脱Windows的思维束缚。
	
《c陷阱和缺陷》/《c与指针》
	在一个菜鸟自以为是的时候,此书给予的当头一棒可谓是轻重适中。
	对自己的c能力及编程能力等级给予重新认定。
	同时也是面试冲刺必备。

《高质量c_c++编程》
	编程是门艺术:自己的思维要清晰,更要让读者看得舒服。
	逐渐形成一套规范的编程风格。

《Linux内核设计与实现》
	无数人士推荐的内核入门手册,简单易懂。
	“麻雀虽小,五脏俱全”,先把握内核整体,便于以后各部分的深入理解。

《嵌入式Linux应用开发完全手册》
	嵌入式有“硬”又有”软”,一本由硬件角度出发的驱动手册,从单片机的视角了解ARM驱动编程。
	内容贴近datasheet,就是IC老了点。s3c2440作为一款经典的嵌入式入门IC已被s3c6410取代。虽然s3c6410被视为入门级,相比s3c2440性能升级了不少,复杂度也大为增加。随着处理器的不断升级,只能苦了日后还在丫丫学步的菜鸟们。

《Linux设备驱动开发详解》
	从软件视角认识驱动的一本书,同样讲究实用。单就s3c2440驱动入门,此书+《嵌入式Linux应用开发完全手册》足矣。


课外阅读:

”Linux c编程系列“
	不管是google还是baidu 字段“Linux c编程”,都能搜出相关书籍一胡片,我们的山寨能力不仅体现在手机、平板,在图书出版业更是炉火纯青。内容大同小异,目录千篇一律。
	大体可以分为三部分:环境搭建+工具的使用,shell+gun c+arm汇编基础,linux API(文件操作、同步异步IO、多进程线程、IPC、socket通信等)。
	内容组织看上去比较系统,涉及面广,注重实用性,个别深度亦有。虽是山寨,捧上一本,边读边敲,一趟下来也是获益匪浅。

《Advanced Linux Programming》
	如果你是一位反对盗版,厌恶山寨的正义人事,那么推荐此书。不过,我们的山寨早已成熟多年,读罢,也未发现有何精妙之笔。

《Red Hat Enterprise Linux 6.0系统管理》
	一本linux运维的LJ书。说其完全没用,但多少能有点帮助,充其量就是本手册,趁rhel6发布不久先赚笔钱之流。同样的58元人民币,相比其他,不值啊不值。
	类似书籍相当泛滥。

《Advanced Bash-Scripting Guide》
	高级bash脚本编程手册,对于linux服务器运维的朋友这东东是需要看几遍di。
	而对于我这号,掌握三四十条shell命令,应付虾兵蟹将足以,若不行,则求助谷歌,度娘。

	

第二阶段:

《Git权威指南》
	一本有点小废话的字典。
	cvs等上古铠甲,在现代战争中已不堪一击。如果你热爱开源,那么,你需要这么一套装备。虽然上手有点小困难,但对于立志成为“海贼王”男人的你,拿下它是必须di。“vim+ctags+git”将成为你的黄金圣衣。
	对于Git,引用作者的一句话:“我非常后悔没有在学习编程的第一天就开始使用版本控制”。

《熟悉binutils工具集》
	一个pdf,仅仅20页,但实用性很强,可见作者之用心。
	认识编译器不为人知的用法,为之后的深入理解打好基础。

《Linux设备驱动开发》
	同《Linux内核设计与实现》一样, “内核四库全书”之一,无数达人推荐的内核驱动必备书籍。
	06年出版,苦苦等不到第四版出炉,可能是过于经典,没必要更新的缘故。

《Unix环境高级编程》
	linux环境编程的神装,从事linux编程事业的码农必备,也是上述 Linux c编程系列各山寨的原版。厚如辞海,经典到掉渣。
	对于靠网络终端编程吃饭的码农们,大神Stevens的另外两套书籍《TCP/IP详解》、《UNIX网络编程》是最好膜拜一下。
	只可惜英年早逝,是真的升天成了仙,但留下的著作也算是永垂不朽。
	放于桌前,菜鸟只能烧香膜拜,入门者谓之字典,过槛者称其练习册。


课外阅读:

《Linux内核API完全参考手册》
	内核不仅是改革开放的,也是与时俱进的。“一日patch几千行,两周出个小版本”,胆敢有人出书分析内核api?
	一瞧内容,原是特定版本的个别分析。“手册”一词还算恰当,这个“完全”嘛就没有了“实事求是”的作风。
	不过有一点我很是喜欢,书里不仅有api的讲解,而且有短小干练的代码实例。API的学习不是简单的讲几句就能掌握,关键还是实践。杯具的是代码可以网上下载,直接make,insmod就OK。



第三阶段:

《深入理解Linux内核》
	内核不是只有driver,还有fs,mm等。此书带给你的不是量变而是质变。
	代码敲的再多只是不断量变的过程,编程也不会上升为艺术;驱动看的再多也不会让你拥有敲出驱动代码的能力。
	内核是个“牵一发而动全身”的禁地,从整体上把握内核运行机制,以全面的视角审视内核的内在机理,才能真正清楚驱动在内核中的地位,明白整体与局部的辩证关系。
	读完此书,好比”八门遁甲“开了景门的“朝孔雀”,内存管理,文件系统,调度算法等,各个代表着一个研究方向,每一个方向都会有无数论文等着你去观摩,真是百花齐放,精彩缤纷。
	选择一个方向,开“惊门”,使“ 昼虎”,在一个研究领域打出精彩一击。

《Linker && Loader》
	如果c语言代表底层,它便是底层中的底层。古老的课题,古老的书,古老却有时并不意味着落伍,掌握这种古老,便是“大牛”的毕业证。
	直接读此书,只会越读越困难,不免有挫败感。内容更偏向学术研究,针对linux平台,不如先找几篇有关elf文件格式的论文研读一番,比如:《ELF文件格式分析》(滕启明),再读便有豁然开朗之感。
	实用性可能不强,重在精神境界的升华。

《ARM嵌入式系统开发——软件设计与优化》
	编译器原理代表着码农们的底层,而此书代表的就是苦逼嵌入式工程师的底层。
	“从事ARM嵌入式系统软件开发的每一位工程师的桌上都应该摆着这本书。对于初学者来说,他是一本详尽、透彻的使用指南;对于ARM专家来说,它则是一本有益的参考书。”
	一本看似复杂,读来却有轻松之感的佳作,足见作者之功底。在学好《计算机组成原理》,有一定的ARM汇编经验的基础上研读此书,真是爱不释手,百看不腻。读过此书,一些乱七八糟的东西似乎开始有了调理,对ARM处理器的认识更是受益匪浅。

	
课外阅读:

《精通Linux设备驱动开发》
	“印度阿三”的作品,内容涉及广泛,讲解有点简单。但内容广了自然就不可能太详细,对于内核驱动的老手们来说,简单的一句提示足矣,所以,谓之手册。
	同样是手册,人家写的咋就觉的好嘞。

《深入Linux内核架构》
	同为“字典”一本。可能是因为《深入理解Linux内核》迟迟不更新的缘故,德国人坐不住了。四年的发展内核已是面目全非,进程调度算法,内核数据结构等变化不小,不能总是抱着一本老古董啃不是?!
	该书很好的诠释了德国人严谨的作风,内容丰富详尽,印刷不错,捧来倍觉厚实之感。读罢《深入理解Linux内核》再读此书,很是亲切。

《see MIPS run》
	地球上的嵌入式处理器可不只ARM一种,单一的关注ARM有点狭隘主义,至少在多媒体处理方面,mips仍然是技高一筹。
	一本《计算机组成原理》的mips版,有空多看看,扩展视野,以免被ARM思想垄断。

《Linux内核源代码情景分析》
	下了个电子档,1500+页,内容详细到代码实例剖析,虽是2.4的内核,但还是很有启发,对作者也是心怀崇敬。
	参考为宜。

《Understanding the Linux Virtual Memory Manager》
	纯粹学术性的东东,基本就是《深入理解Linux内核》内存管理部分的《情景分析》。
	研究内存管理达人们的必备。

《深入理解Linux网络技术内幕》
	如果说《深入理解Linux内核》支撑着《Unix环境高级编程》,那么此书便支撑着《TCP/IP详解》和《UNIX网络编程》。
	128元人民币,加上最后的作者介绍和O'REILLY图书广告,整整一千页!
	书写的很详细且图文并茂,读完不仅要有网络功底,也确实需要些时日。



第四阶段:

《我是USB》
	fudan_abc的佳作,对usb的分析具体到代码,语言诙谐,文笔不错。同《Git权威指南》,难免有点小废话,技术类图书还是直截了当,图文并茂的好。总体来说还是给予肯定,将枯燥的代码聊得似小说,可见作者对技术的理解已由理性认识上升为感性,足见功底之深厚。

《S3C2440A 32-BIT CMOS MICROCONTROLLER USER'S MANUAL》
	初级datasheet,不到600页,每一章节介绍一模块,模块都很基础,功能单一,天生充当教材的材料。

课外阅读:

《S3C6410X 32-BIT CMOS MICROCONTROLLER USER'S MANUAL》
	在读过S3C2440A UM之后,与之对比便对处理器的功能进化有直观体会。多媒体处理能力明显增强,相应的多媒体模块从目录中即可看出其复杂化。1300+页,看完似乎不太现实。
	
《s5pV210 32-BIT CMOS MICROCONTROLLER USER'S MANUAL》
	作为当前正火的IC,内容架构有较大变化,功能强大,模块太多,所以目录分为几大章的结构。不仅是量的增加,内容的小有改变,例如gpio的配置会有些许不同。
	页数突破2K,读完似乎不太可能。基本是用哪看哪。

《Android应用开发解密》
	一本应用开发入门书,谈不上好坏,仅仅是api介绍,重在实用。书中实例代码有下,已入门者瞧瞧代码即可。

《Android技术内幕:系统卷》
	大致的介绍了android的中间层和底层。很多地方限于篇幅,说一点不如不说。讲解貌似很深,但读来不知所云,内容基本网上都有,有借鉴各家博客后整理之嫌,但此风气在android各类国产书中已是司空见惯,能整理好为读者所接收也属不易。
	至于对android的理解,在看过上述图书之后,android也不过只是个app而已。android的难点在于虚拟机和进程间通信的实现,而其核心就是NDK。

     

个人见解,仅供参考。

最后,祝各位新年快乐,龙年大吉!


Everything here starts from 2012

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值