- 第0课第1节_刚接触开发板之接口接线工具
- 第0课第2节_刚接触开发板之烧写裸板程序
- 第0课第3节_刚接触开发板之重烧整个系统
- 第0课第4节_刚接触开发板之使用vmwae和预先做好的ubuntu
- 第0课第5节_刚接触开发板之u-boot打补丁编译使用
- 第0课第6节_刚接触开发板之内核打补丁编译使用
- 第0课第7节_刚接触开发板之制作根文件系统及初试驱动
- 第0课第8节_在TQ2440,MINI2440上搭建视频所用系统
- 第0课第9节_win7下不能使用dnw烧写的替代方法
- 学前班第1课第1节_怎么看原理图之GPIO和门电路
- 学前班第1课第2.1节_怎么看原理图之协议类接口之UART
- 学前班第1课第2.2节_怎么看原理图之协议类接口之I2C
- 学前班第1课第2.3节_怎么看原理图之协议类接口之SPI
- 学前班第1课第2.4节_怎么看原理图之协议类接口之NAND Flash
- 学前班第1课第2.5节_怎么看原理图之协议类接口之LCD
- 学前班第1课第3节_怎么看原理图之内存类接口
- 学前班第1课第4.1节_怎么看原理图之分析S3C2410开发板
- 学前班第1课第4.2节_怎么看原理图之分析S3C2440开发板
- 学前班第1课第4.3节_怎么看原理图之分析S3C6410开发板
- 第1课 环境搭建及工具、概念介绍
- 第2课 GPIO实验
- 第3课 存储管理器实验
- 第4课 MMU实验
- 第5课 NAND FLASH控制器
- 第06课 中断控制器
- 第07课 系统时钟和UART实验
- 第08课 LCD实验
- 第09课第1节 u-boot分析之编译体验
- 第09课第2节 u-boot分析之Makefile结构分析
- 第09课第3节 u-boot分析之源码第1阶段
- 第09课第3节 u-boot分析之源码第2阶段
- 第09课第4节 u-boot分析之u-boot命令实现
- 第09课第5节 u-boot分析_uboot启动内核
- 第10课第1节 内核启动流程分析之编译体验
- 第10课第2节 内核启动流程分析之配置
- 第10课第3节 内核启动流程分析之Makefile
- 第10课第4节 内核启动流程分析之内核启动
- 第11课第1节 构建根文件系统之启动第1个程序
- 第11课第2节 构建根文件系统之init进程分析
- 第11课第3节 构建根文件系统之busybox
- 第11课第4节 构建根文件系统之构建根文件系统
- 第12课第1节 字符设备驱动程序之概念介绍
- 第12课第2.1节 字符设备驱动程序之LED驱动程序_编写编译
- 第12课第2.2节 字符设备驱动程序之LED驱动程序_测试改进
- 第12课第2.3节 字符设备驱动程序之LED驱动程序_操作LED
- 第12课第3节 字符设备驱动程序之查询方式的按键驱动程序
- 第12课第4.1节 字符设备驱动程序之中断方式的按键驱动
- 第12课第4.2节 字符设备驱动程序之中断方式的按键驱动
- 第12课第4.3节 字符设备驱动程序之中断方式的按键驱动_编写代码
- 第12课第5节 字符设备驱动程序之poll机制
- 第12课第6节 字符设备驱动程序之异步通知
- 第12课第7节 字符设备驱动程序之同步互斥阻塞
- 补录1_JZ2440的4.3寸LCD裸板实验
- 补录2_JZ2440的4.3寸LCD Linux驱动
在学习嵌入式Linux之前,肯定要有C语言基础。汇编基础有没有无所谓(就那么几条汇编指令,用到了一看就会)。
C语言要学到什么程度呢?越熟当然越好,不熟的话也要具备基本技能。比如写一个数组排序、输入数字求和什么的。
学C语言唯一的方法是多写程序多练习,编译出错没关系,自己去解决;执行出错没关系,自己去分析。以前我是用
VC来练习C语言的,经常去尝试着写一些C语言竞赛的题目。它们是纯C、纯数学、纯逻辑的题目,不涉及界面这些东西,
很适合煅炼你的编程能力。
回到主题,首先我们要明白你的目的是什么,大概来说所谓嵌入式Linux可以分为两部分:底层系统、应用开发。
如果你是想做应用开发,那么你去把C语言、数据结构、JAVA什么的学好吧。嵌入式应用开发和PC上的
应用开发并没有什么特别要注意的。也许你说在嵌入式上要做些优化,是的,要优化,但是未经优化的程序
和PC上的程序开发没什么差别。另外,当你有能力去优化时,你已经不用来问这个问题了。具体到某个例子,
比如说开发界面,在PC上我们用VC;在嵌入式Linux里也许我们用QT也许用Android,这个时候你应该去学学QT、
Android的编程。但是基础还是C或JAVA,在此基础上去熟悉它们的接口。你学过VC的话,也是要花时间去了解
那些类、控件的。
如果你的目的是想学习底层系统,这是我的专长,倒是可以说一点。
在回答这个问题之前,我先回答:不少人问我,到底是学驱动还是学应用?
我只能说凭兴趣,并且驱动和应用并不是截然分开的
1. 我们说的驱动,其实并不局限于硬件的操作,还有操作系统的原理、进程的休眠唤醒调度等概念。
想写出一个好的应用,想比较好的解决应用碰到的问题,这些知识你应该懂
2. 做应用门槛低,特别是现在的ANDROID,纯JAVA。做应用的发展路径个人认为就是业务纯熟。
比如在通信行业、IPTV行业、手机行业,你了解行业的需求。所以,当领导的人,多是做应用的。
3. 做驱动,其实我不想称为“做驱动”,而是想称为“做底层系统”,做好了这是通杀各行业。我工作几年,
做过手机、IPTV、会议电视,但是这些产品对我毫无差别,因为我只做底层。他们的业务跟我没关系。
当应用出现问题,他们解决不了时,我就会从内核角度给他们出主意,给他们提供工具。
做底层的发展方向,个人认为是技术专家。
4. 其实,做底层还是做应用,之间并没有一个界线,有底层经验,再去做应用,你会感觉很踏实。
有了业务经验,你再了解一下底层,很快就可以组成一个团队。
回到怎么学的问题上。嵌入式Linux底层系统包含哪些东西?不要急,举一个例子你就知道了。
1. 电脑一开机,那些界面是谁显示的?是BIOS,它做什么?一些自检,然后从硬盘上读入windows,并启动它。
类似的,这个BIOS对应于嵌入式Linux里的bootloader。这个bootloader要去Flash上读入Linux内核,并启动它。
2. 启动windows的目的是什么?当然是上网聊天什么的了。这些上网、聊天工具在哪?
在C盘、D盘上。所以, windows要先识别出C盘、D盘。在Linux下我们称为根文件系统。
1. 最适合入门的Linux畅销书《嵌入式Linux应用开发完全手册》,
在google上搜“嵌入式Linux应用开发完全手册有目录”即可下载到。
2. 与书完全配套的第1期视频,引你入门
3. 深入讲解驱动程序的第2期视频,让你深入
4. 实际项目从零写起,第3期视频让你了解整个嵌入式Linux系统开发
1、由《嵌入式Linux应用开发完全手册》作者韦东山亲自讲解
2、第1期与书完全配套,第2期深入讲解驱动程序
5、一个首创:第1个使用绘图板来讲解,绝不是“照着PPT念”,跟“在教室里看着老师在黑板上讲解”效果一样!
6、一个绝对:每个实验,每一行代码都是当场编写和调试。视频里有几十个程序,作者完全从头写了几十个程序。每一个实验,都是先讲解硬件操作,再写程序。
7、一个保证:每个实验,只要您的开发板有对应的芯片,都可以在您的开发板上运行起来。
8、一个超值:内容完全超越其他同类视频或是培训机构,并且还在不断更新。
第一期视频介绍
第1期:ARM实验、uboot移植、文件系统、初级驱动