自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(26)
  • 资源 (2)
  • 收藏
  • 关注

转载 Linux内核DMA机制

DMA控制器硬件结构DMA允许外围设备和主内存之间直接传输 I/O 数据, DMA 依赖于系统。每一种体系结构DMA传输不同,编程接口也不同。 数据传输可以以两种方式触发:一种软件请求数据,另一种由硬件异步传输。 在第一种情况下,调用的步骤可以概括如下(以read为例): (1)在进程调用 read 时,驱动程序的方法分配一个 DMA 缓冲区,随后指示硬件传送它的数据。进程进入

2013-12-31 11:43:05 1830

转载 ARM Cortex-A9处理器相关介绍

ARM Cortex-A9处理器相关介绍  Cortex-A9处理器基于先进的推测型八级流水线,该流水线具有高效、动态长度、多发射超标量及无序完成特征,这款处理器的性能、功效和功能均达到了前所未有的水平,能够满足消费、网络、企业和移动应用等领域产品的要求。  Cortex-A9微架构可提供两种选项:可扩展的Cortex-A9 MPCoreTM多核处理器和较为传统的Cortex-A9单核处理

2013-12-28 10:52:33 32480

转载 【stagefrightplayer】4 OMX Codec介绍 (2/2)

4.1 看下 drainInputBuffers();实现[html] view plaincopyprint?PREclass=htmlname="code">void OMXCodec::drainInputBuffers() {for (size_t i = 0; i buffers->size(); ++i) {BufferInfo *i

2013-12-21 16:06:55 1246

转载 【stagefrightplayer】4 OMX Codec介绍

概述OMX Codec是stagefrightplayer中负责解码的模块。由于遵循openmax接口规范,因此结构稍微有点负责,这里就依照awesomeplayer中的调用顺序来介绍。主要分如下几步:1 mClient->connect2 InitAudioDecoder & InitVideoDecoder3 消息通信机制模型的介绍4 解码过程介绍先看下

2013-12-21 15:59:13 4239

转载 【stagefrightplayer】5 音频输出AudioPlayer介绍

概述stagefrightplayer中使用audioplayer类来进行音频的输出。先来看下audioplayer相关的类图在之前介绍awesomeplayer结构的时候有画图介绍,mAudioPlayer的输入为mAudioSource,也就是解码器对应的OMXCodec,在构造AudioPlayer对象时会存放在其成员mSource中,而AudioPlayer可以

2013-12-21 15:57:02 2989

转载 【stagefrightplayer】3 MediaExtractor介绍

概述本篇介绍播放器结构中的第一部分Stream+Demuxer.Awesomeplayer中对应的数据结构主要有DataSource,MediaExtractor,MediaSource。其中DataSource 主要负责提供原始数据,MediaSource负责提供demux后的数据(即实际的audio 或者 video 数据包)而MediaExtractor则负责中间的过程,

2013-12-21 15:17:52 6885

转载 【stagefrightplayer】1 调用过程

概述android中的多媒体播放结构是:client-server模式client端对应的类是:MediaPlayer -- framework/base/media/java/android/media/MediaPlayer.javaserver端对应的类是:MediaPlayer->MediaPlayerService->Stagefrigthplayer->AwesomeP

2013-12-21 15:15:53 3906

转载 【stagefrightpalyer】2 awesomeplayer结构分析

概述通过分析stagefrightplayer代码可以知道,stagefrightplayer 是awesomeplayer的封装,实际的工作都由awsomeplayer完成一个典型的播放器框架包括如下组成部分:stream: 流类型,一般有文件类型、网络流等demuxer:解复用模块,主要是通过分析带播放的数据,得到基本信息,如audio video的基本参数等,还负责分解a

2013-12-21 15:13:21 4455 1

转载 Stagefright框架中视频播放流程

Stagefright框架中视频播放流程1.创建playerengine// 设置数据源,以及 audio sinkMediaPlayer::SetDataSource(PATH_TO_FILE)-> MediaPlayerService::create->MediaPlayerService::Client::setDataSource->GetPlayerTyp

2013-12-21 14:56:11 973

转载 深入分析 Linux 内核链表

深入分析 Linux 内核链表2012-09-16 16:09:08 分类: LINUX转载:https://www.ibm.com/developerworks/cn/linux/kernel/l-chain/一、 链表数据结构简介链表是一种常用的组织有序数据的数据结构,它通过指针将一系列数据节点连接成一条数据链,是线性表的一种重要实现方式。相对于数组

2013-12-19 10:37:35 620

转载 V4L2驱动程序架构

V4L2驱动程序架构2012-08-02 10:19:44 分类: 嵌入式1 V4L2简介video4linux2(V4L2)是Linux内核中关于视频设备的内核驱动,它为Linux中视频设备访问提供了通用接口,在Linux系统中,V4L2驱动的Video设备节点路径通常/dev/video/中的videoXV4L2驱动对用户空间提供字符设备,主

2013-12-19 10:36:10 616

转载 Linux tty 终端设备驱动

在Linux系统中,终端设备非常重要,没有终端设备,系统将无法向用户反馈信息,Linux中包含控制台、串口和伪终端3类终端设备。14.1终端设备在Linux系统中,终端是一种字符型设备,它有多种类型,通常使用tty来简称各种类型的终端设备。tty是Teletype的缩写,Teletype是最早出现的一种终端设备,很像电传打字机,是由Teletype公司生产的。Linux中包含如下几类终端设

2013-12-17 17:41:47 2388

转载 实例解析linux内核I2C体系结构(1)

http://blog.csdn.net/hongtao_liu/article/details/4964244 一、概述谈到在linux系统下编写I2C驱动,目前主要有两种方式,一种是把I2C设备当作一个普通的字符设备来处理,另一种是利用linux I2C驱动体系结构来完成。下面比较下这两种驱动。第一种方法的好处(对应第二种方法的劣势)有:● 思路比较直接,不需要花时间去了解

2013-12-12 16:23:58 680

转载 Linux设备驱动之USB hub驱动

Linux设备驱动之USB hub驱动2012-07-24 14:06:49 分类: 原文地址:Linux设备驱动之USB hub驱动 作者:xgr180------------------------------------------本文系本站原创,欢迎转载!转载请注明出处:http://ericxiao.cublog.cn/------

2013-12-12 16:14:31 13205 1

转载 linux设备驱动之USB主机控制器驱动分析

linux设备驱动之USB主机控制器驱动分析2012-07-24 10:33:37 分类: 原文地址:linux设备驱动之USB主机控制器驱动分析 作者:xgr180------------------------------------------本文系本站原创,欢迎转载!转载请注明出处:http://ericxiao.cublog.cn/

2013-12-12 16:12:41 1252

转载 盘点Linux内核源码中使用宏定义的若干技巧

盘点Linux内核源码中使用宏定义的若干技巧(1)2012-07-24 09:50:38 分类: 原文地址:盘点Linux内核源码中使用宏定义的若干技巧(1) 作者:MagicBoy2010在C中,宏定义的概念虽然简单,但是真要用好却并不那么容易,下面从Linux源码中抽取一些宏定义的使用方法,希望能从中得到点启发:1. 类型检查比如module_ini

2013-12-12 16:11:01 1198

转载 NorFlash和NandFlash的理解

NorFlash和NandFlash的理解2012-07-23 16:09:21 分类: 原文地址:NorFlash和NandFlash的理解 作者:wuzhongyun10086NorFlash和NandFlash接口对比NorFlash带有通用的 SRAM接口,可以轻松地挂接在CPU的地址、数据总线上,对CPU的接口要求低。NorFlash的特点是芯片内

2013-12-12 16:09:30 727

转载 Linux中断(interrupt)子系统

Linux中断(interrupt)子系统之一:中断系统基本原理2012-07-20 13:00:35 分类: LINUX这个中断系列文章主要针对移动设备中的Linux进行讨论,文中的例子基本都是基于ARM这一体系架构,其他架构的原理其实也差不多,区别只是其中的硬件抽象层。内核版本基于3.3。虽然内核的版本不断地提升,不过自从上一次变更到当前的通用中断子系统后,大的

2013-12-12 16:08:32 5285

转载 Linux Kernel Mode与User Mode的实质

Linux Kernel Mode与User Mode的实质---Linux 在ARM Architecture上的实现Linux Kernel作为一种操作系统有别与一般的用户程序,即所谓的kernel mode和user mode。Kernel mode下运行的程序能够访问所有的memory,能够处理interrupt;而user mode的程序只能访问有限的memo

2013-12-12 14:47:43 3097

转载 Linux下tty/pty/pts/ptmx详解

Linux下tty/pty/pts/ptmx详解(转)2009-12-11 09:19:17 分类: LINUX基本概念:1> tty(终端设备的统称):k'g d W.V-L a0tty一词源于Teletypes,或者teletypewriters,原来指的是电传打字机,是通过串行线用打印机键盘通过阅读和发送信息的东西,后来这东西被键盘与显示器取代,所

2013-12-10 14:26:49 2622

转载 高通编译环境一键安装包

之前一直都在Marvell平台上开发Android,Marvell平台的CP只Release二进制文件,所以开发过程中一般只需要修改并编译AP端的代码就可以了。最近一个月,由于项目需要,开始转到开发高通平台的Android。初步接触下来,高通平台和Marvell平台有很大不同。最显著一点就是,Marvell平台中是AP启动起来后再挂CP跑;而高通平台则是先启动CP1,然后CP初始化AP并加载程序运

2013-12-07 18:59:40 4001 3

转载 Android Phone分析

Android的Radio Interface Layer (RIL)提供了电话服务和的radio硬件之间的抽象层。Radio Interface Layer RIL(Radio Interface Layer)负责数据的可靠传输、AT命令的发送以及response的解析。应用处理器通过AT命令集与带GPRS功能的无线通讯模块通信。AT command由Hayes公司发明,是一个调制解调器

2013-12-07 18:32:22 616

转载 命令模式下的异步消息处理

命令模式下的异步消息处理( Handler,Message,Looper,MessageQueue)接受者:Handler,执行消息处理操作。请求者:Looper,调用消息的的处理方法。命令角色:Message,消息类。客户端:Thread,创建消息并绑定Handler(接受者)。 命令角色:Message Class Overview:Defines a message cont

2013-12-07 18:24:41 892

转载 Android——启动之bootloader

第一部分:Bootloader启动一、 Bootloader的定义和种类简单地说,BootLoader是在操作系统运行之前运行的一段程序,它可以将系统的软硬件环境带到一个合适状态,为运行操作系统做好准备。这样描述是比较抽象的,但是它的任务确实不多,终极目标就是把OS拉起来运行。在嵌入式系统世界里存在各种各样的Bootloader,种类划分也有多种方式。除了按照处

2013-12-07 18:04:23 899

转载 Android 电话系统框架介绍

在android系统中rild运行在AP上,AP上的应用通过rild发送AT指令给BP,BP接收到信息后又通过rild传送给AP。AP与BP之间有两种通信方式:1.Solicited Response:Ap向Bp发送请求,Bp给Ap发送回复,该类型的AT指令及其回调函数以数组的形式存放在Ril_commands.h文件中:{数组中的索引号,请求回调函数,响应回调函数}[

2013-12-07 17:18:25 1559

转载 Linux内核源码分析--内核启动命令行的传递过程(Linux-3.0 ARMv7)

好文,不得不转!!(http://blog.chinaunix.net/uid-20543672-id-3151113.html)Linux内核在启动的时候需要一些参数,以获得当前硬件的信息或者启动所需资源在内存中的位置等等。这些信息可以通过bootloader传递给内核,比较常见的就是cmdline。以前我在启动内核的时候习惯性的通过uboot传递一个cmdline给内核

2013-12-05 09:33:17 868

内存优化方案

内存压缩前身和现状 工作机制简介 优化讨论

2016-12-13

mtk_faq_online

mtk_faq_online

2016-08-12

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除