[精华] 《嵌入式 LINUX 应用开发完全手册》一书
作者:韦东山(www.100ask.net) 的部分备课笔记
----------------------------------------------------------------------------------------------
------------------------
特别说明:
此文章的原始出处 http://www.docin.com/sz_farsight
以下文章是华清远见深圳培训中心《嵌入式 LINUX 应用开发完全手册》一书
作者韦东山(www.100ask.net) 的部分备课笔记,笔记语言比较风趣,比较
好玩,此文档欢迎转载,但转载请保留相应个人信息及此段说明,谢谢!
----------------------------------------------------------------------------------------------
------------------------
第 1 天
1.入门介绍
大家好,这两天我们将一起度过。我叫韦东山,韦小宝的韦,东方的东,高山
的山,大家直接叫我名字就可以了,也别叫我老师。可能比你们都大上几年,
在 LINUX 方面比你们早入门了几年门。今天有幸来讲第一节课,我很乐意帮
助大家解决一些入门问题。当然,入门问题也有很难的问题,回答不上请大家
见谅,等我下班后,回到家,找到了答案再告诉大家。
好了,下面开始我们的课程。大家的基础各不相同,所以我只能假定大家第一
次接触 LINUX 的驱动编写。其实 LINUX 系统的一些原理,跟人类社会很有相
通之处,那就分层分工,各司其职。假设你是一个集团的老总,下面有很多子
公司。那你想了解公司的运营情况时,是不可能去实地考察每个公司的。那怎
么办?只能看每个子公司的财务报表。
打开报表==>阅读报表,嗯,明白了==>批示、下发。
报表怎么来的呢?老总可不管,都是由底下的人弄好的;批示怎么执行的呢?
老总也不管,都是由底下的人做的。这些“底下的人”,就是“驱动人员”
回到我们的 LINUX 系统,我们控制电路板上的 LED,怎么办呢?同样:
打开 LED 文件==>写数据到文件==>LED 亮、灭,这个文件怎么来的?
写数据到这个文件后,LED 怎么就会亮、灭?这些工作,就是“驱动人员”做
的。
上层只管:open, read, write,其他的不管;我们就是提供可以 read/write
的文件,他们 read 时,我们提供数据;他们 write 时,我们执行指令。
现在看看这个 PPT,user space 就是老总,就是用户;VFS 就是这套 open,
read, write 接口;DEVICE DRIVER 就是我们写的驱动程序。
当然了,整个 LINUX 系统还可以细分,看看前一页 PPT,里面涉及进程管
理、内存管理、文件系统支持、设备控制、网络等等。