Chinaunix首页 | 论坛 | 博客
  • 博客访问: 488705
  • 博文数量: 76
  • 博客积分: 5196
  • 博客等级: 大校
  • 技术积分: 1414
  • 用 户 组: 普通用户
  • 注册时间: 2007-10-10 18:43
个人简介

转了个圈,又回来了

文章分类

全部博文(76)

文章存档

2013年(1)

2011年(8)

2010年(9)

2009年(22)

2008年(36)

我的朋友

分类: 嵌入式

2011-01-02 23:19:27

从今天开始,我要对嵌入式底层开发(LINUX)做一个系统的梳理。
 
下面是需要梳理的过程的一个大纲:
 
1.BootLoad学习
 
在LINUX下,主要是UBOOT的学习。同时要结合WINCE下的EBOOT比较两者之间的区别与联系。当然在这个过程中需要了解一些基本的ARM汇编知识。
 
2.linux的启动过程
 
操作系统的启动过程也是一个必须掌握的基本点。弄清楚LINUX的启动过程是非常有必要的,这样可以知道你的驱动程序,应用程序等在整个开发阶段所处于的位置。
 
我认为这里首先要搞清的是嵌入式操作系统的编译过程,系统的启动,UBOOT与启动之间的联系,init进程的启动等等。
 
3.linux组件之一:进程的调度
 
这个需要与WINCE的进程调度做一个基本的比较,为什么说LINUX是多任务的操作系统,而WINCE是基于线程的系统。
 
4.linux组件之二:进程件的通信
 
进程间的通信,互斥与同步。从机制上面弄清实现机制,相同于不同点等。特别是对于底层开发非常有用的信号量与互斥体。当然这个也是需要与WINCE做一个对比来看。
 
5.linux组件之三:内存管理
 
内存管理单元MMU,物理地址,逻辑地址,虚拟地址,这个不论是在linux还是在WINCE下都是非常重要的,特别是内核空间和用户空间的转换。当然在linux下还有所谓的高端内存,DMA内存的使用等,都需要做一个很好的总结。
 
6.linux组件之四:文件系统
 
文件系统很难理解,这里只对根文件系统做一个大概的理解。
 
7.linux 中断处理程序
 
linux中断处理程序分为上下部来实现,与WINC一样。多看以前的例子是如何实现的。
 
8.linux 字符设备驱动程序
 
linux2.6以后的字符设备的基本模型
 
9.linux 块设备驱动程序
 
这个主要是看flash设备驱动
 
10. linux 设备管理模型
 
linux设备的管理模型,与电源管理等联系起来。
 
11. linux 模块
 
模块的学习
 
12. linux 几大总线驱动的实现
 
包括有I2C总线,SPI总线,PCI总线,USB总线等在linux下的驱动模型。
 
13.以前遇到过的一些特殊的linux内部组件
 
包括linux输入子系统,linux视频组件等。
 
 
 
阅读(2143) | 评论(2) | 转发(0) |
给主人留下些什么吧!~~

wuyi13522011-01-30 13:32:51

期待中

wuyi13522011-01-30 13:31:54