
Linux内核编程
文章平均质量分 76
xiebiwei
这个作者很懒,什么都没留下…
展开
-
自己动手写操作系统--"Hello, OS world!"
自己动手写操作系统--"Hello, OS world!" 作者:zieckey(zieckey@yahoo.com.cn)1、开发环境与工具开发环境:winxp+sp2必须安装Bochs-2.3,nasm,UltraEdit.下载nasm后,添加nasm所在目录到到path目录,建议直接将nasm放到windows或system32目录,方便从命令行调用.下载地址:http://sourceforge.net/projects/nasm2、准备下载并解压缩bochs后,安装和一般的window转载 2010-11-01 19:24:00 · 548 阅读 · 0 评论 -
Linux设备驱动程序(LDD)中snull的编译问题
学习LDD中网络驱动程序部分,理解snull程序的原理,很有必要。snull不依赖于硬件,数据包的收发都属于内存操作,但对整个网络驱动程序原理已经做了很好的阐述。程序并不复杂,相比e100.c;8139too.c;pci-skeleton.c,容易理解的多。鉴于网上还没有可用的解决办法,故而写此文。作者写这本书的时候尚是2.6.11的年代,与现在内核版本相比,有些接口发生了变化,这是snull编译失败的直接原因。本文将描述snull的修改方法,并指出发生变化的接口。本文在debian6.0上运行通过,内核版原创 2011-02-27 10:15:00 · 6371 阅读 · 3 评论 -
标记化结构初始化语法 在结构体成员前加上小数点 如 “.open .write .close ”C99编译器
<br />今天在看串口驱动(四)的时候 有这样一个结构体初始化 我很不理解 如下:<br />static struct s3c24xx_uart_port s3c24xx_serial_ports[NR_PORTS] = {<br />14 [0] = {<br />15 .port = {<br />16 .lock = SPIN_LOCK_UNLOCKED,<br />17 .iotype = UPIO_MEM,<br />18 .irq = IRQ_S3CUART_R转载 2011-02-14 11:21:00 · 873 阅读 · 0 评论 -
编译Linux内核数
本文是参考了网上多篇帖子而写的算不上什么原创。唯一值得欣慰的只不过在本机上实现罢了。因为毕竟失败了几次。也因为本人是初学驱动编程 很多简单的问题在我来说是相当的困难的。望有识之士不要笑话。最后,希望本文能给刚学驱动而还没开头的人提供一些帮助。 <br /><br />刚看 O'REILLY 写的《LINUX 设备驱动程序》时。作者一再强调在编写驱动程序时必须 建立内核树。所谓内核树,我的理解和网上资料说的一致就是内核源码的一种逻辑形式。那怎么建立呢?为此上网“翻云覆雨”起来而结果却是“惨败而归“。 <br转载 2011-02-20 23:05:00 · 646 阅读 · 1 评论 -
构造内核源码树
编写驱动程序时, 需要内核源码树的支持。内核源码树时从内核源代码编译得到的。下面开始构造内核源代码的步骤。 以Ubuntu为例子 <br /><br />1. 下载内源代码,位置www.kernel.org. (注意:源码树内核的版本要和驱动程序运行的目标平台的内核版本一致)<br />apt-cache search linux-source //搜索内核版本apt-get install linux-source-2.6.22 //下载内核tar xvf linux-转载 2011-02-20 23:08:00 · 2838 阅读 · 0 评论