<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[chrovery的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/chrovery</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; chrovery]]></copyright><item><title><![CDATA[ARM内核全解析，从ARM7,ARM9到Cortex-A7,A8,A9,A12,A15到Cortex-A53,A57]]></title><link>https://blog.youkuaiyun.com/chrovery/article/details/53284049</link><guid>https://blog.youkuaiyun.com/chrovery/article/details/53284049</guid><author>chrovery</author><pubDate>Tue, 22 Nov 2016 11:38:49 +0800</pubDate><description><![CDATA[前不久ARM正式宣布推出新款ARMv8架构的Cortex-A50处理器系列产品，以此来扩大ARM在高性能与低功耗领域的领先地位，进一步抢占移动终端市场份额。Cortex-A50是继Cortex-A15之后的又一重量级产品，将会直接影响到主流PC市场的占有率。围绕该话题，我们今天不妨总结一下近几年来手机端较为主流的ARM处理器。






　　 以由高到低的方式来看，ARM处理器大体]]></description><category></category></item><item><title><![CDATA[ARM体系结构]]></title><link>https://blog.youkuaiyun.com/chrovery/article/details/53284013</link><guid>https://blog.youkuaiyun.com/chrovery/article/details/53284013</guid><author>chrovery</author><pubDate>Tue, 22 Nov 2016 11:37:28 +0800</pubDate><description><![CDATA[1. ARM概述

1.1 Application Cortex Processors (ARM Cortex 应用处理器 )
       • Cortex™-A 系列 - 开放式操作系统的高性能处理器 
     Cortex 应用处理器在先进工艺节点中可实现高达 2GHz+ 标准频率的卓越性能，从而可支持下一代的移动 Internet 设备。这些处理器具有单核和多核种类，最多提供四个]]></description><category></category></item><item><title><![CDATA[ARM Introduction]]></title><link>https://blog.youkuaiyun.com/chrovery/article/details/53284003</link><guid>https://blog.youkuaiyun.com/chrovery/article/details/53284003</guid><author>chrovery</author><pubDate>Tue, 22 Nov 2016 11:36:29 +0800</pubDate><description><![CDATA[Architecture

Processor Architecture = Instruction Set + Programmer’s model





Architecture



4T



5TE



6



7





core



ARM7TDMI

ARM922T

Thumb instruc]]></description><category></category></item><item><title><![CDATA[Windows下如何获取usb device信息]]></title><link>https://blog.youkuaiyun.com/chrovery/article/details/52402350</link><guid>https://blog.youkuaiyun.com/chrovery/article/details/52402350</guid><author>chrovery</author><pubDate>Thu, 01 Sep 2016 18:18:01 +0800</pubDate><description><![CDATA[Windows provided some API to get the device's detail information, include USB STORAGE HID PCI etc


#include 
#include     // for GUID_DEVCLASS_CDROM etc
#include 
#include    // for MAX_DEVICE_ID_]]></description><category></category></item><item><title><![CDATA[xHCI spec 1.0]]></title><link>https://blog.youkuaiyun.com/chrovery/article/details/51815059</link><guid>https://blog.youkuaiyun.com/chrovery/article/details/51815059</guid><author>chrovery</author><pubDate>Sun, 03 Jul 2016 14:18:23 +0800</pubDate><description><![CDATA[extensible host controller interface for universal serial bus
https://www.baidu.com/link?url=z2hfp3-c-cOXawkxSPYRriOUlyUcuSE0ZQHK-4G4o3LaqF_FltA35ncxy3F3cU8uL5QHaFIophw-DRHGMRq8NLWB6gRRDP505Y_QLVJ9IH]]></description><category></category></item><item><title><![CDATA[debugfs dump usb device info]]></title><link>https://blog.youkuaiyun.com/chrovery/article/details/51382639</link><guid>https://blog.youkuaiyun.com/chrovery/article/details/51382639</guid><author>chrovery</author><pubDate>Thu, 12 May 2016 11:25:28 +0800</pubDate><description><![CDATA[使用kernel自带的debugfs来dump usb device信息：
1.   mount debugfs
mount –t debugfsnone /sys/kernel/debug
2.   Dump USB device
cat/sys/kernel/debug/usb/devices]]></description><category></category></item><item><title><![CDATA[SCSI work flow]]></title><link>https://blog.youkuaiyun.com/chrovery/article/details/51305530</link><guid>https://blog.youkuaiyun.com/chrovery/article/details/51305530</guid><author>chrovery</author><pubDate>Tue, 03 May 2016 16:11:43 +0800</pubDate><description><![CDATA[static int queuecommand_lck(structscsi_cmnd *srb,
                            void(*done)(struct scsi_cmnd *))
{
         structus_data *us = host_to_us(srb->device->host);
 
         /*check for]]></description><category></category></item><item><title><![CDATA[Linux 内核 SCSI IO 子系统分析]]></title><link>https://blog.youkuaiyun.com/chrovery/article/details/51281123</link><guid>https://blog.youkuaiyun.com/chrovery/article/details/51281123</guid><author>chrovery</author><pubDate>Fri, 29 Apr 2016 13:31:07 +0800</pubDate><description><![CDATA[Linux 内核 SCSI IO 子系统分析

研究
 LINUX 内核中 SCSI 子系统处理 IO 的过程




本文基于 LINUX2.6.18 内核，从 SCSI 设备访问请求的提交，SCSI 命令的处理、错误恢复几个方面浅析了 LINUX 内核中 SCSI 子系统的 IO 的处理机制。










概述

LINUX 内核中 SCSI ]]></description><category></category></item><item><title><![CDATA[script/ shell脚本 callstack如何dump]]></title><link>https://blog.youkuaiyun.com/chrovery/article/details/51093346</link><guid>https://blog.youkuaiyun.com/chrovery/article/details/51093346</guid><author>chrovery</author><pubDate>Fri, 08 Apr 2016 09:07:09 +0800</pubDate><description><![CDATA[将script加入到需要check的脚本中即可。例如需要check ins_all_mod.sh的callstack,
将附档中script加入到其最后即可。

# FILE       : sctrace.sh
# LICENSE    : GPL v2.0 (only)
# PURPOSE    : print the recursive callers' list for a sc]]></description><category></category></item><item><title><![CDATA[insmod过程详解]]></title><link>https://blog.youkuaiyun.com/chrovery/article/details/51088425</link><guid>https://blog.youkuaiyun.com/chrovery/article/details/51088425</guid><author>chrovery</author><pubDate>Thu, 07 Apr 2016 18:56:45 +0800</pubDate><description><![CDATA[转自 http://blog.chinaunix.net/xmlrpc.php?r=blog/article&uid=27717694&id=3971861


一、前言

对于现在编译的一些module要insmod在系统上时，可能会报各种各样的错误。这些错误仔细研读内核源码，都能找出原因。2.6 内核以前的insmod部分主要依赖于modutils源码包，在用户层基本将工作完成，加载]]></description><category></category></item><item><title><![CDATA[获取driver导出的所有symbol]]></title><link>https://blog.youkuaiyun.com/chrovery/article/details/51087419</link><guid>https://blog.youkuaiyun.com/chrovery/article/details/51087419</guid><author>chrovery</author><pubDate>Thu, 07 Apr 2016 17:11:45 +0800</pubDate><description><![CDATA[echo 0 > /proc/sys/kernel/kptr_restrict        // shell cmd; su权限
 cat /proc/kallsyms | grep xxx    		// shell cmd, xxx is the symbol name, and we can find the detail address of xxx
 r 0xxxxx  					//]]></description><category></category></item><item><title><![CDATA[USB Mass Storage大容量存储的基本知识]]></title><link>https://blog.youkuaiyun.com/chrovery/article/details/51018862</link><guid>https://blog.youkuaiyun.com/chrovery/article/details/51018862</guid><author>chrovery</author><pubDate>Wed, 30 Mar 2016 20:13:13 +0800</pubDate><description><![CDATA[转自： http://www.crifan.com/files/doc/docbook/usb_disk_driver/release/htmls/ch02_msc_basic.html

第 2 章 USB Mass Storage大容量存储的基本知识




目录
2.1.
 USB Mass Storage相关的协议
2.1.1.
 USB Mass Storage相关]]></description><category></category></item><item><title><![CDATA[kmalloc fail导致系统异常]]></title><link>https://blog.youkuaiyun.com/chrovery/article/details/51006082</link><guid>https://blog.youkuaiyun.com/chrovery/article/details/51006082</guid><author>chrovery</author><pubDate>Tue, 29 Mar 2016 15:11:22 +0800</pubDate><description><![CDATA[如果在中断ISR中间有作memory alloc的动作，有可能会遇到如下的BUG log信息，分析如下：
1  ISR中不能存在任何可调度的动作，如sleep等
2  在ISR中申请memory时，最好尽量使用 kmalloc(xxx, GFP_ATOMIC), 而不要使用kmalloc(xxx, GFP_KERNEL), 因为GFP_KERNEL是可以被打断的，如果因memory not e]]></description><category></category></item><item><title><![CDATA[Device Tree（三）：代码分析]]></title><link>https://blog.youkuaiyun.com/chrovery/article/details/50728476</link><guid>https://blog.youkuaiyun.com/chrovery/article/details/50728476</guid><author>chrovery</author><pubDate>Wed, 24 Feb 2016 10:43:05 +0800</pubDate><description><![CDATA[Device Tree（三）：代码分析

作者：郭健 发布于：2014-6-6 16:03 分类：统一设备模型

一、前言

Device Tree总共有三篇，分别是：

1、为何要引入Device Tree，这个机制是用来解决什么问题的？（请参考引入Device Tree的原因）

2、Device Tree的基础概念（请参考DT基础概念）

3、ARM linux中和D]]></description><category></category></item><item><title><![CDATA[Device Tree（二）：基本概念]]></title><link>https://blog.youkuaiyun.com/chrovery/article/details/50728430</link><guid>https://blog.youkuaiyun.com/chrovery/article/details/50728430</guid><author>chrovery</author><pubDate>Wed, 24 Feb 2016 10:38:18 +0800</pubDate><description><![CDATA[Device Tree（二）：基本概念

作者：郭健 发布于：2014-5-30 16:47 分类：统一设备模型

一、前言

一些背景知识（例如：为何要引入Device Tree，这个机制是用来解决什么问题的）请参考引入Device Tree的原因，本文主要是介绍Device Tree的基础概念。

简单的说，如果要使用Device Tree，首先用户要了解自己的硬件配置和系统运]]></description><category></category></item><item><title><![CDATA[Device Tree（一）：背景介绍]]></title><link>https://blog.youkuaiyun.com/chrovery/article/details/50728190</link><guid>https://blog.youkuaiyun.com/chrovery/article/details/50728190</guid><author>chrovery</author><pubDate>Wed, 24 Feb 2016 10:11:37 +0800</pubDate><description><![CDATA[Device Tree（一）：背景介绍

作者：郭健 发布于：2014-5-22 16:46 分类：统一设备模型

一、前言

作为一个多年耕耘在linux 2.6.23内核的开发者，各个不同项目中各种不同周边外设驱动的开发以及各种琐碎的、扯皮的俗务占据了大部分的时间。当有机会下载3.14的内核并准备学习的时候，突然发现linux kernel对于我似乎变得非常的陌生了，各种新的机制，]]></description><category></category></item><item><title><![CDATA[Kmemleak Introduction]]></title><link>https://blog.youkuaiyun.com/chrovery/article/details/50550493</link><guid>https://blog.youkuaiyun.com/chrovery/article/details/50550493</guid><author>chrovery</author><pubDate>Wed, 20 Jan 2016 19:26:49 +0800</pubDate><description><![CDATA[Kernel Memory Leak Detector
===========================

Introduction
------------

Kmemleak provides a way of detecting possible kernel memory leaks in a
way similar to a tracing garbage collector
(h]]></description><category></category></item><item><title><![CDATA[一张图看尽 Linux 内核运行原理]]></title><link>https://blog.youkuaiyun.com/chrovery/article/details/50538500</link><guid>https://blog.youkuaiyun.com/chrovery/article/details/50538500</guid><author>chrovery</author><pubDate>Mon, 18 Jan 2016 18:49:00 +0800</pubDate><description><![CDATA[]]></description><category></category></item><item><title><![CDATA[vim 常用命令]]></title><link>https://blog.youkuaiyun.com/chrovery/article/details/50497086</link><guid>https://blog.youkuaiyun.com/chrovery/article/details/50497086</guid><author>chrovery</author><pubDate>Mon, 11 Jan 2016 15:01:27 +0800</pubDate><description><![CDATA[基本命令




:e filename

Open filename for edition



:w

Save file



:q

Exit Vim



:q!

Quit without saving



:x

Write file (if changes has been made) and exit


]]></description><category></category></item><item><title><![CDATA[usb host controller & usb core & usb device driver之间的关系]]></title><link>https://blog.youkuaiyun.com/chrovery/article/details/50460801</link><guid>https://blog.youkuaiyun.com/chrovery/article/details/50460801</guid><author>chrovery</author><pubDate>Tue, 05 Jan 2016 10:44:27 +0800</pubDate><description><![CDATA[使用USB设备时，两个模块是必须的：

usb核心模块：usbcore      

usb主机控制器驱动( host controller driver )，如ehci_hcd、ohci_hcd、uhci_hcd、xhci、musb等等

usbcore:

       usbcore负责实现一些核心的功能，为别的设备驱动程序提供服务，提供一个专用于访问和控制usb硬件的接口，]]></description><category></category></item></channel></rss>