跨进程 API hook

摘要: 跨进程API Hook(初稿) 什么是“跨进程 API Hook”? 众所周知Windows应用程序的各种系统功能是通过调用API函数来实现。API Hook就是给系统的API附加上一段小程序,它能监视甚至控制应用程序对API函数的调用。所谓跨进程也就是让自己的程序来控制别人程序的API调用了。 API Hook 理论 通过对Win32 PE文件的分析(如果你... 阅读全文
posted @ 2012-09-16 14:14 alfredzzj 阅读(613) 评论(0) 推荐(0) 编辑

mera的几个概念~~wikipedia太强大拉~~

摘要: 呵呵,其实不能说原创,都是从维基百科上看到的~~ Crop:就是裁减的意思,对camera捕获的视频帧,对其进行裁减,去掉外围不必要的部分,从而达到改变宽高比,达到全景,宽屏,广角等一些列功能的技术。除了camera外,crop也广泛用在电影上,应该就是电影上的剪辑这个职位吧。 比如下面的两张图: 原始图,未经过crop的 经过crop后的图,强调了中间的部分 ... 阅读全文
posted @ 2012-07-02 21:45 alfredzzj 阅读(230) 评论(0) 推荐(0) 编辑

转一篇Linux可用内存的统计方法

摘要: 背景 由于Linux缓存机制的设计,系统对缓存的使用是非常狠的,所以经常会看到某些环境内存只剩几十兆了,而应用只用了不到一半。所以在计算可用内存的时候,一定要算上缓存的部分。 通常方法,就是通过free命令首行free+cached+buffers计算,或者直接使用第二行的free字段。但这个方法有时仍然会造成比较大的误差,导致性能监控等方面的问题。 比如系统中使用了大量的共享... 阅读全文
posted @ 2012-07-02 21:43 alfredzzj 阅读(803) 评论(0) 推荐(0) 编辑

nux driver model ----- platform

摘要: Platform Device and Drivers 从<linux/platform_device.h>我们可以了解Platform bus上面的驱动模型接口:platform_device,platform_driver。和PCI和USB这些大结构的总线不同,虚拟总线Platform bus使用最小结构来集成SOC processer上的各种外设,或者各种“legacy”之间的互联。 ... 阅读全文
posted @ 2012-07-02 21:09 alfredzzj 阅读(284) 评论(0) 推荐(0) 编辑

Linux Platform Device and Driver

摘要: 从Linux 2.6起引入了一套新的驱动管理和注册机制:Platform_device和Platform_driver。 Linux中大部分的设备驱动,都可以使用这套机制, 设备用Platform_device表示,驱动用Platform_driver进行注册。 Linux platform driver机制和传统的device driver 机制(通过driver_register函数进行注... 阅读全文
posted @ 2012-07-02 20:59 alfredzzj 阅读(312) 评论(0) 推荐(0) 编辑

用 grep 恢复误删的文本文件

摘要: 作为长期的电脑使用者,肯定会有误删文件的经历,在 Mac OS X 和 Windows 上删除的文件都会默认进 “回收站”。在 Linux 上如果事先没有用别名(alias)修改默认的 rm 功能,rm 后文件就会丢失,幸运的是,在一般的删除文件操作中,Linux 并不会立即清空存储该文件的 block 内容,而只会释放该文件所占用的 inode 和 data block,Linux 上 rm 的... 阅读全文
posted @ 2012-07-02 20:45 alfredzzj 阅读(235) 评论(0) 推荐(0) 编辑

语音信号的A律编解码的DSP实现

摘要: 摘要:本文介绍了G.711标准的A律压缩算法的基本原理,设计出了A律编解码的软件流程框图,在以TMS320VC5416为处理器的硬件开发平台上实现了语音信号的A律压缩解压算法,并给出了C54x的汇编语言程序。 0 引言 语言压缩技术既节省了存储时所占用的存储空间,又减少了传输时所占用的带宽,而快速发展的数字信号处理(DSP)技术使得实时实现各种复杂的语音压缩算法成为可能。 国际电信联盟(IT... 阅读全文
posted @ 2012-06-23 16:18 alfredzzj 阅读(1420) 评论(0) 推荐(0) 编辑

高级字符驱动程式操作[(2)阻塞型I/O和休眠]

摘要: 这一部分主要讨论:假如驱动程式无法立即满足请求,该如何响应?(65865346) 一、休眠 进程被置为休眠,意味着他被标识为处于一个特别的状态并且从调度器的运行队列中移走。这个进程将不被在任何 CPU 上调度,即将不会运行。 直到发生某些事情改变了那个状态。安全地进入休眠的两条规则: (1) 永远不要在原子上下文中进入休眠,即当驱动在持有一个自旋锁、seqlock或 RCU 锁时不... 阅读全文
posted @ 2012-06-17 14:25 alfredzzj 阅读(317) 评论(0) 推荐(0) 编辑

使用 /proc 文件系统来访问 Linux 内核的内容

摘要: 2012-02-06 17:378人阅读评论(0)收藏举报 这个虚拟文件系统在内核空间和用户空间之间打开了一个通信窗口 简介: /proc 文件系统是一个虚拟文件系统,通过它可以使用一种新的方法在 Linux® 内核空间和用户空间之间进行通信。在 /proc 文件系统中,我们可以将对虚拟文件的读写作为与内核中实体进行通信的一种手段,但是与普通文件不同的是,这些虚拟文件的内容都是动态创建的。本文... 阅读全文
posted @ 2012-06-17 13:06 alfredzzj 阅读(324) 评论(0) 推荐(0) 编辑

字节对齐(强制对齐以及自然对齐)

摘要: struct {}node; 32为的x86,window下VC下sizeof(node)的值为1,而linux的gcc下值为0; 一、WINDOWS下(VC--其实GCC和其原理基本一样,象这种问题,一般要查具体的编译器设置)字节对齐的规则: 1、一般设置的对齐方式为1,2,4字节对齐方式,VC一般默认为4字节(最大为8字节)。结构的首地址必须是结构内最宽类型的整数倍地址;另外,结构体... 阅读全文
posted @ 2012-06-17 10:29 alfredzzj 阅读(17467) 评论(0) 推荐(2) 编辑