LDD3 源代码编译 和 目录结构

5446阅读 1评论2012-09-28 时间看来
分类:嵌入式

LDD3's README,edit by CJW.
在学习LDD3的时候感到比较吃力。
配套的源码有助于学习。于是问题来了:

1)源码的编译问题:
a.要放在内核树里经行编译。树立用到的是2.6.10版本。开始我直接执行make命令,可是提示找不到编译规则。
b.由内核版本产生的编译问题:

编译LDD第三版中scullc代码时遇到的问题及解决方法
http://blog.csdn.net/silvervi/article/details/6459994

2)源码的各个目录的含义,对应书的哪些章节?
可惜里面没有README。不过好好看书后,对各个目录就熟悉一些。
可是我不

[@localhost]$ tree
.
|-- LICENSE
|-- Makefile
|-- include
|   `-- lddbus.h    示例代码中,#include "lddbus.h"。
|-- lddbus
|   |-- Makefile
|   `-- lddbus.c    CHAPTER_14.4:虚拟总线实现
|-- misc-modules
|   |-- Makefile
|   |-- complete.c    CHAPTER_5.4. Completions 机制
|   |-- faulty.c    CHAPTER_4.5.1. oops 消息
|   |-- hello.c        CHAPTER_2.2:超级用户可以加载和卸载模块示例。
|   |-- hellop.c    CHAPTER_2.8. 模块参数
|   |-- jiq.c        CHAPTER_7.6.1. 共享队列
|   |-- jit.c        CHAPTER_7.4.1. 定时器 API
|   |-- kdataalign.c    CHAPTER_11.4.4. 数据对齐展示编译器如何强制对齐
|   |-- kdatasize.c    CHAPTER_11.1:标准 C 类型的使用。显示长整型和指针在 64-位 平台   
                上的不同大小。
|   |-- seq.c        CHAPTER_4.3.1.4. seq_file 接口
|   |-- silly.c        CHAPTER_9.4.5. 在 1 MB 之下的 ISA 内存
|   `-- sleepy.c    CHAPTER_6.2.2. 简单睡眠
|-- misc-progs
|   |-- Makefile
|   |-- asynctest.c    CHAPTER_6.4. 异步通知
|   |-- dataalign    CHAPTER_11.4.4. 数据对齐展示编译器如何强制对齐
|   |-- dataalign.c    CHAPTER_11.4.4. 数据对齐展示编译器如何强制对齐
|   |-- datasize    CHAPTER_11.1:标准 C 类型的使用。
|   |-- datasize.c    CHAPTER_11.1:标准 C 类型的使用。
|   |-- gdbline        CHAPTER_4.6.1. 使用 gdb。为给定的模块可以创建这个命令
|   |-- inp        CHAPTER_9.2.3. 从用户空间的 I/O 存取。从命令行读写端口的小工具,
                在用户空间.
|   |-- inp.c
|   |-- load50        CHAPTER_7.3.1.1. 忙等待。这个程序派生出许多什么都不做的进程, 但   
                是以一种 CPU-密集的方式来做.
|   |-- load50.c
|   |-- mapcmp        Simple program to compare two mmap'd areas.
|   |-- mapcmp.c
|   |-- mapper        CHAPTER_15.2.6. 重新映射 RAM
|   |-- mapper.c
|   |-- nbtest        CHAPTER_6.2.6. 测试 scullpipe 驱动
|   |-- nbtest.c
|   |-- netifdebug    CHAPTER_17.3.3. 接口信息
|   |-- netifdebug.c
|   |-- outp        CHAPTER_9.2.3. 从用户空间的 I/O 存取。从命令行读写端口的小工具,
                在用户空间.
|   |-- outp.c
|   |-- polltest    Test out reading with poll()
|   |-- polltest.c
|   |-- setconsole    CHAPTER_4.2.2. 重定向控制台消息
|   |-- setconsole.c
|   |-- setlevel    CHAPTER_4.2.1. printk
|   `-- setlevel.c
|-- pci
|   |-- Makefile
|   `-- pci_skel.c    CHAPTER_12.1.5. 注册一个 PCI 驱动
|-- sbull
|   |-- Makefile
|   |-- sbull.c        CHAPTER_16.1. 注册
|   |-- sbull.h
|   |-- sbull_load
|   `-- sbull_unload
|-- scull        CHAPTER_3. 字符驱动。scull( Simple Character Utility for    
                Loading Localities)
|   |-- Makefile
|   |-- access.c
|   |-- main.c
|   |-- main.c.bak
|   |-- pipe.c
|   |-- pipe.c.bak
|   |-- scull.h
|   |-- scull.init
|   |-- scull_load
|   `-- scull_unload
|-- scullc        CHAPTER_8.2.1. 一个基于 Slab 缓存的 scull: scullc
|   |-- Makefile
|   |-- main.c
|   |-- mmap.c
|   |-- scullc.h
|   |-- scullc_load
|   `-- scullc_unload
|-- sculld        CHAPTER_14.4.2.3. 设备结构嵌入
|   |-- Makefile
|   |-- main.c
|   |-- mmap.c
|   |-- sculld.h
|   |-- sculld_load
|   `-- sculld_unload
|-- scullp        CHAPTER_8.3.1. 一个使用整页的 scull: scullp
|   |-- Makefile
|   |-- main.c
|   |-- mmap.c
|   |-- scullp.h
|   |-- scullp_load
|   `-- scullp_unload
|-- scullv        CHAPTER_15.2.7. 重映射内核虚拟地址
|   |-- Makefile
|   |-- main.c
|   |-- mmap.c
|   |-- scullv.h
|   |-- scullv_load
|   `-- scullv_unload
|-- short        CHAPTER_10.2.4. 实现一个处理    (中断)
|   |-- Makefile
|   |-- short.c
|   |-- short_load
|   `-- short_unload
|-- shortprint        CHAPTER_10.5.1. 一个写缓存例子
|   |-- Makefile
|   |-- shortprint.c
|   |-- shortprint.h
|   |-- shortprint_load
|   `-- shortprint_unload
|-- simple        CHAPTER_15.2. mmap 设备操作。simple( Simple Implementation    
            Mapping Pages with Little Enthusiasm)
|   |-- Makefile
|   |-- simple.c
|   |-- simple_load
|   `-- simple_unload
|-- skull        LDD2:skull.c对ISAI/O的内存探测分析
|   |-- Makefile
|   |-- skull_clean.c
|   `-- skull_init.c
|-- snull        CHAPTER_17.2. 连接到内核
|   |-- Makefile
|   |-- snull.c
|   |-- snull.h
|   |-- snull_load
|   `-- snull_unload
|-- tty            CHAPTER_18. TTY 驱动
|   |-- Makefile
|   |-- tiny_serial.c
|   `-- tiny_tty.c
`-- usb            CHAPTER_13. USB 驱动
    |-- Makefile
    `-- usb-skeleton.c

18 directories, 111 files

上一篇:设计模式之一雨田示例
下一篇:LDD3 推荐学习笔记——Tekkaman的

文章评论