<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[cl11010的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/cl11010</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; cl11010]]></copyright><item><title><![CDATA[HighPassFilterImpl::BiquadFilter]]></title><link>https://blog.youkuaiyun.com/cl11010/article/details/79959796</link><guid>https://blog.youkuaiyun.com/cl11010/article/details/79959796</guid><author>cl11010</author><pubDate>Mon, 16 Apr 2018 14:04:02 +0800</pubDate><description><![CDATA[  void Process(int16_t* data, size_t length) {
    const int16_t* const ba = ba_;
    int16_t* x = x_; 
    int16_t* y = y_; 
    int32_t tmp_int32 = 0;

    for (size_t i = 0; i &amp;lt; length; i++) {
 ...]]></description><category></category></item><item><title><![CDATA[filter_dc_notch16]]></title><link>https://blog.youkuaiyun.com/cl11010/article/details/79959740</link><guid>https://blog.youkuaiyun.com/cl11010/article/details/79959740</guid><author>cl11010</author><pubDate>Mon, 16 Apr 2018 14:01:22 +0800</pubDate><description><![CDATA[看不懂这个函数，如何去除直流分量？static inline void filter_dc_notch16(const spx_int16_t *in, spx_word16_t radius, spx_word16_t *out, int len, spx_mem_t *mem, int stride)
{
   int i;
   spx_word16_t den2;
#ifdef FIXED...]]></description><category></category></item><item><title><![CDATA[Android.mk文件被导入到main.mk的位置]]></title><link>https://blog.youkuaiyun.com/cl11010/article/details/79423960</link><guid>https://blog.youkuaiyun.com/cl11010/article/details/79423960</guid><author>cl11010</author><pubDate>Fri, 02 Mar 2018 15:39:37 +0800</pubDate><description><![CDATA[subdir_makefiles := \
    $(shell build/tools/findleaves.py $(FIND_LEAVES_EXCLUDES) $(subdirs) Android.mk)

$(foreach mk, $(subdir_makefiles), $(info including $(mk) ...)$(eval include $(mk)))其中就是通过fi...]]></description><category></category></item><item><title><![CDATA[android7.1 rk3288 编译流程]]></title><link>https://blog.youkuaiyun.com/cl11010/article/details/79420072</link><guid>https://blog.youkuaiyun.com/cl11010/article/details/79420072</guid><author>cl11010</author><pubDate>Fri, 02 Mar 2018 10:21:26 +0800</pubDate><description><![CDATA[make调用build/core/main.mk产生各种目标文件：droid_targets: droidcore dist_files# Build files and then package it into the rom formats

.PHONY: droidcore

droidcore: files \

    systemimage \                    ...]]></description><category></category></item><item><title><![CDATA[openstack 和hadoop的区别是什么]]></title><link>https://blog.youkuaiyun.com/cl11010/article/details/79412277</link><guid>https://blog.youkuaiyun.com/cl11010/article/details/79412277</guid><author>cl11010</author><pubDate>Thu, 01 Mar 2018 14:45:08 +0800</pubDate><description><![CDATA[（一）openstack仿照的Amazon的云，hadoop仿照的是Google的云 openstack注重的是虚拟化/虚拟机及其配套的服务，hadoop注重的是海量的数据分析和处理。 （二）2OpenStack 主要目的是做一整套的云计算基础构架。包括 云计算(Compute), 网络(Network)，对象存贮(Object Store)，镜像文件存储 (Image)，身份认证(Authent...]]></description><category></category></item><item><title><![CDATA[USB枚举过程]]></title><link>https://blog.youkuaiyun.com/cl11010/article/details/79403013</link><guid>https://blog.youkuaiyun.com/cl11010/article/details/79403013</guid><author>cl11010</author><pubDate>Wed, 28 Feb 2018 17:05:57 +0800</pubDate><description><![CDATA[USB协议定义了设备的6种状态，仅在枚举过程种，设备就经历了4个状态的迁移：上电状态(Powered)，默认状态(Default)，地址状态(Address)和配置状态(Configured)（其他两种是连接状态(Attached)和挂起状态（Suspend））。attached和Powered状态不难理解:当一个设备被正确插入到主机的USB接口时，就处于Attached(连接)的状态。设备连接好...]]></description><category></category></item><item><title><![CDATA[linux hub架构-usb具体的枚举流程]]></title><link>https://blog.youkuaiyun.com/cl11010/article/details/79397148</link><guid>https://blog.youkuaiyun.com/cl11010/article/details/79397148</guid><author>cl11010</author><pubDate>Wed, 28 Feb 2018 10:25:33 +0800</pubDate><description><![CDATA[]]></description><category></category></item><item><title><![CDATA[十二平均律]]></title><link>https://blog.youkuaiyun.com/cl11010/article/details/38852837</link><guid>https://blog.youkuaiyun.com/cl11010/article/details/38852837</guid><author>cl11010</author><pubDate>Tue, 26 Aug 2014 20:20:28 +0800</pubDate><description><![CDATA[要介绍《十二平均律曲集》，就得先介绍什么是“十二平均律”。而要介绍“十二平均律”，就得先介绍什么是“律”。
  “律”，即“音律”（intonation），指为了使音乐规范化，人们有意选择的一组高低不同的音符所组成的体系，以及这些音符之间的相互关系。比如大家都知道的do、re、mi、fa、so、la、si，这7个音符就组成了一组音律。研究音律的学问叫做“律学”。也就是研究为什么要选择do、re、m]]></description><category></category></item><item><title><![CDATA[Linux下程序的调试方法]]></title><link>https://blog.youkuaiyun.com/cl11010/article/details/25045321</link><guid>https://blog.youkuaiyun.com/cl11010/article/details/25045321</guid><author>cl11010</author><pubDate>Mon, 05 May 2014 14:07:48 +0800</pubDate><description><![CDATA[（1）gprof 可以查看函数的耗时长短和调用关系
（]]></description><category></category></item><item><title><![CDATA[根文件系统制作]]></title><link>https://blog.youkuaiyun.com/cl11010/article/details/24486783</link><guid>https://blog.youkuaiyun.com/cl11010/article/details/24486783</guid><author>cl11010</author><pubDate>Fri, 25 Apr 2014 17:20:13 +0800</pubDate><description><![CDATA[环境】

1：Ubuntu 10.10

2：u-boot-2010.03

3：linux-2.6.35

4：busybox-1.17.3


5：优龙FS2410

6：交叉编译器:arm-none-linux-gnueabi-gcc version 4.3.2






1）解压缩busybox

tar xjvf busybox-1.17.3]]></description><category></category></item><item><title><![CDATA[Linux文件系统启动过程及login的实现]]></title><link>https://blog.youkuaiyun.com/cl11010/article/details/24484979</link><guid>https://blog.youkuaiyun.com/cl11010/article/details/24484979</guid><author>cl11010</author><pubDate>Fri, 25 Apr 2014 17:03:39 +0800</pubDate><description><![CDATA[1. busybox简介

busybox是一个集成了一百多个最常用linux命令和工具的软件，它将许多常用的LINUX命令和工具结合到了一个单独的可执行程序中。虽然与相应的GNU工具比较起来,busybox所提供的功能和参数略少,但在比较小的系统（例如启动盘）或者嵌入式系统中,已经足够了。

    busybox在设计上就充分考虑了硬件资源受限的特殊工作环境。它采用一种很巧妙的办法减少]]></description><category></category></item><item><title><![CDATA[Chrome 快捷键]]></title><link>https://blog.youkuaiyun.com/cl11010/article/details/22504477</link><guid>https://blog.youkuaiyun.com/cl11010/article/details/22504477</guid><author>cl11010</author><pubDate>Sat, 29 Mar 2014 17:35:32 +0800</pubDate><description><![CDATA[Ctrl+Shift+T 重新打开上次关闭的标签页。
Ctrl+Tab 切换到下一个标签页。

Ctrl+D
 将当前网页加入书签。

Ctrl+H
 查看历史记录页。

Ctrl+J
 查看下载页。]]></description><category></category></item><item><title><![CDATA[linux 里的一些英文缩写含义]]></title><link>https://blog.youkuaiyun.com/cl11010/article/details/17048029</link><guid>https://blog.youkuaiyun.com/cl11010/article/details/17048029</guid><author>cl11010</author><pubDate>Mon, 02 Dec 2013 08:35:25 +0800</pubDate><description><![CDATA[GIC: General Interrupt Controller

clockevents_register_device：注册系统中的时钟事件设备
MACHINE_START：主要是定义了"struct machine_desc"的类型，放在 section(".arch.info.init")，是初始化数据，Kernel 起来之后将被丢弃。
其余各个成员函数在setup_arch()]]></description><category></category></item><item><title><![CDATA[git 使用技巧]]></title><link>https://blog.youkuaiyun.com/cl11010/article/details/16919281</link><guid>https://blog.youkuaiyun.com/cl11010/article/details/16919281</guid><author>cl11010</author><pubDate>Sun, 24 Nov 2013 14:14:31 +0800</pubDate><description><![CDATA[（1）新加文件：
   $ git -add           //类似于cvs add 
   $ git -add -a                          //本目录下所有文件和子目录
   $ git -commit                        //提交，注意需要先add再commit
   $ git -commit -e -s -a]]></description><category></category></item><item><title><![CDATA[linux 驱动 并发、（非）阻塞、时钟中断]]></title><link>https://blog.youkuaiyun.com/cl11010/article/details/16904161</link><guid>https://blog.youkuaiyun.com/cl11010/article/details/16904161</guid><author>cl11010</author><pubDate>Sat, 23 Nov 2013 20:38:51 +0800</pubDate><description><![CDATA[并发情况下防止竞争的措施：
（1）中断屏蔽
（2）原子操作
（3）自旋锁
（4）读写自旋锁(防写不防读)
（5）顺序锁(seqlock)
（6）RCU(Read-Copy-Update)
（7）信号量(信号量其实和自旋锁是一样的，就是有一点不同:当获取不到信号量时，进程不会原地打转而是进入休眠等待状态)
（8）完成量(completion),它用于一个执行单元等待另一个执行单元执行]]></description><category></category></item><item><title><![CDATA[linux 字符设备驱动]]></title><link>https://blog.youkuaiyun.com/cl11010/article/details/16899669</link><guid>https://blog.youkuaiyun.com/cl11010/article/details/16899669</guid><author>cl11010</author><pubDate>Sat, 23 Nov 2013 18:13:52 +0800</pubDate><description><![CDATA[#ifndef _LINUX_CDEV_H
#define _LINUX_CDEV_H

#include 
#include 
#include 

struct file_operations;
struct inode;
struct module;

struct cdev {
    struct kobject kobj;//内嵌的kobject对象
    struct module]]></description><category></category></item><item><title><![CDATA[linux c++ 多线程 互斥访问]]></title><link>https://blog.youkuaiyun.com/cl11010/article/details/16897367</link><guid>https://blog.youkuaiyun.com/cl11010/article/details/16897367</guid><author>cl11010</author><pubDate>Sat, 23 Nov 2013 12:26:21 +0800</pubDate><description><![CDATA[from: http://blog.youkuaiyun.com/chexlong/article/details/7058283
//锁接口类  
class ILock  
{  
public:  
    virtual ~ILock() {}  
  
    virtual void Lock() const = 0;  
    virtual void Unlock() const = 0;]]></description><category></category></item><item><title><![CDATA[用户态进程的虚拟地址如何转换成物理地址]]></title><link>https://blog.youkuaiyun.com/cl11010/article/details/12643419</link><guid>https://blog.youkuaiyun.com/cl11010/article/details/12643419</guid><author>cl11010</author><pubDate>Sat, 12 Oct 2013 03:37:40 +0800</pubDate><description><![CDATA[用户态进程的虚拟地址如何转换成物理地址？
 
区分一个进程，我们都知道最简单就是进程的pid。我们就从（pid,virtualaddress）来看看如何将一个进程的虚拟地址转换为物理地址phyaddress。
 
首先根据pid我们可以得到这个进程的task_struct，进而通过task_struct得到mm,通过mm得到pgd。
好了，现在我们有pgd和virtualaddress.]]></description><category></category></item><item><title><![CDATA[视频参数解释]]></title><link>https://blog.youkuaiyun.com/cl11010/article/details/12234419</link><guid>https://blog.youkuaiyun.com/cl11010/article/details/12234419</guid><author>cl11010</author><pubDate>Wed, 02 Oct 2013 13:25:47 +0800</pubDate><description><![CDATA[1、分辨率（Resolution）
       视频分辨率是指视频成像产品所成图像的大小或尺寸，它的表达式为：“水平像素数*垂直像素数”。常见的图像分辨率有QCIF（176×144），CIF（352×288），D1（704×576），720P（1280×720）,1080P（1920*1080）。摄像机成像的最大分辨率是由CCD或CMOS感光器件决定的。现在有些摄像机支持修改分辨率，是通过摄像]]></description><category></category></item><item><title><![CDATA[uboot]]></title><link>https://blog.youkuaiyun.com/cl11010/article/details/12228579</link><guid>https://blog.youkuaiyun.com/cl11010/article/details/12228579</guid><author>cl11010</author><pubDate>Wed, 02 Oct 2013 02:59:17 +0800</pubDate><description><![CDATA[OUTPUT_FORMAT("elf32-littlearm", "elf32-littlearm", "elf32-littlearm")
/*指定输出可执行文件是elf格式,32位ARM指令,小端*/
OUTPUT_ARCH(arm)
/*指定输出可执行文件的平台为ARM*/
ENTRY(_start)
/*指定输出可执行文件的起始代码段为_start*/]]></description><category></category></item></channel></rss>