<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[makeyourprogress的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/makeyourprogress</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; makeyourprogress]]></copyright><item><title><![CDATA[QRPROM介绍]]></title><link>https://blog.youkuaiyun.com/makeyourprogress/article/details/75529282</link><guid>https://blog.youkuaiyun.com/makeyourprogress/article/details/75529282</guid><author>makeyourprogress</author><pubDate>Thu, 20 Jul 2017 14:48:37 +0800</pubDate><description><![CDATA[QFPROM (Qualcomm Fuse Programmable Read Only Memory)是QFUSE的替代方案，在一个非易失性ROM（non-volatile memory）中存储代表芯片鉴权相关的配置。目前初步了解的情况为，该模块是Secure Boot的一部分，存储的配置为各Image鉴权需要的数字证书及相关属性。QFUSE是Qualcomm FUSE的缩写，FUSE还有一种将]]></description><category></category></item><item><title><![CDATA[FFMPEG（二）关键数据结构]]></title><link>https://blog.youkuaiyun.com/makeyourprogress/article/details/75119208</link><guid>https://blog.youkuaiyun.com/makeyourprogress/article/details/75119208</guid><author>makeyourprogress</author><pubDate>Fri, 14 Jul 2017 16:08:20 +0800</pubDate><description><![CDATA[总体上，整个播放流程的数据结构由三类组成，分别如下：
1）解协议
核心的数据结构是AVIOContext、URLProtocol和URLContext。对于每种输入源都会定义一个Context，其中包含这些核心数据结构。URLProtocol定义的是从协议流中获取媒体封装流的操作接口，而URLContext用于记录输入源的url、类型等信息和一个AVIOInterruptCB回调函数。URLC]]></description><category></category></item><item><title><![CDATA[FFMPEG（一）使用初探]]></title><link>https://blog.youkuaiyun.com/makeyourprogress/article/details/75099788</link><guid>https://blog.youkuaiyun.com/makeyourprogress/article/details/75099788</guid><author>makeyourprogress</author><pubDate>Fri, 14 Jul 2017 11:24:38 +0800</pubDate><description><![CDATA[本系列文章的重要参考来源是雷神的博客。
使用FFMPEG的主要流程如下图所示：


如果说，在Windows平台上开发相关的程序，可以使用另一个开源库SDL，该开源库在Android中的路径为prebuilts/misc/windows/sdl2/，使用SDL的基本流程如下：


上图中SDL_Surface就是使用SDL的时候弹出的那个窗口。在SDL1.x版本中，只可以创建一个SD]]></description><category></category></item><item><title><![CDATA[IC提供商列表]]></title><link>https://blog.youkuaiyun.com/makeyourprogress/article/details/75087751</link><guid>https://blog.youkuaiyun.com/makeyourprogress/article/details/75087751</guid><author>makeyourprogress</author><pubDate>Thu, 13 Jul 2017 17:41:54 +0800</pubDate><description><![CDATA[产品级IC
深圳市云通微科技有限公司 https://detail.1688.com/offer/547735068184.html?spm=a261b.2187593.1998088710.219.ILywoy

深圳云通微科技有限公司是一家专业设计电子消费类产品，从事音箱ＩＣ研发、设计及销售为一体的ＩＣ生产厂家。公司拥有一批具有电子行业经验丰富的专业设计优秀团队，能给客户提供专业的产品设]]></description><category></category></item><item><title><![CDATA[KODI概览]]></title><link>https://blog.youkuaiyun.com/makeyourprogress/article/details/75087261</link><guid>https://blog.youkuaiyun.com/makeyourprogress/article/details/75087261</guid><author>makeyourprogress</author><pubDate>Thu, 13 Jul 2017 17:19:52 +0800</pubDate><description><![CDATA[源码根目录下文件夹如下：

addons：附加元件。比如说XBMC的皮肤文件，屏幕保护文件，可视化效果文件等等。
docs：文档。
language：语言文件。
project：项目工程文件。
xbmc：源代码
lib：调用的各个库。比如说libavcodec。

/xbmc是代码的核心目录，其中“core”文件夹中存放核心的类
“addon”文件夹中存放和addon相关的类]]></description><category></category></item><item><title><![CDATA[关于地址映射]]></title><link>https://blog.youkuaiyun.com/makeyourprogress/article/details/74988591</link><guid>https://blog.youkuaiyun.com/makeyourprogress/article/details/74988591</guid><author>makeyourprogress</author><pubDate>Tue, 11 Jul 2017 16:58:00 +0800</pubDate><description><![CDATA[在PC上，对于ISA和PCI而言，总线即为物理地址，但并非每个平台都是如此。由于有时候接口总线是通过桥接电路被连接，桥接电路会将IO地址映射为不同的物理地址。


MMC数据传输过程中对于不连续的物理空间使用scatterlist来启用DMA操作
MMC作为块设备，它的存储空间，最小单位由struct bio_vec 描述，它代表一段物理地址范围。一次块设备传输请求，会涉及到很多个这样的不]]></description><category></category></item><item><title><![CDATA[SMMU概述]]></title><link>https://blog.youkuaiyun.com/makeyourprogress/article/details/74978358</link><guid>https://blog.youkuaiyun.com/makeyourprogress/article/details/74978358</guid><author>makeyourprogress</author><pubDate>Tue, 11 Jul 2017 15:45:12 +0800</pubDate><description><![CDATA[SMMU本质上就是一个MMU设备，它的内存转换逻辑与CPU的MMU采用相同的逻辑，都允许将物理上非连续的页虚拟为连续的内存页。SMMU和IOMMU可以交替使用。

关键术语
-Context Bank
 定义转换上下文的寄存器集，系统中的每个Context Bank都有相同的寄存器集。
 PS：这里要记录的有哪些信息？
-Stream ID
 SMMU的输入源，用于唯一标记当前转换流]]></description><category></category></item><item><title><![CDATA[JAR、WAR、EAR的使用和区别]]></title><link>https://blog.youkuaiyun.com/makeyourprogress/article/details/74906826</link><guid>https://blog.youkuaiyun.com/makeyourprogress/article/details/74906826</guid><author>makeyourprogress</author><pubDate>Sun, 09 Jul 2017 22:49:40 +0800</pubDate><description><![CDATA[最近接触这几个词较多，停下来总结总结它们的区别和联系，更好的深刻理解

        


       Jar、war、EAR、在文件结构上，三者并没有什么不同，它们都采用zip或jar档案文件压缩格式。但是它们的使用目的有所区别：

　　Jar文件（扩展名为. Jar，Java Application
 Archive）包含Java类的普通库、资源（resources）、辅助]]></description><category></category></item><item><title><![CDATA[常用的开源库]]></title><link>https://blog.youkuaiyun.com/makeyourprogress/article/details/74906787</link><guid>https://blog.youkuaiyun.com/makeyourprogress/article/details/74906787</guid><author>makeyourprogress</author><pubDate>Sun, 09 Jul 2017 22:48:19 +0800</pubDate><description><![CDATA[JSON解析
1)gson
2)jackson
3)Fastjson
4)LoganSquare
数据库操作
1)ActiveAndroid
2)ormlite
3)greenDAO
4)Realm
网络通信
1)android-async-http
2)OkHttp
3)Volley
4)Retrofit
图片缓存和显示
1)BitmapFun
2)Picass]]></description><category></category></item><item><title><![CDATA[用Jenkins搭建持续集成编译环境]]></title><link>https://blog.youkuaiyun.com/makeyourprogress/article/details/74906755</link><guid>https://blog.youkuaiyun.com/makeyourprogress/article/details/74906755</guid><author>makeyourprogress</author><pubDate>Sun, 09 Jul 2017 22:38:16 +0800</pubDate><description><![CDATA[Jenkins是一个web应用程序，为了让团队中其他人能够访问到Jenkins，首先要将它部署到web服务器中，通常情况下都选择Apache Tomcat。
Jenkins下载完成后会得到jenkins.war文件，将这个文件复制到Tomcat的webapps目录下面，重启Tomcat，在浏览器中访问地址http://localhost:8080/jenkins/即可打开Jenkins首页。
]]></description><category></category></item><item><title><![CDATA[SEAndroid实现机理]]></title><link>https://blog.youkuaiyun.com/makeyourprogress/article/details/74331260</link><guid>https://blog.youkuaiyun.com/makeyourprogress/article/details/74331260</guid><author>makeyourprogress</author><pubDate>Tue, 04 Jul 2017 15:36:03 +0800</pubDate><description><![CDATA[SEAndroid是Google在Android 4.4上正式推出的一套以SELinux为基础于核心的系统安全机制。而SELinux则是由美国NSA（国安局）和一些公司（RedHat、Tresys）设计的一个针对Linux的安全加强系统。
NSA最初设计的安全模型叫FLASK，全称为Flux Advanced Security Kernel（由Uta大学和美国国防部开发，后来由NSA将其开源），]]></description><category></category></item><item><title><![CDATA[Android selinux配置和用法]]></title><link>https://blog.youkuaiyun.com/makeyourprogress/article/details/74298398</link><guid>https://blog.youkuaiyun.com/makeyourprogress/article/details/74298398</guid><author>makeyourprogress</author><pubDate>Tue, 04 Jul 2017 11:23:02 +0800</pubDate><description><![CDATA[SELINUX相关的代码目录：
1）kernel/msm-3.18/security/selinux/
2）external/selinux/
3）用BOARD_SEPOLICY_DIRS添加的各te文件和安全配置文件，主要包括device//sepolicy//和system/sepolicy/，以及其他功能模块添加的配置文件。

Android中对SELINUX来说，有两个类型，一种]]></description><category></category></item><item><title><![CDATA[Android recovery支持adb shell]]></title><link>https://blog.youkuaiyun.com/makeyourprogress/article/details/74231123</link><guid>https://blog.youkuaiyun.com/makeyourprogress/article/details/74231123</guid><author>makeyourprogress</author><pubDate>Mon, 03 Jul 2017 17:33:16 +0800</pubDate><description><![CDATA[最近开发过程注意到recovery不支持adb shell，为了便于调试方便，决定增加此功能。

 

刚开始我们采用的是user版本系统，进入recovery后，输入adb shell命令，提示“error: no devices/emulators found”，我们先确认recovery.img是否包含有adb，看out\debug\target\product\xxx\recove]]></description><category></category></item><item><title><![CDATA[linux内核 DebugFS]]></title><link>https://blog.youkuaiyun.com/makeyourprogress/article/details/74231041</link><guid>https://blog.youkuaiyun.com/makeyourprogress/article/details/74231041</guid><author>makeyourprogress</author><pubDate>Mon, 03 Jul 2017 17:31:55 +0800</pubDate><description><![CDATA[一、简介


DebugFS，顾名思义，是一种用于内核调试的虚拟文件系统，内核开发者通过debugfs和用户空间交换数据。类似的虚拟文件系统还有procfs和sysfs等，这几种虚拟文件系统都并不实际存储在硬盘上，而是Linux内核运行起来后才建立起来。

通常情况下，最常用的内核调试手段是printk。我们在调试时可能需要修改某些内核变量，这种情况下printk就无能为力，而如果为了修]]></description><category></category></item><item><title><![CDATA[Android 7.0 init.rc的一点改变]]></title><link>https://blog.youkuaiyun.com/makeyourprogress/article/details/74230929</link><guid>https://blog.youkuaiyun.com/makeyourprogress/article/details/74230929</guid><author>makeyourprogress</author><pubDate>Mon, 03 Jul 2017 17:29:31 +0800</pubDate><description><![CDATA[在Android 7之前的版本中，系统Native服务，不管它们的可执行文件位于系统什么位置都定义在根分区的init.*.rc文件中。这造成init＊.rc文件臃肿庞大，给维护带来了一些不便，而且其中定义的一些服务的二进制文件根本不存在。

但在android 7.0中，对该机制做了一些改变 。

单一的init＊.rc，被拆分，服务根据其二进制文件的位置（／system，／vendor，]]></description><category></category></item><item><title><![CDATA[GPIO配置和管理]]></title><link>https://blog.youkuaiyun.com/makeyourprogress/article/details/74221250</link><guid>https://blog.youkuaiyun.com/makeyourprogress/article/details/74221250</guid><author>makeyourprogress</author><pubDate>Mon, 03 Jul 2017 17:10:08 +0800</pubDate><description><![CDATA[BootLoader阶段
BootLoader阶段可以调用gpio_tlmm_config()函数完成GPIO_CFGn寄存器的配置，举例如下：
#define TLMM_VOL_UP_BTN_GPIO    85  
gpio_tlmm_config(TLMM_VOL_UP_BTN_GPIO, 0,GPIO_INPUT, GPIO_PULL_UP, GPIO_2MA, GPIO_ENABL]]></description><category></category></item><item><title><![CDATA[配置Modem的命令radiooptions]]></title><link>https://blog.youkuaiyun.com/makeyourprogress/article/details/74202385</link><guid>https://blog.youkuaiyun.com/makeyourprogress/article/details/74202385</guid><author>makeyourprogress</author><pubDate>Mon, 03 Jul 2017 15:43:55 +0800</pubDate><description><![CDATA[手机运行中，上层通过Ril.java的接口封装，借助RILD建立与Modem的通信，Ril.java也称为RILJ。Modem和RILD之间通信的信息分两种：unsolicited和solicited（solicited是征求的意思），前者是由modem主动上报的，诸如时区更新、通话状态、网络状态等消息，后者是RILJ端发请求并需要modem反馈的信息。 
另外，Android系统还提供了一个命]]></description><category></category></item><item><title><![CDATA[常用系统配置和资源管理]]></title><link>https://blog.youkuaiyun.com/makeyourprogress/article/details/74199619</link><guid>https://blog.youkuaiyun.com/makeyourprogress/article/details/74199619</guid><author>makeyourprogress</author><pubDate>Mon, 03 Jul 2017 15:00:16 +0800</pubDate><description><![CDATA[1、rc文件
android通用的rc文件目录：\system\core\rootdir\init.rc
qcom平台共用的rc文件目录：device\qcom\common\rootdir\etc
qcom特定型号处理器的rc文件目录：比如device\qcom\msm8909]]></description><category></category></item><item><title><![CDATA[Linux系统和计算机系统常用缩写]]></title><link>https://blog.youkuaiyun.com/makeyourprogress/article/details/74195674</link><guid>https://blog.youkuaiyun.com/makeyourprogress/article/details/74195674</guid><author>makeyourprogress</author><pubDate>Mon, 03 Jul 2017 14:44:57 +0800</pubDate><description><![CDATA[以字母排序
GIC：Generic Interrupt Controller]]></description><category></category></item><item><title><![CDATA[常用的调试手段]]></title><link>https://blog.youkuaiyun.com/makeyourprogress/article/details/74194440</link><guid>https://blog.youkuaiyun.com/makeyourprogress/article/details/74194440</guid><author>makeyourprogress</author><pubDate>Mon, 03 Jul 2017 14:40:33 +0800</pubDate><description><![CDATA[Linux内核
1）将init进程的详细log输出到dmesg文件中
方法：修改/system/core/rootdir/init.rc，把loglevel从3改为7]]></description><category></category></item></channel></rss>