摘要: u-boot启动内核,内核启动应用程序。第1个应用程序就是init。BusyBox就是许多命令的集合如ls、cd等。你可以使用如下命令方式来验证还有init也是busybox的链接init程序: 0) 打开/dev/console。标准输入标准输出标准错误 1)执行第一个应用程序init(要么是命令行参数指定uboot参数init = linuxrc 要么是/sbin/init) 2)读取配置文件-inittab(指定后续运行的应用程序) 3)解析配置文件 4)根据配置文件启动执行用户的程序配置文件inittab文件(/etc/inittab)格式:::id=>/dev/id:用作终端, 阅读全文
posted @ 2013-03-10 22:29 dudu1990 阅读(183) 评论(0) 推荐(0) 编辑
摘要: 首先,需要明白驱动程序的工作流程。 正常我们在操作设备时的顺序是这样的。(1)在应用层,直接通过open、read、或者说是write等函数。(2)这些函数都是在C库中实现的,可以肯定的是C库中对其反应是发生异常SWI,触发异常swi val。根据val的不同进入不同的异常处理。(3)进入驱动函数,内核空间() 然后,需要明白设备如何告知linux内核?即驱动程序的工作流程:1)定义一个file_operation结构体 2)注册(主设备号,名字,file_operation)。就是将file_operation放到file_operation字符数组的主设备号项中。注册函数有regi... 阅读全文
posted @ 2013-03-10 22:24 dudu1990 阅读(307) 评论(0) 推荐(0) 编辑