arm-linux

http://armboard.taobao.com/

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

2010年9月15日

摘要: /system/core/init初始化程序1.执行sigaction函数,对SIGCHILD信号进行处理。实际上暂时屏蔽2.设置umask来清空后面创建文件的mask3. 创建文件系统mount point & mount 内存文件系统4. open_devnull_stdio 0 1 2 is the fd. They are all the file descriptor of /dev/__null__5.open /dev/__kmsg__ as log fd.6.parse_config_file首先打开/init.rc然后读出所有的数据到内存,然后调用parse_conf 阅读全文
posted @ 2010-09-15 12:38 arm-linux 阅读(879) 评论(0) 推荐(0) 编辑

摘要: 电池的信息,电压,温度,充电状态等等,都是由BatteryService来提供的。BatteryService是跑在system_process当中,在系统初始化的时候启动,如下 在BatteryService.java中: Log.i(TAG, "Starting Battery Service."); BatteryService battery = new BatteryService(context); ServiceManager.addService("battery", battery);========================== 阅读全文
posted @ 2010-09-15 11:29 arm-linux 阅读(3520) 评论(0) 推荐(0) 编辑

摘要: 从这一章开始,我们将详细的介绍Linux的设备驱动模型。Linux设备驱动模型是一个相当复杂的系统,对于初学者来说真有些无从入手。而且更加困难的是,随着新的Linux Kernel的release,Linux的设备驱动模型总会有或大或小的变化,我们将尽量展现 Linux Kernel 的这种变化。早期的Linux内核(版本2.4之前)并没有实现一个统一的设备模型,设备节点的创建一般是mknod命令手动创建或利用devfs文件系统创建。早期的Linux发行版一般会采用手动创建的方式预先把通常用到的节点都创建出来,而嵌入式系统则会采用devfs的方式。起初Linux 2.6 内核还支持devfs, 阅读全文
posted @ 2010-09-15 11:01 arm-linux 阅读(602) 评论(0) 推荐(0) 编辑