自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(328)
  • 资源 (9)
  • 收藏
  • 关注

转载 linux kernel 打印函数指针对应的函数名

内核中函数指针用的很多,在debug 的时候能直接打印出一个函数指针对应的函数就会很方便。打印裸指针(raw pointer)用 %p,%p除了可以用来打印指针外还可以打印其它的信息%pF可打印函数指针的函数名和偏移地址,%pf只打印函数指针的函数名,不打印偏移地址。如printk("%pf %pF\n", ptr, ptr) will print:

2015-07-03 09:56:27 7621

转载 SELinux 学习笔记

http://www.2cto.com/os/201111/112020.htmlSElinux(Security Extend linux)Red hat Enterprise 5支持内核实施的一项新的安全策略:SElinux。SElinux是由美国国防部让安全局针对计算机基础结构开发的,SElinux允许管理员定义高度灵活的策略,让linux内核把它作为日常操作的一

2015-06-12 09:56:57 719

原创 Linux kernel memory management (ARM)

本文以 linux mainline 代码分析,v3.19-rc5 + (SHA-1 : b97f880c8342fd6e49a02c9ef7507a678722b2b3)以ARM vexpress 为例进行分析,用到的调试命令如下:make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- distclean ; make ARCH=arm CR

2015-01-30 17:06:47 1538

转载 Android内存之VSS/RSS/PSS/USS

TermsVSS - Virtual Set Size 虚拟耗用内存(包含共享库占用的内存)RSS - Resident Set Size 实际使用物理内存(包含共享库占用的内存)PSS - Proportional Set Size 实际使用的物理内存(比例分配共享库占用的内存)USS - Unique Set Size 进程独自占用的物理内存(不包含共享库占用的内存)一

2014-12-11 11:15:17 925

原创 qemu & qemu-system

http://wiki.qemu-project.org/Downloadgit clone git://git.qemu-project.org/qemu.git

2014-11-15 12:11:29 4995 8

原创 Milestone/umts_sholes/OMAP3430 DSS(Display Sub-System) Go-Through

前世今生:为什么又翻出了10年入手的Milestone,费时费力sync 了github 上的代码,编译umts_sholes 工程?一个关于通过读写 fb0设备节点读写LCD屏的问题,现在高通的解决方案MSM8974/MSM8x26通过读写fb0 设备节点都不能完成读写LCD屏操作。完全弄清楚这个问题首先需要理解Tiny6410/Milestone 是如何通过读写fb0

2014-10-22 11:06:24 1381

原创 Graphics pipeline

2014-07-04 09:55:29 986

转载 VS2008 配置 opengl nehe

http://download.csdn.net/download/seaboy100/250937http://wenku.baidu.com/link?url=RGTR9uZtrAsWB8oyYLQMWUjPB7AzT0KOqBB4Fge7pd9SYvU4UKLlfH05JesUNMUqY-GmosmHz7F_q2lvkbCoFqkBm6Q-hNBJxbOYaAKfUH3

2014-06-30 14:01:16 588

转载 各种总线match匹配函数

转载:http://blog.csdn.net/fanqipin/article/details/8153053    当向linux系统总线添加设备或驱动时,总是会调用各总线对应的match匹配函数来判断驱动和设备是否匹配,这些match函数之间都存在一定的差异,本文先对常用的match匹配函数进行讲解,以后会陆续添加新的内容。 一. 驱动和设备匹配过程常用数

2014-06-27 14:32:34 1242

转载 linux设备模型之i2c子系统

http://www.cnblogs.com/gdt-a20/archive/2011/05/20/2291985.html

2014-06-26 17:03:58 642

转载 glViewport()函数和glOrtho()函数的理解

http://www.cnblogs.com/yxnchinahlj/archive/2010/10/30/1865298.html在OpenGL中有两个比较重要的投影变换函数,glViewport和glOrtho。glOrtho是创建一个正交平行的视景体。 一般用于物体不会因为离屏幕的远近而产生大小的变换的情况。比如,常用的工程中的制图等。需要比较精确的显示。 而作为

2014-06-18 14:07:28 623

转载 VC6.0中OpenGL开发环境配置

转载:http://hi.baidu.com/sharebophar/item/f2b8a624446775cba4275a17首先简单介绍一下OpenGL:    OpenGL作为当前主流的图形API之一,它在一些场合具有比DirectX更优越的特性。       OpenGL官方网站(英文)    http://www.opengl.org   

2014-06-15 15:07:09 1036

原创 Android 使用 ftrace

在ubuntu PC 上使用 ftrace 很方便,yi

2014-05-08 14:20:48 2352

转载 CMA

http://www.doc88.com/p-990213225050.html

2014-04-29 17:09:05 774

转载 高端内存

http://blog.chinaunix.net/uid-15007890-id-3415331.html

2014-04-28 22:25:25 1393

转载 Linux Magic System Request Key Hacks

转载:https://www.kernel.org/doc/Documentation/sysrq.txthttps://www.ibm.com/developerworks/cn/linux/l-cn-sysrq/Linux Magic System Request Key HacksDocumentation for sysrq.c* What is t

2014-04-22 10:44:31 1262

转载 android vsync

http://blog.csdn.net/wanna_ku/article/details/7819742http://www.uml.org.cn/mobiledev/201301081.asp

2014-02-23 00:11:42 869

原创 Android systrace

Android systrace is very useful tools for debugging. Refer to Android official docs for more information.http://developer.android.com/tools/help/systrace.htmlhttp://developer.android.com/tools/d

2014-02-22 23:56:20 875

转载 futex

http://hi.baidu.com/pbskasefcqcfjxr/item/8f0271c5a07d7c52ac00ef12转载感言:发现一篇还不错的文章,跟大家分享一下。该文简单介绍了Futex机制,并有一些简单的例子,浅显易懂。Linux中的同步机制(一)--Futex引子在编译2.6内核的时候,你会在编译选项中看到[*] Enable futex support这一项,

2014-02-13 09:09:06 1294

转载 AMSS - Advanced Mobile Subscriber Software

http://blog.csdn.net/dulijun_98103207/article/details/5327225http://zhidao.baidu.com/link?url=Vfm4eR1GiMpDNABolRwa_VsG83MrWmvRAjvYPTaDT4BDn0Sb6lpWRew6mudnVWRcPD2r5s85Ok3lfCmCuaymmK在高通7系列的架构中

2014-02-13 09:07:53 1100

转载 sysconf

通过将 sysconf (_SC_PHYS_PAGES) 和 sysconf (_SC_PAGESIZE) 相乘,来确定物理内存的总量 (以字节为单位) 。#include #include #define ONE_MB (1024 * 1024)int main (void){ long num_procs; long page_size; long num_pages

2014-02-08 17:04:27 1798

原创 排序算法 之 快速排序

转载:http://www.cnblogs.com/morewindows/archive/2011/08/13/2137415.html快速排序由于排序效率在同为O(N*logN)的几种排序方法中效率较高,因此经常被采用,再加上快速排序思想----分治法也确实实用,因此很多软件公司的笔试面试,包括像腾讯,微软等知名IT公司都喜欢考这个,还有大大小的程序方面的考试如软考,考

2013-11-27 19:49:18 754

转载 I2C 时序分析

http://wenku.baidu.com/link?url=66aZ29qSblNsYSZf7aAZ-vK-vprGJuovVjUYt57O0zO-rJvC3aYY3X4ObNmh4WbTO3N_BkFpa8aYZ4jeX7corPwYhONvuJcjso6XVyd5M6u

2013-11-25 08:57:01 850

转载 ftrace

http://www.ibm.com/developerworks/cn/linux/l-cn-ftrace/http://blog.csdn.net/brfeng/article/details/8937410http://linux.cn/home-space-uid-2-do-blog-id-326.htmlhttp://lwn.net/Articles/370423/

2013-11-21 14:39:00 1059

转载 IDE, ATA, SCSI

关于硬盘的术语有一大堆,而且和很多别的计算机术语一样,界定不清,含义模糊。在这里简单澄清一下,但我不排除你看了之后会更糊涂。:^)IDE:Integrated Drive Electronics 的缩写。最早的硬盘接口,后来被 ATA 标准所取代,准确地讲应该是 ATA-1。所以有时也被称为 IDE/ATA,可参见其历史介绍。后来,几乎和ATA-1同时出现的 EIDE(Enhanced

2013-11-08 17:26:56 1045

原创 C++ 构造函数

C++ 构造函数C++ 中定义全局的对象,会引发该对象对应类及其父类的构造函数执行,因此可先于main() 函数执行。如:#include using namespace std;// Base class definationclass Quote {public: Quote() = default; Quote(const std::string &bo

2013-11-05 10:11:58 693

原创 C++ 运行时绑定

C++ 动态绑定C++ 的虚函数 + 派生类对象及派生类到基类的类型转换 共同完成了C++ 面向对象程序设计的三个基本概念之一--动态绑定。同样一段代码运行时才能决定运行的具体函数是哪个(相对于编译时就能确定而言),这个概念在C++ 中称为动态绑定或运行时绑定(run-time binding)。例如,定义下面一个接口用于打印书籍的总价格,这个接口既可以用于打印没有折扣的书籍价格(基类

2013-11-05 09:38:57 2162

原创 C++ 纯虚函数

纯虚函数:和普通的虚函数不一样,纯虚函数无需定义。通过在函数体的位置书写 =0 就可以将一个虚函数声明为纯虚函数。含有纯虚函数的类是抽象类(abstract base class)。抽象类负责定义接口,后续的其他类可以覆盖该接口。C++ 不允许创建一个抽象类的对象。看个例子://==================================================

2013-11-04 16:58:19 1616

原创 int or unsigned int

int 声明的变量默认是signed int 带符号的,如果需要无符号整型,必须明确声明 unsigned int.#include <stdio.h>#include <stdlib.h>int main(int argc, char *argv[]) { int i = 2147483645; int j = 2147483649; ...

2013-10-31 08:45:47 882

原创 Android 堆栈攻击之 ARM 栈分析 + ARM汇编解读

想要劫持ARM 处理器,让它执行你想要的代码,从 ARM 栈攻击(Buffer overrun)入手,分析 ARM 栈溢出的原理,利用 ARM 汇编作为跳板指令,执行攻击程序。1. 栈 (Stack)介绍栈结构的文章网上很多,摘取一篇作为参考:http://hi.baidu.com/trical/item/585a24087f9b1a036c9048f0对ARM堆栈的理解 ...

2013-10-29 14:38:46 8742

原创 ROP 返回导向编程 攻击

之前工作中一直研究ARM 体系结构函数调用标准(AAPCS),分析栈中内存溢出对ARM 体系结构函数调用产生的影响。Android 的流行促进了hacker 对 Android root 的研究,最出名的莫过于 基于堆栈溢出攻击的 ROP gadgets ROOT方法。首先看下ROP的基本概念(摘自wiki):http://zh.wikipedia.org/wiki/%E8%B

2013-10-29 13:07:39 4324

原创 linux kernel setup_arch

在 linux kernel booting 阶段,asmlinkage void __init start_kernel(void)中很重要的一个步骤是 setup arch,setup_arch(&command_line);对于不同的体系结构,比如 ARM 和 MIPS,它们分别需要实现这个函数,在编译的时候链接进来。linux 内核公共部分并不关心各个体系结构的

2013-10-21 13:57:12 2100

转载 数据对齐 & 结构体的大小

数据对齐:如果一个变量的内存地址正好是它长度的整数倍,它就称作是自然对齐的。一些体系结构对对齐的要求非常严格。RISC系统,载入未对齐的数据会导致处理器陷入(一种可处理的错误,trap)。还有一些系统可以访问没有对齐的数据,只不过性能会下降。编译器会通过让所有的数据自然对齐来避免引发对齐问题。看一下结构体大小的计算:转载: http://blog.sina.com.cn/s

2013-10-14 15:26:57 867

原创 为什么 tcp/udp 的端口号可以重复

使用TCP/UDP 协议的上层应用程序可以分配重复的端口号,也就是说一个端口号1200可以同时出现在TCP、UDP中。看下 《TCP/IP 详解》中的这个图就很清楚了:

2013-10-14 14:04:39 11502 1

原创 C/C++ 二维数组、多维数组

严格来说,C/C++ 语言中并没有多维数组,通常所说的多维数组其实就是数组的数组。对于二维数组来说,常把第一个维度称作行,第二个维度称作列。看个例子,重点看下二维数组在内存中的存储:/* ============================================================================ Name : two-d

2013-10-14 13:37:57 973

原创 C 语言字符串结束符 '\0'

转载文章:http://blog.csdn.net/shuilan0066/article/details/7990362测试用例:/* ============================================================================ Name : string_size.c Author

2013-10-14 11:04:19 965

原创 char 溢出

char 类型的数据只有一个 Byte, 8bits,如果是unsigned char 的话,能表示的范围就是0 ~255,看下面的这个例子:/* ============================================================================ Name : char.c Author : qiang

2013-10-14 10:19:25 1146

原创 C 中for 循环语句执行顺序之我是汇编

for(i = 0; i 这样的for 语句可能再基础不过,可是理解不清楚还是容易犯错误。现在我用ARM 汇编指令分析一下这样的语句到底是怎么执行的(当你看C代码不知道代码到底是怎么执行的时候,要么查C标准,要么看熟悉的ARM 汇编)。测试用例:/* ===============================================================

2013-10-14 09:53:39 1810

转载 为什么通过sp & ~(THREAD_SIZE - 1) 可以获取到 task_struct

转载:http://blog.csdn.net/npy_lp/article/details/7292563http://blog.chinaunix.net/uid-26000137-id-3767114.htmlhttp://wenku.baidu.com/view/bec6fac089eb172ded63b7f6.html

2013-10-10 17:06:44 1873

转载 ARM 堆栈

堆栈严格来说应该叫做栈,栈(Stack)是限定仅在一端进行插入或删除操作的线性表。因此,对栈来说,可以进行插入或删除操作的一端称为栈顶(top),相应地,另一端称为栈底(bottom)。不含元素的空表称为空栈。由于堆栈只允许在一端进行操作,因而按照后进先出(LIFO-Last In First Out)的原理运作。 从栈顶的定义来看,栈顶的位置是可变的。空栈时,栈顶和栈底重合...

2013-10-10 15:47:36 1783 1

Android HAL layer analysis

讲解 Android HAL 硬件抽象层特别好的文档,从上到下的Android 代码结构分析,以及具体实例分析。

2013-08-14

NFS 网络文件系统分析

NFS 网络文件系统入门文档,版权归原作者。

2013-07-10

BitBake User Manual .pdf

bitbake, yocto, for learning yocto, open embedded build system.

2013-04-10

OpenEmbedded User Manual .pdf

OpenEmbedded User Manual, for learning yocto, open embedded, linux, build system.

2013-04-10

Linux.PowerPC详解-核心篇

学习PowerPc linux 特别好的文档,对于bootloader,kernel,init整个PowerPC linux 的初始化也有介绍。

2013-04-02

Git学习手册

学习Git常用操作,理解Git工作原理,总之就是学习Git只用这一本书就够了。

2013-03-22

teraterm_utf8-4.58 非常好用的串口工具

非常好用的串口终端工具 使用几次就知道了

2013-02-27

uboot- ARM bootloader

uboot ARM bootloader 源代码

2012-11-10

GNU make中文手册v3.8

GNU make中文手册v3.8,make的工作方法及Makefile讲的非常好!

2012-05-04

空空如也

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

TA关注的人

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