摘要: 在驱动程序编写过程中,很少会注意到IO Port和IO Mem的区别。虽然使用一些不符合规范的代码可以达到最终目的,这是极其不推荐使用的。结合下图,我们彻底讲述IO端口和IO内存以及内存之间的关系。主存16M字节的SDRAM,外设是个视频采集卡,上面有16M字节的SDRAM作为缓冲区。1.CPU是i... 阅读全文
posted @ 2014-09-24 14:32 圣哥 阅读(216) 评论(0) 推荐(0) 编辑
摘要: 在阅读协议栈代码(内核版本2.6.38),在很多地方都看到panic调用,只是知道大体功能,从未具体分析过,也一直想把协议栈的分析过程写下来,很懒,就一有写,算今天是个开始吧。分析panic太艰难啦,涉及的东西太多啦。/***panic - halt the system*@fmt: The te... 阅读全文
posted @ 2014-09-24 13:46 圣哥 阅读(2153) 评论(1) 推荐(0) 编辑
摘要: 在阅读Linux内核源码或对代码做性能优化时,经常会有在C语言中嵌入一段汇编代码的需求,这种嵌入汇编在CS术语上叫做inline assembly。本文的笔记试图说明Inline Assembly的基本语法规则和用法(建议英文阅读能力较强的同学直接阅读本文参考资料中推荐的技术文章 ^_^)。 注... 阅读全文
posted @ 2014-09-24 10:43 圣哥 阅读(173) 评论(0) 推荐(0) 编辑