- 博客(11)
- 资源 (7)
- 收藏
- 关注
转载 linux中高端内存和低端内存的概念
高端内存是Linux中一个重要的概念,初涉Linux时曾经对这个概念非常迷惑。实际上这个概念比较简单,理解这个概念,需要追溯一下Linux的内存管理。 从前,CPU的地址总线只有32位。32的地址总线无论是从逻辑上还是从物理上都只能描述4G的地址空间,在物理上理论上最多拥有 4G内存(除了IO地址空间,实际内存容量小于4G),逻辑空间也只能描述4G的线性地址空间。为了合理的利用4G空
2013-03-18 13:44:06 1820
转载 kmalloc、vmalloc、malloc的区别
简单的说:kmalloc和vmalloc是分配的是内核的内存,malloc分配的是用户的内存 kmalloc保证分配的内存在物理上是连续的,vmalloc保证的是在虚拟地址空间上的连续,malloc不保证任何东西(这点是自己猜测的,不一定正确)kmalloc能分配的大小有限,vmalloc和malloc能分配的大小相对较大 内存只有在要被DMA访问的时候才需要物理上连续 vmalloc
2013-02-19 13:02:50 239
转载 Platform设备驱动
从Linux2.6起,引入了一套新的驱动管理和注册机制:Platform_device和Platform_driver。Linux中大部分的设备驱动,都可以使用这套机制,设备用platform_device表示,驱动用platform_driver进行注册。 Linux platform driver机制和传统的device_driver机制相比,一个十分明显的优势在于platform机制
2013-01-31 15:37:38 282
原创 linux驱动基础及注意事项
1. 内存分配a. 函数dma_alloc_coherent()分配实地址和虚地址b. 函数kmalloc()只返回虚地址。一般kmalloc最大只能分配128K-16,16个字节是被页描述符结构占用了。c. 函数ioremap_nocache把IO实地址映射成虚地址,一般寄存器空间映射为虚地址都采用此函数d. kmalloc/dma_alloc_c
2013-01-18 19:41:33 402
转载 gamma校正到底是个什么玩意儿
一. 在哪见过、听说过Gamma? * 还用说,Adobe Gamma * 常听说MAC的默认Gamma是1.8,PC的是2.2 * 我的显卡驱动程序里有Gamma调节 * 我下载了一个软件,也可以调节显示器的Gamma * WinDVD播放器带Gamma校正功能 * ACDSEE的曝光调节里可以调Gamma * ACDSEE的选项中有Enable
2013-01-14 10:39:41 2606
转载 signal函数
#include signal.h>void (*signal(int signo, void(*func)(int)))(int)成功返回前一个信号布署,错误返回SIG_ERR。 signal 函数的原型指定函数需要两个参数并返回一个无返回的函数的指针。signal函数的第一个参数,signo是一个整型。第二个参数是一个接受一个整型参数而无返回的函数的指针。signa
2013-01-06 16:54:43 525
原创 ffmpeg 的一些数据结构
libavcodec目录-------用于存放encode/decode模块。libavformat目录------用于存放muxer/demuxer模块。libavutil目录----------用于存放内存操作等模块。>1)数据结构* muxer 对应的数据结构是AVOutputFormat* demuxer 对应的数据结构是AVInputFormat* enc
2012-12-26 15:29:35 602 2
原创 C用宏实现C++继承的特性
#define CLASS(a) typedef strcut a a; \ struct a{#define ENDCLASS(a) a##_FIELDS }; CLASS(Base)#define Base_FIELDS\ int base_value;\ char *base_ptrENDCLASS(Base) CLA
2012-12-23 16:03:16 524
转载 在MinGW下编译ffmpeg
因为需要使用ffmpeg的相关库和执行文件,所以需要编译最新的ffmpeg代码。这里我们使用MinGW。1,安装MinGW下载MinGW,双击安装,我当前使用的版本是20110316的。 添加Windows环境变量: BTW:对于使用Cygwin的朋友,为了不影响cygwin的HOME目录,可以在[C:\MinGW\msys\1.0\msys.bat]文件的最开
2012-12-21 16:55:31 419 1
转载 去交错原理介绍
去交错亦称“反交错”(deinterlacing)是将交错式(即隔行扫描)(interlace)影像讯号转换为渐进式(逐行扫描)(progressive)影像讯号的一种方法。因为装置处理速度以及带宽的限制下,广播电视系统,例如NTSC或是PAL,都是使用交错式讯号取代渐进式讯号。但是现代新型的显示设备例如液晶显示器、等离子显示器、数位投影机或是数位微型反射镜(DLP,数字光处理)等,都只支持逐
2012-12-16 16:10:52 897
转载 sizeof()与strlen() 区别
首先,两者存在本质区别:sizeof()是单目操作符,strlen()是C库函数。原型为:#include size_t strlen(const char *s);size_t sizeof();其次,* strlen()计算字符串的长度不包含结束符('\0'),而sizeof()计算占用字节数的时候包括结束符('\0')。 * s
2012-12-02 21:45:45 292
source insight3.5
2012-12-23
ffmepg 1.0.1 源码
2012-12-23
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人