推荐几本学习嵌入式linux的书籍

(1) c语言是所有编程语言中的强者,单片机、dsp、类似arm的种种芯片的编程都可以用c语言搞定),因此必须非常熟练的掌握。
推荐书籍:《the c programming language》 这本经典的教材是老外写的,也有中译版本。
(2) 操作系统原理,是必需的,如果 是计算机专业毕业那也就无所谓了,如果是非计算机专业的就必须找一本比较浅显的计算机原理书籍看一看,把啥叫“进程”“线程”“系统调度”等等基本问题搞清楚。
(3) (3)linux操作系统就是用c语言编写的,所以 也应该先学习下linux方面的编程,只有 会应用了,才能近一步去了解其内核的精髓。
推荐书籍:《unix环境高级编程》(第2版)
(4) 了解arm的架构,原理,以及其汇编指令, 在嵌入式开发中,一般很少去写汇编,但是最起码的要求是能够看懂arm汇编。
(5) 系统移植的时候,就需要 从最下层的bootloader开始,然后内核移植,文件系统移植等。而移植这部分对硬件的依赖是非常大的,其配置步骤也相对复杂,也没有太多详细资料。
(6) 驱动开发
linux驱动程序设计既是个极富有挑战性的领域,又是一个博大精深的内容。
linux驱动程序设计本质是属于linux内核编程范畴的,因而是对linux内核和内核编程是有要求的。在学习前 要想了解linux内核的组成,因为每一部分要详细研究的话足够可以扩展成一本厚书。
另外推荐去各大书店图书馆看一下华清远见出版的畅销嵌入式专业图书,相信一定对 会有帮助的。

ARM Linux内核源码剖析

时间: 2024-11-05 14:47:30

推荐几本学习嵌入式linux的书籍的相关文章

作为一个新人,怎样学习嵌入式Linux?

作为一个新人,怎样学习嵌入式Linux?被问过太多次,特写这篇文章来回答一下. 在学习嵌入式Linux之前,肯定要有C语言基础.汇编基础有没有无所谓(就那么几条汇编指令,用到了一看就会).C语言要学到什么程度呢?越熟当然越好,不熟的话也要具备基本技能.比如写一个数组排序.输入数字求和什么的.学C语言唯一的方法是多写程序多练习,编译出错没关系,自己去解决:执行出错没关系,自己去分析.以前我是用VC来练习C语言的,经常去尝试着写一些C语言竞赛的题目.它们是纯C.纯数学.纯逻辑的题目,不涉及界面这些东

作为一个新人,怎样学习嵌入式Linux,(韦东山)

很早以前在网上看到的韦东山老师写的文章,复制到自己的博客,方便自己以后看. 在学习嵌入式Linux之前,肯定要有C语言基础.汇编基础有没有无所谓(就那么几条汇编指令,用到了一看就会). C语言要学到什么程度呢?越熟当然越好,不熟的话也要具备基本技能.比如写一个数组排序.输入数字求和什么的. 学C语言唯一的方法是多写程序多练习,编译出错没关系,自己去解决:执行出错没关系,自己去分析.以前我是用 VC来练习C语言的,经常去尝试着写一些C语言竞赛的题目.它们是纯C.纯数学.纯逻辑的题目,不涉及界面这些

作为一个新人,如何学习嵌入式Linux?

作为一个新人,如何学习嵌入式Linux?被问过太多次,特写这篇文章来回答一下. 在学习嵌入式Linux之前.肯定要有C语言基础.汇编基础有没有无所谓(就那么几条汇编指令,用到了一看就会).C语言要学到什么程度呢?越熟当然越好,不熟的话也要具备基本技能.比方写一个数组排序.输入数字求和什么的.学C语言唯一的方法是多敲代码多练习,编译出错没关系,自己去解决:运行出错没关系.自己去分析.曾经我是用VC来练习C语言的.常常去尝试着写一些C语言竞赛的题目. 它们是纯C.纯数学.纯逻辑的题目.不涉及界面这些

嵌入式Linux系统学习嵌入式Linux系统知识大纲梳理

想要学习嵌入式知识.嵌入linux,就需要学习嵌入式linux系统基础架构知识,按照计划学习,现在就让小编带大家熟悉嵌入式Linux系统基础概念.事物总有个核心,复杂的事物总可以模块化.层次化, 嵌入式Linux也如此.学习嵌入式Linux困难,主要因为涉及知识和概念过多,所以学习嵌入式Linux的就需要找到核心,需要模块化,需要进行层次划分. 嵌入式Linux系统做模块化处理就是可划分为Bootloader(引导程序),Kernel(内核),fs(文件系统),Shell(命令行界面),Gui(

利用qemu学习嵌入式linux(一)—— 环境搭建

利用qemu进行嵌入式linux学习有几个优点: 开发环境易于搭建:非常容易进行指令级调试: 我们的目的是为了学习从boot到linux内核一系列的运行机制,纠结于硬件和外设对这个学习过程是毫无意义的. PC环境:intel x64 cpu, fedora 23 64bit 软件安装: sudo dnf install gcc-arm-linux-gnu qemu codeblocks

学习嵌入式linux开发板之iTOP-4412 开发板如何操作GPIO

本文转自迅为论坛:http://www.topeetboard.com 平台:迅为嵌入式linux开发板 Exynos4412 所有的 GPIO 都有固定的地址,为了方便操作这些 GPIO,Linux 内核 在 gpio-exynos4.h 里面定义了一些 GPIO 的宏,例如: #define EXYNOS4_GPA0(_nr)  (EXYNOS4_GPIO_A0_START + (_nr)) #define EXYNOS4_GPA1(_nr)  (EXYNOS4_GPIO_A1_START 

推荐几个学习嵌入式及Linux比较好的网站或博客

Uboot下载:http://ftp.denx.de/pub/u-boot/ 鸟哥的linux私房菜 :http://vbird.dic.ksu.edu.tw/ 本自由软件网络应用团队是一群由鸟哥历届学生所组成的团队,实际运作则是以当前的大三大四学生为主要,由学长带学弟的方式处理各项事务,主要事务有以下:全系计算机教室维护与定期检查:虚拟计算机教室建置:系上计算机教室服务器建置与维护更新. 网人社区:http://www.netren.org/index.php/home.html 网人社区,是

我学习嵌入式linux开发入门过程

我是去年开始学习linux的,学习的过程中也走了很多的弯路,在这里记录一下,希望能给各位新人看到,帮助大家少走一些弯路.帮助大家的同时也是我个人长进的过程.我记录的地方有什么不对的地方希望大家能够指出来,谢谢! ((⊙o⊙)-由于本人比较懒,感觉打字很麻烦,所以就用语音来帮我打字,文章可能会写的思路乱一些,以后我会慢慢整理,抱歉啦!) 有一点还是需要首先说明一下,如果在学习的过程中有什么不太明白的地方最好还是先去百度或者谷歌(需要翻墙,具体怎么翻墙还是大家自己想下办法吧,我这里就不说了,要是直接

我学习嵌入式linux开发入门过程(二)

linux系统的介绍和安装 因为去年工作的需要才开始学习linux,我本身的专业学的是 自动化,有一部分汇编和c语言的基础.毕业以后呢做过单片机汇编语言的开发.去年回到老家之后才开始学习arm的嵌入式开发的,需要用到linux基础和 c语言编程.其实学习软件开发的难度并不是很大,主要是需要有实践的机会,才能有快速而长足的进步.当然如果要是没有太好的实践机会的话,最好还是自己去 买一块开发板.当然如果实在是不想买开发板或者感觉开发板太贵的话,可以在PC机上先装linux做实验也是可以的,只是有些东