发布时间:2013-01-11 19:53:05
S3C2410内置LCD控制器详解 转自:http://blog.chinaunix.net/u2/89569/showart_1795235.html 一块LCD屏显示图像,不但需要LCD驱动器,还需要有相应的LCD控制器。通常LCD驱动器会以COF/COG的形式与LCD 玻璃基板制做在一起,而LCD控制器则有外部电路来实现。而S3C2410内部已经集成了LCD控制器,因此可以很方便地去控制各种类型的LCD屏,例如:STN和TFT屏。由于TFT屏将是今后应用的主流,因此接下来,重点围绕TFT屏的控制来进行。S3C2410 LCD控制器的特性:STN屏-支持3种扫描方式:4bit单扫、4位......【阅读全文】
发布时间:2013-01-11 19:39:53
1. Ethernet帧(除去上层负载后长度为18字节) 以太帧有好多种,我们最常用到的是Ethernet II Ethernet II即DIX 2.0:Xerox与DEC、Intel在1982年制定的以太网标准帧格式。Cisco名称为:ARPA Ethernet II类型以太网帧的最小长度为64字节(6+6+2+46+4),最大长度为1518字节(6+6+2+1500+4)。其中前12字节分别标识出发送数据帧的源节点MAC地址和接收数据帧的目标节点MAC地址。(注:ISL封装后可达1548字节,802.1Q封装后可达1522字节) 接下来的2个......【阅读全文】
发布时间:2013-01-07 08:59:22
C99引入一个新关键字inline,用于定义inline function,这种用法在内核代码中很常见。其用法总结如下:1.保证函数无副作用时使用,即无全局或静态变量。2.代码要足够短,逻辑够简单。3.系统内没有过多的内联函数。eg: inline int max(int a,int b){return a>b?a:b;}内联函数与宏的区别:1.宏展开是在预处理发生的,而inline 函数在编译时发生2.inline函数是一种函数,会严格进行参数类型检查,因此可以避免宏的一些负作用3.inline函数不能有过于复杂的语句,而宏无此要求4.inline函数不能......【阅读全文】
发布时间:2013-01-07 08:55:52
LRU是最近最少使用算法。一般内存管理的时候采用LRU算法可以提高性能。 将cache缓存块位置用LRU双向链表链接起来,将新加入的块直接放到链表的头,当一个块被命中后,把该块调整到链表的头,这样经过多次操作之后,最近被命中过的块就会向链表头部移动,而没有被命中的内容会向链表尾部移动,需要替换时,就直接从链表尾部替换即可。新的内容直接插入链表头部,这样就实现了LRU的思想。 算法中维护了一个freelist,用于管理空闲块的位置,每次需要插入新的内容时,就从freelist里面获取一个空闲块,将新内容复制,然后插入到链表头部;删除时就从链表尾部删除结点,然后更新到freelist里;查找......【阅读全文】