- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Android开发之01----底层驱动开发01
驱动概述 ? ? ? ? 说到 android 驱动是离不开 Linux 驱动的。Android 内核采用的是 Linux2.6 内核 (最近Linux 3.3 已经包含了一些 Android 代码)。但 Android 并没有完全照搬 Linux 系统内核,除了对Linux 进行部分修正,还增加了不少内容。android 驱动 主要分两种类型:Android 专用驱动 和 Android 使用的设备驱动(linux)。 ? ? ? Android 专有驱动程序: ? ? ? 1)Android Ashmem 匿名共享内存; 为用户空间程序提供分配内存的机制,为进程间提供大块共享内存,同时为内核提供回收和管理这个内存。 ? ? ? 2)Android Logger ? ?轻量级的LOG(日志) 驱动; ? ? ? 3)Android Binder ? ? 基于 OpenBinder 框架的一个驱动; ? ? ? 4)Android Power Management ?电源管理模块; ? ? ? 5)Low Memory Killer ?低内存管理器; ? ? ? 6)Android PMEM ? ? ? ?物理内存驱动; ? ? ? 7)USB Gadget ? ? ? ? ? ? USB 驱动(基于 gaeget 框架); ? ? ? 8)Ram Console ? ? ? ? ? 用于调试写入日志信息的设备; ? ? ? 9)Time Device ? ? ? ? ? ? 定时控制设备; ? ? ? ?10)Android Alarm ? ? ? ??硬件时钟; ? ? ?Android 上的设备驱动: ? ? ? 1)Framebuff 显示驱动; ? ? ? 2)Event 输入设备驱动; ? ? ? 3)ALSA 音频驱动; ? ? ? 4)OSS 音频驱动; ? ? ? 5)v412摄像头:视频驱动; ? ? ? 6)MTD 驱动; ? ? ? 7)蓝牙驱动; ? ? ? 8)WLAN 设备驱动; ?Android 专有驱动程序 ? ? ? 1.Android Ashmem? ? ? ? ? ? ? ? ?为用户空间程序提供分配内存的机制,为进程间提供大块共享内存,同时为内核提供回收和管理这个内存。 ? ? ? ? ? ? ? ?设备节点:/dev/ashmen .主设备号 10. ? ? ? ? ? ? ? ?源码位置: include/linux/ashmen.h ? ?Kernel /mm/ashmen.c ? ? ? ? ? ? ? ? ? ? ?相比于 malloc 和 anonymous/named mmap 等传统的内存分配机制,其优势是通过内核驱动提供了辅助内核的内存回收算法机制(pin/unoin) ? ? ? 2.Android Logger?? ? ? ? ? ? ? ? ? ? ? 无论是底层的源代码还上层的应用,我们都可以使用 logger 这个日志设备看、来进行调试。 ? ? ? ? ? ? ? ? ? ? ?设备节点: ?/dev/log/main ? ? ?/dev/log/event ? /dev/log/radio ? ? ? ? ? ? ? ? ? ? ?源码位置:include/linux/logger.h ? ? ? ? include/linux/logger.c ? ? ? 3.Android Binder ? ?? ? ? ? ? ? ? ? ? IPC Binder 一种进程间通信机制。他的进程能够为其它进程提供服务 ----- 通过标准的 Linux 系统调用 API。 ? ? ? ? ? ? ? ? 设备节点 :/dev/binder ? ? ? ? ? ? ? ? 源码位置:Kernel/include/linux/binder.h ? ?Kernel/drivers/misc/binder.c ? ? ? 4.Android Power Management ? ? ? ? ? ? ? ? ?一个基于标准 linux 电源管理的轻量级 Android 电源管理系统,在 drivers/android/power.c ? ? ?kernel/power/ ? ? ? 5.Low Memory Killer? ? ? ? ? ? ? ? ? 它在用户空间中指定了一组内存临界值,当其中某个值与进程描述中的 oom_adj 值在同一范围时,该进程将被Kill掉(在parameters/adj中指定oome_adj 的最小值)。它与标准的Linux OOM机制类似,只是实现方法不同 ? ? ? ? ? ? ? ? 源码位置:drivers/misc/lowme
您可能关注的文档
最近下载
- 肝炎后肝硬化失代偿期护理PPT课件.pptx VIP
- 昆明市住房公积金提取业务承诺书.pdf VIP
- 2025《污水处理工艺中生化反应池(A2O 工艺)设计计算案例》2600字.docx
- GB50172-2012 电气装置安装工程 蓄电池施工及验收规范.pdf VIP
- 17款-18翼虎刷隐藏教程.pdf VIP
- 湘教版八年级上册数学精品教学课件 第4章 三角形 专项突破6 三角形的倒角模型.ppt VIP
- 模块化柔性加工系统的设计实现毕业论文.doc VIP
- 北师版八年级上册数学精品教学课件 第一章 勾股定理 ☆问题解决策略_反思 (5).ppt
- 富士5000使用说明.pdf VIP
- GB50172-2012 电气装置安装工程 蓄电池施工及验收规范.docx VIP
文档评论(0)