diagram android

diagram android

ID:37709133

大小:934.55 KB

页数:23页

时间:2019-05-29

diagram android_第1页
diagram android_第2页
diagram android_第3页
diagram android_第4页
diagram android_第5页
资源描述:

《diagram android》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、绿色箭头:表示插入SD卡后事件传递以及SD卡挂载 红色箭头:表示挂载成功后的消息传递流程 黄色箭头:表示MountService发出挂载/卸载SD卡的命令 Android各层次调用流程概述 2012-07-0718:16:33Android的硬件抽象层:    简单来说,就是对Linux内核驱动程序的封装,向上提供接口,屏蔽低层的实现细节。    也就是说,把对硬件的支持分成了两层,        一层放在用户空间(UserSpace),(硬件抽象层)        一层放在内核空间(KernelSpace),(Linux内核驱动程序) 下面这个图阐述了硬件抽象层

2、在Android系统中的位置,以及它和其它层的关系:二,简单的总结进入到Android源代码工程的external目录,创建hello目录:cdexternalmkdirhello 在hello目录中新建Android.mk文件:   LOCAL_PATH:=$(call my-dir)   include$(CLEAR_VARS)   LOCAL_MODULE_TAGS:=optional   LOCAL_MODULE:= hello   LOCAL_SRC_FILES:=$(callall-subdir-c-files)   include$(BUILD_EX

3、ECUTABLE)注意,BUILD_EXECUTABLE表示我们要编译的是可执行程序。  使用mmm命令进行编译:   mmm./external/hello   编译成功后,就可以在out/target/product/gerneric/system/bin目录下,看到可执行文件hello了。 重新打包Android系统文件system.img:   makesnod   这样,重新打包后的system.img文件就包含刚才编译好的hello可执行文件了。    七.运行模拟器,使用/system/bin/hello可执行程序来访问Linux内核驱动程序。   

4、emulator-kernel./kernel/common/arch/arm/boot/zImage&   adbshell      cdsystem/bin     ./hello ------------ ------------ ------------ ------------ ------------ ------------ ------------ ------------ ------------ ------------ ------------ ------------ 三,编写硬件抽象层    进入到在hardware/libhardwa

5、re/include/hardware目录,新建hello.h文件:    cdhardware/libhardware/include/hardware   vihello.h   hello.h文件的内容如下: #ifndefANDROID_HELLO_INTERFACE_H#defineANDROID_HELLO_INTERFACE_H#include__BEGIN_DECLS /*定义模块ID*/#define HELLO_HARDWARE_MODULE_ID  "hello" /*硬件模块结构体*/struct 

6、hello_module_t {    struct  hw_module_t   common;}; /*硬件接口结构体*/struct hello_device_t {    struct hw_device_t  common;    intfd;     // 设备文件描述符    int(*set_val)(structhello_device_t*dev,intval);    // 为该HAL对上提供的函数接口   int(*get_val)(structhello_device_t*dev,int*val);};__END_DECLS#endif 

7、 进入到hardware/libhardware/modules目录,新建hello目录,并添加hello.c文件。hello.c的内容较多,我们分段来看。   首先是包含相关头文件和定义相关结构: #defineLOG_TAG"HelloStub" #include #include #include #include #include #include   #defineDEVICE_N

8、AME  

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。