嵌入式LINUX核心图书

摘要:
Linux基础知识1。Linux和UnixShell编程指南注意:我认为您应该首先查看您安装的Linux发行版的文档。主要介绍Linux下的系统调用和相关应用。本文介绍了基于S3C2410的嵌入式系统应用开发的各个方面。Linux内核1,深入理解Linux内核(第三版)2,Linux内核源代码场景分析,毛泽东和胡锡明著。注意:这两本书应该是研究Linux内核的经典著作。但是看看Linux内核级别。
Linux基础
1、《Linux与Unix Shell 编程指南》
注:Linux的基本应用,我想首先应该看你安装的Linux发行版的文档。比如我用 RedHat 9.0,虽然老了些,但是资料非常丰富,容易上手。Redhat Linux 9入门手册,配置手册从红联都可以下载 到。如果英文好,可以从官方网站下载。基本操作熟悉了,必须要下功夫学好shell。Linux下的所有配置都是通过shell脚本完成的,shell还可以帮助你提高工作效率,在嵌入式Linux中,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应用程序开发详解》
注:1和2是标准C的经典教程,其中1是C99标准,描述比较细致,容易入门。2是C89标准 (包括K&R非正式标准),举例比较有深度。两本结合,C基础就差不多了。3是Linux C的经典教程,主要介绍Linux下系统调用和相关应用。4是一门实用培训教程,华清远见出的,讲述嵌入式Linux C,介绍了基于S3C2410的嵌入式 系统应用程序开发的方方面面。如果不是学习嵌入式系统,那么4是不必要的。

Linux内核
1、《深入理解Linux内核》(第三版)
2、《Linux内核源代码情景分析》毛德操 胡希明著
注:这两本书应该是研究Linux内核的经典之作。不过研究Linux内核这个层次,根据自己的 学习情况和兴趣进行选择。如果了解了Linux内核的实现原理,对各个方面都具有不可估量的影响。但是现在Linux内核太庞大了,一个人的精力有限,很 难全部吃透。所以,一是可以看赵炯那本《Linux内核完全注释》,二是选择Linux内核的某个部分,不如网络子系统,进行深入研究。我想,这个层次应 该是比较高的。

研发方向
1、《UNIX Network Programming》(UNP)
2、《TCP/IP详解》
3、《Linux内核编程》
4、《Linux设备驱动开发》(LDD)
注:这个需要根据自己的特点选择。不过在未能作出选择之前,可以看看这几本书,大体了解一下,这样既可以拓宽知识面,又可以作出明智的选择。但是,工作后很可能不会按照你的意愿进行。所以,利用可以自由支配的时间来完善自己应该是明智之举。

硬件基础
1、《ARM体系结构与编程》杜春雷著
2、S3C2410 Datasheet
注:嵌入式系统的两大核心就是MCU/SoC和EOS。对MCU,我选择ARM;你可以任意选择 一款基于ARM核的MCU,关键是要有块Demo板,玩熟!因为学习的硬件条件,比如画PCB板等等,大多是不具备的。所以就在Demo板上逐步深入研究 了,熟悉了一种MCU,其他的也比较容易上手。

英语基础
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核心图书》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Oracle性能监控脚本(sql)Hibernate原理、配置及单表操作下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

update子查询

基础知识 1, 关联子查询和非关联子查询 在非关联子查询中,内部查询只执行一次并返回它的值给外部查询,然后外部查询在它的处理中使用内部查询返回给它的值。而在关联子查询中,对于外部查询返回的每一行数据,内部查询都要执行一次。另外,在关联子查询中是信息流是双向的。外部查询的每行数据传递一个值给子查询,然后子查询为每一行数据执行一次并返回它的记录。然后,外部查询...

mac 驱动

Mac OS硬件驱动(.kext)安装方法一、Mac驱动程序的概念我想用我所理解的系统概念为各位稍微的介绍一下在Mac上的驱动程序概念,基本上,Mac OS X Tiger是一个UNIX架构的核心的系统,所以如果有一些UNIX系统概念其实在底层的架构会很容易了解,系统核心,通常会有包含了硬件支持的程序在内,也就是说有一些需要在系统核心启动就跟着支持的基础硬...

onkeypress与onkeydown及 oncopy和onpaste 事件区别详细说明

onkeypress与onkeydown 具体区别: 1. 一个放开一个没有放开,onkeydown 先于 onkeypress 发生。 2.onkeypress 无法系统按钮。 2.onkeydown 捕获的 keyCode 不区分字母大小,而 onkeypress 区分。 onkeypress是在用户按下并放开任何字母数字键时发生。系统按钮(例如,箭头键...

[二] JavaIO之File详解 以及FileSystem WinNTFileSystem简介

File类 文件和目录路径名的抽象表示形式。 我们知道,对于不同的操作系统,文件路径的描述是不同的 比如 windows平台:用 linux平台:用/   File是Java为了这一概念提供的抽象描述,与系统无关的视图 抽象路径名有两个组件: 1.可选的与系统有关的前缀  字符串   比如盘符,"/" 表示 UNIX 中的根目录,...

Ubuntu下双显示器设定

自8.10后的版本,系统自带了xrandr工具,可以很好的实现双显示器。配置与使用如下: 介绍    X Windows 中有一个显示分辨率的概念,在默认情况下,这个显示分辨率为 max*max ,max等于你的所有连接上的显示器中最大分辨率中的最大值。例如我的笔记本液晶屏最大分辨率为 1024*768,外接显示器最大分辨率为 1280*1024,则...

GDAL源码剖析(十一)之OGR投影说明

一、简介 本文参考英文地址:http://www.gdal.org/ogr/osr_tutorial.html。 OGRSpatialReference类和OGRCoordinateTransformation类主要用来提供定义坐标系统(投影和水准面)和转换坐标。这两个类都基于OpenGIS的坐标转换说明,并且使用Well Known Text格式来进行表...