<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[hbk320的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/hbk320</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; hbk320]]></copyright><item><title><![CDATA[yocto inittab initialization processing]]></title><link>https://blog.youkuaiyun.com/hbk320/article/details/52800195</link><guid>https://blog.youkuaiyun.com/hbk320/article/details/52800195</guid><author>hbk320</author><pubDate>Sun, 16 Oct 2016 17:15:27 +0800</pubDate><description><![CDATA[yocto是用来制作发行版image、BSP的一个很强大的工具，其文件系统的结构跟Ubuntu、redhat等很像，几乎如出一辙，这也能看出，yocto的成长也是能够整合多方平台（系统）的。好久没写博客，最近研究了一下yocto文件系统的启动流程，觉得挺有意思，在这里分享一下。废话少说，正式进入主题。

内核起来，启动第一号进程（init进程，/sbin/init）后，就把控制权交给了init]]></description><category></category></item><item><title><![CDATA[android debug set screen rotation]]></title><link>https://blog.youkuaiyun.com/hbk320/article/details/52728002</link><guid>https://blog.youkuaiyun.com/hbk320/article/details/52728002</guid><author>hbk320</author><pubDate>Mon, 03 Oct 2016 14:32:29 +0800</pubDate><description><![CDATA[好久没更新博客，最近debug了一个比较有趣的bug，有时间闲下来，整理一下还是挺不错的。


先来看看这个bug是什么情况：





以上两张图片是android的动态logo，也就是BootAnimation logo。上面显示出来的是同一张logo，左边是正常的，但在显示了一半的时候，就成了右边的样子。
 
正常的情况下，无论哪个版本的android，启动的时候，lo]]></description><category></category></item><item><title><![CDATA[GSM模块发送短信的AT指令相关知识]]></title><link>https://blog.youkuaiyun.com/hbk320/article/details/50145373</link><guid>https://blog.youkuaiyun.com/hbk320/article/details/50145373</guid><author>hbk320</author><pubDate>Wed, 02 Dec 2015 10:59:41 +0800</pubDate><description><![CDATA[AT+CMGC  Send an SMS command（发出一条短消息命令） 

AT+CMGD  Delete SMS message（删除SIM卡内存的短消息） 
AT+CMGF  Select SMS message formate（选择短消息信息格式：0-PDU;1-文本） 

AT+CMGL  List SMS message from preferred store（列出S]]></description><category></category></item><item><title><![CDATA[ARM+linux系统移植3G拨号上网收发短信（三）]]></title><link>https://blog.youkuaiyun.com/hbk320/article/details/50145209</link><guid>https://blog.youkuaiyun.com/hbk320/article/details/50145209</guid><author>hbk320</author><pubDate>Wed, 02 Dec 2015 10:51:59 +0800</pubDate><description><![CDATA[一、用text查看模式
下面的“发”是指我敲的命令，“收”是指回车后显示的信息包括其他接收的信息。
~ >: microcom -s 115200 /dev/ttyUSB1
发：at
收：OK


设置成文本模式读:
发：at+cmgf=1


收：OK


将信息保存在SIM卡中:


发：at+cpms="SM","SM","SM"
收：+CPMS: 0,5]]></description><category></category></item><item><title><![CDATA[ARM+llinux系统移植3G拨号上网收发短信（二）]]></title><link>https://blog.youkuaiyun.com/hbk320/article/details/50145179</link><guid>https://blog.youkuaiyun.com/hbk320/article/details/50145179</guid><author>hbk320</author><pubDate>Wed, 02 Dec 2015 10:50:20 +0800</pubDate><description><![CDATA[一、发送text格式的短信

给联通发text格式的短信：

~ >: microcom -s 115200 /dev/ttyUSB1
at


OK

设置短信格式为Text模式：
at+cmgf=1


OK
at+cmgs="+861300711**** "


输入发送的内容：

> hello         （内容写完后按一下ctrl + z发送]]></description><category></category></item><item><title><![CDATA[ARM+llinux系统移植3G拨号上网收发短信（一）]]></title><link>https://blog.youkuaiyun.com/hbk320/article/details/50145113</link><guid>https://blog.youkuaiyun.com/hbk320/article/details/50145113</guid><author>hbk320</author><pubDate>Wed, 02 Dec 2015 10:48:51 +0800</pubDate><description><![CDATA[一、      PPP移植

各项工作具体说明

向linux内核添加3G模块的驱动(USB转串口驱动)和PPP协议的支持，然后编译内核并下载到开发板。当然如果之前已经移植好内核,那么只需要增加几个选项就可以,然后在编译内核就可以了,这个文档默认内核已经移植过,所以只讲与USB转串口驱动和PPP协议支持的几个选项。
[lingyun@localhost linux-3.0]$ make ]]></description><category></category></item><item><title><![CDATA[以烧录yocto镜像为例--详细解析freescale MFGTools烧录原理]]></title><link>https://blog.youkuaiyun.com/hbk320/article/details/49975841</link><guid>https://blog.youkuaiyun.com/hbk320/article/details/49975841</guid><author>hbk320</author><pubDate>Sun, 22 Nov 2015 10:35:33 +0800</pubDate><description><![CDATA[简介
MFGTools是freescale官方推荐的一个使用OTG来升级镜像的软件。此软件功能很轻大，而且可塑性非常高：可以用来升级linux，升级android；单独刷写某一系统分区，如android的boot.img分区等；独立地刷写spi nor，emmc等等；而且作为一个可量产性的工具，MFGTools可以同时支持多通道的刷写。相对于市面上一些平板厂家的刷机软件，MFGTools的一大亮]]></description><category></category></item><item><title><![CDATA[实例分析sizeof与strlen的用法]]></title><link>https://blog.youkuaiyun.com/hbk320/article/details/49784315</link><guid>https://blog.youkuaiyun.com/hbk320/article/details/49784315</guid><author>hbk320</author><pubDate>Wed, 11 Nov 2015 17:28:55 +0800</pubDate><description><![CDATA[一段时间没写程序，可能有一些用法就会生疏。今天遇到一个sizeof和strlen的用法，折腾了老半天，事后做一个小结。
sizeof 是关键字，strlen是函数，两者有本质的差别，虽然功能相似。strlen使用的局限性比较多，如：strlen只能用char*做参数，且必须是以''\0''结尾的。详细可查看网上一些对两者的对比介绍：
http://zhidao.baidu.com/link?u]]></description><category></category></item><item><title><![CDATA[android4.3-android4.4.2触摸唤醒]]></title><link>https://blog.youkuaiyun.com/hbk320/article/details/49688085</link><guid>https://blog.youkuaiyun.com/hbk320/article/details/49688085</guid><author>hbk320</author><pubDate>Fri, 06 Nov 2015 21:39:33 +0800</pubDate><description><![CDATA[触摸屏唤醒是一个挺有趣的功能，在一些特殊的应用，特殊的场合上能使用到。如一些post机、收银台等。没人的时候，系统超时进入休眠或关屏；有人操作，点击一下触摸屏把屏幕亮起来。很人性化，功能也很炫。
好，开场白说完，进入主题。触摸唤醒分两种情况：
第一种、CPU进入深度休眠
第二种、假休眠
关于第一种情况，好像市面上某家厂商的手机（没有打广告的意思），点击两下屏幕就可以进入休眠；再点击两下就实]]></description><category></category></item><item><title><![CDATA[Linux程序之线程轮询]]></title><link>https://blog.youkuaiyun.com/hbk320/article/details/49666757</link><guid>https://blog.youkuaiyun.com/hbk320/article/details/49666757</guid><author>hbk320</author><pubDate>Thu, 05 Nov 2015 19:19:35 +0800</pubDate><description><![CDATA[说到linux程序，我们会条件反射地想到用户空间跟内核空间，两者有很多的相似之处，使用到的资源保护，数据同步的方法也类似。如用户空间用open去打开一个文件，内核里面有file_open的操作等。但他们之间还是有需要遵循的规则，如内核空间跟用户空间直接的数据拷贝，需要用到copy_from_user和copy_to_user；这也是为什么我们平时听到的在32位机上，linux进程都可以独立地访问4]]></description><category></category></item><item><title><![CDATA[慢慢总结C语言一些常用函数]]></title><link>https://blog.youkuaiyun.com/hbk320/article/details/49401583</link><guid>https://blog.youkuaiyun.com/hbk320/article/details/49401583</guid><author>hbk320</author><pubDate>Sun, 25 Oct 2015 09:54:35 +0800</pubDate><description><![CDATA[fgets
头文件：#include 
函数原型：char *fgets(char *s, int size, FILE *stream);
返回值：成功时s指向哪返回的指针就指向哪，出错或者读到文件末尾时返回NULL。
说明：fgets从指定的文件中读一行字符到调用者提供的缓冲区中。


gets
头文件：#include 
函数原型：char *gets(char *s);]]></description><category></category></item><item><title><![CDATA[浅析linux kernel段错误及调试手段]]></title><link>https://blog.youkuaiyun.com/hbk320/article/details/49047071</link><guid>https://blog.youkuaiyun.com/hbk320/article/details/49047071</guid><author>hbk320</author><pubDate>Sun, 11 Oct 2015 12:25:36 +0800</pubDate><description><![CDATA[oops，kernel panic， Segmentationfault。相信跟linux kernel打交道的人都会遇到过这些内核提示。根据严重性不一样可以分为：警告，惊慌，还有段错误——也就是我们平常遇到的内核崩溃的情况。对于oops和kernel
 panic而言，事态过于严重的时候都可能导致Segmentation fault的产生，然后内核会打印出一大堆信息，如下。或许有些内核过了1分]]></description><category></category></item><item><title><![CDATA[HI3515海思开发板移植3G模块笔记]]></title><link>https://blog.youkuaiyun.com/hbk320/article/details/48449325</link><guid>https://blog.youkuaiyun.com/hbk320/article/details/48449325</guid><author>hbk320</author><pubDate>Mon, 14 Sep 2015 23:09:00 +0800</pubDate><description><![CDATA[硬件平台：
海思Hi3515 Linux
3G模块：
1、移动模块：ZTE M305（TD-SCDMA）
2、联通模块：HUAWEI EM770W（WCDMA）
3、电信模块：HUAWEI EM660（CDMA2000-EVDO）
开始工作：
1、在编译内核时，通过make menuconfig打开模块加载选项，因为调用3G需要用到pppd服务，所以找到pppd服务的，全部启用。
]]></description><category></category></item><item><title><![CDATA[在android 4.2.2上调试MU609步骤，WCDMA]]></title><link>https://blog.youkuaiyun.com/hbk320/article/details/48449229</link><guid>https://blog.youkuaiyun.com/hbk320/article/details/48449229</guid><author>hbk320</author><pubDate>Mon, 14 Sep 2015 23:06:53 +0800</pubDate><description><![CDATA[1.修改kernel\drivers\usb\serial\option.c，添加MU609的ID号


[cpp] 
view plaincopyprint?


#define HUAWEI_PRODUCT_E353 0x1506


#define HUAWEI_PRODUCT_E353   0x1506


[cpp] 
view plaincopyprint?]]></description><category></category></item><item><title><![CDATA[android lcd 背光控制流程]]></title><link>https://blog.youkuaiyun.com/hbk320/article/details/48275369</link><guid>https://blog.youkuaiyun.com/hbk320/article/details/48275369</guid><author>hbk320</author><pubDate>Mon, 07 Sep 2015 22:54:34 +0800</pubDate><description><![CDATA[此文章是网上看到的，在MTK平台基础上的背光控制流程的分析。个人觉得写得比较详细，于是截取部分内容转载出来。

细节的框架图：









由此可见光系统从上到下依次分为java APP层、java 框架层、本地层和驱动层。下面就来看APP层，先给出调节背光的应用界面：









此功能在settings--->display--->bri]]></description><category></category></item><item><title><![CDATA[dirname: missing operand 问题解决]]></title><link>https://blog.youkuaiyun.com/hbk320/article/details/48037755</link><guid>https://blog.youkuaiyun.com/hbk320/article/details/48037755</guid><author>hbk320</author><pubDate>Thu, 27 Aug 2015 23:04:38 +0800</pubDate><description><![CDATA[以下问题在网上找了许久没找到资料，问题解决了，在这里贴出来。
问题错误信息：
/bin/bash: /usr/local/cross_compiler/linux-devkit/sysroots/i686-arago-linux/usr/bin/arm-linux-gnueabihf-gcc: command not found
dirname: missing operand
Try `]]></description><category></category></item><item><title><![CDATA[Android休眠唤醒和wakeup_source机制的使用(2)]]></title><link>https://blog.youkuaiyun.com/hbk320/article/details/47679299</link><guid>https://blog.youkuaiyun.com/hbk320/article/details/47679299</guid><author>hbk320</author><pubDate>Sat, 15 Aug 2015 09:59:36 +0800</pubDate><description><![CDATA[流程相关的代码分析（非wakeup source代码）



这里主要分析当出发power类事件时，android是怎样使用wakeup source机制来实现休眠唤醒的。
关于wakeup source的代码，以后再分析。
当power key按下后，首先是key 驱动里面读取键值，然后上报给系统：
351 static irqreturn_t gpio_keys_isr(int ]]></description><category></category></item><item><title><![CDATA[空手套白狼--基于系统分区镜像的修改]]></title><link>https://blog.youkuaiyun.com/hbk320/article/details/47450185</link><guid>https://blog.youkuaiyun.com/hbk320/article/details/47450185</guid><author>hbk320</author><pubDate>Wed, 12 Aug 2015 20:33:04 +0800</pubDate><description><![CDATA[曾经遇到过这样的一个问题：有一位同事误操作把windows下编辑过的一个文件覆盖了ubuntu下android 源码下的同样的文件，造成某个apk在运行的时候出错。再加上不同版本更新做了好多的改动，调查了许久查不出缘由，查看repo-git历史修改信息也没看出任何相关的改动。终于在万分无助之际相处了一个办法：把旧机器上的system.img 跟boot.img 抽出来，烧录到新的板子上，来缩小问题]]></description><category></category></item><item><title><![CDATA[Android Framework 记录之二]]></title><link>https://blog.youkuaiyun.com/hbk320/article/details/47380657</link><guid>https://blog.youkuaiyun.com/hbk320/article/details/47380657</guid><author>hbk320</author><pubDate>Sun, 09 Aug 2015 21:55:10 +0800</pubDate><description><![CDATA[接着上次的记录，续写。




23、services目录





文件
描述


class AlarmManagerService extends IAlarmManager.Stub {
//定时管理服务


public class AppOpsService extends IAppOpsService.Stub { 
// 程序选项服务

]]></description><category></category></item><item><title><![CDATA[Android Framework 记录之一]]></title><link>https://blog.youkuaiyun.com/hbk320/article/details/47380631</link><guid>https://blog.youkuaiyun.com/hbk320/article/details/47380631</guid><author>hbk320</author><pubDate>Sun, 09 Aug 2015 21:53:19 +0800</pubDate><description><![CDATA[简介

之前的研究太偏向应用层功能实现了，很多原理不了解没有深究，现在研究framework框架层了。




记录

1、下载源码，目录如下：







2、Android系统的层次如下：







3、项目目录简单分析如下：







4、telphony目录





文件
描述


CellI]]></description><category></category></item></channel></rss>