嵌入式参考书籍-列表【转】

“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。
相关文章
相关标签/搜索