作者:刘昊昱 博客:http://blog.csdn.net/liuhaoyutz Android版本:2.3.7_r1 Linux内核版本:android-goldfish-2.6.29 在上一篇博客<Android架构分析之硬件抽象层(HAL)>中,我们了解了硬件抽象层的基本数据结构和模块编写规则,现在,我们就来看怎样编写一个自定义的硬件抽象层模块并加入到Android系统中,同时,我们还要介绍应用程序怎样使用我们自定义的硬件抽象层模块. 硬件抽象层的作用是给上层应用程序提供一个访问硬件设…
作者:刘昊昱 博客:http://blog.csdn.net/liuhaoyutz Android版本号:4.4.2 在上一篇文章中我们看了一个使用Handler处理Message消息的样例,本文我们来分析一下其背后隐藏的Android消息处理机制. 我们可能比較熟悉Windows操作系统的消息处理模型: while(GetMessage(&msg,NULL, 0, 0)) { TranslateMessage(&msg); DispatchMessage(&msg); } 1.消…
作者:刘昊昱 博客:http://blog.csdn.net/liuhaoyutz Android版本:2.3.7_r1 Linux内核版本:android-goldfish-2.6.29 Android的LOG模块分为内核驱动部分和用户空间接口部分. 一.内核LOG模块分析 我们先来看内核驱动部分,其代码位于drivers/staging/android/logger.c文件中.按照分析Linux内核驱动程序的惯例,我们从模块初始化函数开始分析: 588static int __init lo…
作者:刘昊昱 博客:http://blog.csdn.net/liuhaoyutz Android版本号:4.4.2 在这个系列文章中我们将来分析Android消息处理机制. 本文介绍了一个使用Handler的Android应用程序,通过该程序,我们能够了解Handler的基本使用方法.进而在后面的文章中,我们会扩展到Looper.Message.MessageQueue.Runnable等Android对象,对它们的实现进行具体分析,这些对象组成了Android消息处理系统. 在Android…
作为一个搞android驱动或者说搞底层的人,我觉得对于hal那是必须要掌握的,而且必须达到一定深度,于是我总结了一下,将整个自己的分析思路写下来. 主要是看android源代码,根据源代码得到的思路.(看源代码比看什么著作书籍都管用) android HAL是什么?为什么有它? 硬件抽象层是介于android内核kernel和上层之间的抽象出来的一层结构.他是对linux驱动的一个封装,对上层提供统一接口,上层应用不必知道下层硬件具体怎么实现工作的,它屏蔽了底层的实现细节. 它在整个andro…
Android display架构分析(一) http://blog.csdn.net/BonderWu/archive/2010/08/12/5805961.aspx http://hi.baidu.com/leowenj/blog/item/429c2dd6ac1480c851da4b95.html 高通7系列硬件架构分析 如上图,高通7系列 Display的硬件部分主要由下面几个部分组成: A.MDP 高通MSM7200A内部模块,主要负责显示数据的转换和部分图像处理功能理,如YUV转RG…
目录(?)[-] Kernel Space Display架构介绍 函数和数据结构介绍 函数和数据结构介绍 函数和数据结构介绍 数据流分析 初始化过程分析 User Space display接口 Kernel display接口 典型应用flow分析 介绍 Surface manager(surface flinger)简介 架构分析 流程分析 根据前面的介绍,surfaceflinger作为一个server process,上层的应用程序(作为client)通过Binder方式与其进行通信.…
关于Android架构,因为手机的限制,目前我觉得也确实没什么大谈特谈的,但是从开发的角度,看到整齐的代码,优美的分层总是一种舒服的享受的. 从艺术的角度看,其实我们是在追求一种美. 本文先分析几个当今比较流行的android软件包,最后我们汲取其中觉得优秀的部分,搭建我们自己的通用android工程模板. 1. 微盘 微盘的架构比较简单,我把最基本,最主干的画了出来: 第一层:com.sina.VDisk:com.sina(公司域名)+app(应用程序名称) . 第二层:各模块名称(主模块VD…
App架构在Android开发者中一直是讨论比较多的一个话题,目前讨论较多的有MVP.MVVM.Clean这三种.google官方对于架构的态度一直是非常开放的,让开发者自主选择组织和架构app的方式,期望能留给开发者更多的灵活性. 由于没有一套权威的架构实现,现在很多App项目中在架构方面都有或多或少的问题.第一种常见问题是没有架构,需求中的一个页面对应项目中的一个activity或一个fragment,所有的界面响应代码.业务逻辑代码.数据请求代码等等都集中在其中.第二种常见的问题是架构实现…
系统架构分析 Android体系结构 安卓结构有四大层,五个部分,Android分四层为: 应用层(Applications),应用框架层(Application Framework),系统运行层(Libraries和android runtime)和Linux内核层. 那么我来讲讲应用层有什么? 就是一些应用软件,如首页,联系人,电话,浏览器等等:应用框架如何理解? 应用框架层是用Java写的,有事件管理器,windows管理器,内容提供,查看系统 ,消息管理器,安装包管理,电话管理,资源管理…