电源管理 ·建立在标准的Linux Power Manager(PM)之上 ·更激进的能耗管理策略 ·组件通过“唤醒锁”发出保持开机的请求 ·支持多种类型的唤醒锁 LINUX KERNEL Display Driver Camera Driver Bluetooth Driver Shared Memory Driver Binder (IPC)Driver USB Driver Keypad Driver WiFi Driver Audio Power Drivers Management
电源管理 • 建立在标准的Linux Power Manager(PM)之上 • 更激进的能耗管理策略 • 组件通过“唤醒锁”发出保持开机的请求 • 支持多种类型的唤醒锁
电源管理 只要系统上有活动的唤醒锁,设备便无法进入挂起模式,除 非释放唤醒锁。 谨慎使用:使用唤醒锁时,当使用结束时,必须将其正确释 放,因为未释放的唤醒锁无法进入默认状态以节能,从而很 快便会将设备的电池耗尽。 /proc/wakelocks文件列出了定义使用唤醒锁的服务和驱动程 序。通过监控/sys/power/wake lock文件(需要root权限), 可以了解何时启用了唤醒锁,以及哪种服务启用了唤醒锁 目的:设备黑屏后,程序仍然要保持运行
电源管理 只要系统上有活动的唤醒锁,设备便无法进入挂起模式,除 非释放唤醒锁。 谨慎使用:使用唤醒锁时,当使用结束时,必须将其正确释 放,因为未释放的唤醒锁无法进入默认状态以节能,从而很 快便会将设备的电池耗尽。 /proc/wakelocks 文件列出了定义使用唤醒锁的服务和驱动程 序。 通过监控 /sys/power/wake_lock 文件(需要root权限), 可以了解何时启用了唤醒锁,以及哪种服务启用了唤醒锁 目的:设备黑屏后,程序仍然要保持运行
电源管理 使用的应用执行的操作 使用了唤醒锁的服务 运行状况 任意 按下UI Widget(如点 PowerManagerService 启用并在5秒钟后释 击按钮或ListView项) 放锁定 地图/导航 启用地图或进入导航 gps-lock 启用锁定并使用GPS YouTube 观看流视频 PowerManagerService 在视频播放的整个过 程中一直启用唤醒锁 Music 听音乐 PowerManagerService 在音乐播放的过程中 直启用唤醒锁
电源管理 使用的应用 执行的操作 使用了唤醒锁的服务 运行状况 任意 按下 UI Widget(如点 击按钮或 ListView 项) PowerManagerService 启用并在 5 秒钟后释 放锁定 地图/导航 启用地图或进入导航 gps-lock 启用锁定并使用 GPS YouTube 观看流视频 PowerManagerService 在视频播放的整个过 程中一直启用唤醒锁 Music 听音乐 PowerManagerService 在音乐播放的过程中 一直启用唤醒锁
2.系统运行库 ■Android系统架构包含一些C/C++库,这些库能被Android系统中不同 的组件使用。它们通过Android应用程序框架为开发者提供服务。以 下是一些核心库: ■系统C库:一个从BSD继承来的标准C系统函数库(Iibc),它是专门为基 于embedded linux的设备定制的。 ■媒体库:基于PacketVideo OpenCORE;该库支持多种常用的音频、视频格式 回放和录制,同时支持静态图像文件。 Surface Manager:对显示子系统的管理,并且为多个应用程序提供了2D和3D 图层的无缝融合。 。LibWebCore:一个最新的web浏览器引擎用,支持Android浏览器和一个可嵌 入的web视图。 。 SGL:底层的2D图形引擎 。3 D libraries:基于OpenGL ES1.0APls实现;该库可以使用硬件3D加速(如 果可用)或者使用高度优化的3D软加速。 ■FreeType-位图(bitmap)和矢量(vector)字体显示。 ■SQLite-一个对于所有应用程序可用,功能强劲的轻型关系型数据库引擎
2. 系统运行库 n Android系统架构 包含一些C/C++库,这些库能被Android系统中不同 的组件使用。它们通过 Android 应用程序框架为开发者提供服务。以 下是一些核心库: n 系统 C 库 : 一个从 BSD 继承来的标准 C 系统函数库( libc ), 它是专门为基 于 embedded linux 的设备定制的。 n 媒体库 : 基于 PacketVideo OpenCORE;该库支持多种常用的音频、视频格式 回放和录制,同时支持静态图像文件。 n Surface Manager : 对显示子系统的管理,并且为多个应用程序提 供了2D和3D 图层的无缝融合。 n LibWebCore : 一个最新的web浏览器引擎用,支持Android浏览器和一个可嵌 入的web视图。 n SGL : 底层的2D图形引擎 n 3D libraries : 基于OpenGL ES 1.0 APIs实现;该库可以使用硬件 3D加速(如 果可用)或者使用高度优化的3D软加速。 n FreeType -位图(bitmap)和矢量(vector)字体显示。 n SQLite - 一个对于所有应用程序可用,功能强劲的轻型关系型数据库引擎
1)本地库 Bionic Libc ·函数库(untion Libraries) .本地服务Native Servers) .硬件抽象库(Hardware Abstraction Libraries) LIBRARIES Surface Manager Media Framework SQLite WebKit Libc OpenGLES Audio Manager FreeType SSL
1)本地库 • Bionic Libc • 函数库(Funtion Libraries) • 本地服务(Native Servers) • 硬件抽象库(Hardware Abstraction Libraries)