Linux驱动修炼之道-驱动中一些常见的宏

努力成为linux kernel hacker的人李万鹏原创作品,为梦而战。转载请标明出处

http://doc.xuehai.net/woshixingaaa/archive/2011/06/02/6462065.aspx

本文档讲解一下驱动中常用的宏,下边一个一个来说,先声明我使用的内核是Linux2.6.30.4。

Linux在arch/$(ARCH)/kernel/vmlinux.lds中定义了.init段,当内核启动完毕,这个段中的内存会被释放掉供其他使用,vmlinux.lds部分内容如下:1.2.3.4.5.OUTPUT_ARCH(arm) ENTRY(stext) jiffies = jiffies_64; SECTIONS {

6. . = 0xC0000000 + 0x00008000;

7. .text.head : {

8. _stext = .;

9. _sinittext = .;

10. *(.text.head)

11. }

12. .init : { /* Init code and data */

13. *(.init.text) *(.cpuinit.text) *(.meminit.text)

14. _einittext = .;

15. __proc_info_begin = .;

16. *(http://doc.xuehai.net.init)

17. __proc_info_end = .;

18. __arch_info_begin = .;

19. *(http://doc.xuehai.net.init)

20. __arch_info_end = .;

21. __tagtable_begin = .;

22. *(.taglist.init)

23. __tagtable_end = .;

24. . = ALIGN(16);

25. __setup_start = .;

26. *(.init.setup)

27. __setup_end = .;

28. __early_begin = .;

29. *(.early_param.init)

30. __early_end = .;

31. __initcall_start = .;

32. *(.initcallearly.init) __early_initcall_end = .; *(.initcall0.init) *(.initcall0s.init) *(.initcall1.init) *(.initcObject 93Object 9Object 27Object 100Object 10Object 43Object 94all1s.init) *(.initcall2.init) *(.initcall2s.init) *(.initcall3.init) *(.initcall3s.init) *(.initcall4.init) *(.initcall4s.init) *(.initcall5.init) *(.initcall5s.init) *(.initcallrootfs.init) *(.initcall6.init) *(.initcall6s.init) *(.initcall7.init) *(.initcall7s.init) Object 11Object 49

Object 112Object 111Object 110Object 109Object 108Object 107Object 106Object 105Object 104Object 103Object 102Object 101Object 26Object 25Object 24Object 23Object 22Object 21Object 20Object 19Object 18Object 17Object 16Object 15Object 14Object 13Object 12Object 42Object 41Object 40Object 39Object 38Object 37Object 36Object 35Object 34Object 33Object 32Object 31Object 30Object 29Object 28Object 48Object 47Object 46Object 45Object 44Object 92Object 91Object 90Object 89Object 88Object 87Object 86Object 85Object 84Object 83Object 82Object 81Object 80Object 79Object 78Object 77Object 76Object 75Object 74Object 73Object 72Object 71Object 70Object 69Object 68Object 67Object 66Object 65Object 64Object 63Object 62Object 61Object 60Object 59Object 58Object 57Object 56Object 55Object 54Object 53Object 52Object 51Object 50Object 99Object 98Object 97Object 96Object 95Object 8Object 7Object 6Object 5Object 4Object 3Object 2Object 1

e2200网卡驱动 linux,Linux驱动修炼之道-驱动中一些常见的宏相关推荐

  1. Linux kernel中常见的宏整理

    0x00 宏的基本知识 // object-like #define 宏名 替换列表 换行符 //function-like #define 宏名 ([标识符列表]) 替换列表 换行符 替换列表和标识 ...

  2. 读不完《程序员修炼之道》,至少可以读完这70条

    文章目录 推荐一.领悟程序员的哲学 推荐二.再次阅读,感受颇多 推荐三.一切阅读都是误读 推荐四.程序员升级必备 推荐五.程序员心底的小声音 推荐六.专业人士对<程序员修炼之道>的赞誉 T ...

  3. [读书笔记—程序员]《高效程序员的45个习惯:敏捷开发修炼之道》- 苏帕拉马尼亚姆,亨特

    虽然不记得阅读本书用了多久,但是整理本书的读书笔记用了两个小时的时间,因为本书的大部分内容对于笔者来说都是新知识,很难进行归纳总结 本书所讲的是程序员应具有的工作态度和在团队中作为开发者和领导者具备的 ...

  4. 读书笔记 -《高效程序猿的45个习惯-敏捷开发修炼之道》

    <高效程序猿的45个习惯-敏捷开发修炼之道> 一本2010年出版的书,当时敏捷还仅仅是在国外開始流行,像我这样的菜鸟级根本听都没听过. 这次通读了这本书,受益良多.回想自己的职业生涯,多是 ...

  5. 读书笔记 -《高效程序员的45个习惯-敏捷开发修炼之道》

    <高效程序员的45个习惯-敏捷开发修炼之道> 一本2010年出版的书,当时敏捷还只是在国外开始流行,像我这种菜鸟级根本听都没听过.这次通读了这本书,受益良多,回顾自己的职业生涯,多是漫无目 ...

  6. Linux驱动修炼之道-SPI驱动框架源码分析(上)

    Linux驱动修炼之道-SPI驱动框架源码分析(上)   SPI协议是一种同步的串行数据连接标准,由摩托罗拉公司命名,可工作于全双工模式.相关通讯设备可工作于m/s模式.主设备发起数据帧,允许多个从设 ...

  7. linux网卡驱动rtl8188cu,linux下编译基于rtl8188cu控制芯片的USB无线网卡驱动 -电脑资料...

    本人因为实验的需要,需要在嵌入式linux环境下添加wifi功能,通过在网上调研,选择基于rtl8188cu控制芯片的水星NW150UM无线USB网卡,现简单记录下配置过程, 1.下载最新的rtl81 ...

  8. ac9260网卡linux,#Linux# 在OpenSUSE下安装9260AC驱动

    9260AC是目前性价比非常高的无线驱动模块,支持千兆,蓝牙5.0等等,ngff版价格也只是70块左右,主要用于笔记本上,但是通过PCIE接口转换也可以用在一般台式机的主板上,微魔最近也在自己的台式机 ...

  9. 以太网卡驱动程序移植linux,基于S3C2440的DM9000网卡驱动的移植

    摘  要: 主要研究了基于Linux内核的网卡驱动的移植.Linux网络设备驱动程序的体系结构可以分为4层,首先分析了各层的具体功能实现,并在此基础上充分利用S3C2440开发板完成DM9000网卡驱 ...

最新文章

  1. UWP: ListView 中与滚动有关的两个需求的实现
  2. Android学习笔记之progressBar(进度条)
  3. 最新调查,48%的美国人表示不会乘坐自动驾驶汽车
  4. LOJ6435 PKUSC2018 星际穿越
  5. python和linux哪个难学-“慢”下来的 Python 要怎么竞争?
  6. 方法重写(override)注意事项和使用细节
  7. py获取前端的参数_鹅厂技术说 | 深入理解前端性能监控
  8. windows 编写的硬件驱动_黑科技or大势所趋?谈谈手机GPU驱动升级那点事
  9. 计算机专业毕业设计的进度记录,毕业设计周次进度计划及实际进展情况表.doc...
  10. 全新MVSO影视源码+支持自动采集/超强SEO/自定义苹果CMS接口
  11. mpeg2是信源还是信道编码_hdb3编码到底属于信源编码还是信道编码?
  12. Xilinx FPGA PTP IEEE1588使用
  13. excel连接mysql_使用Excel 通过 ODBC 连接到 MySQL 数据库
  14. 微信商户平台所有产品总结
  15. 计算机桌面背景在哪里调整,电脑中怎么设置桌面背景
  16. CSS基础--absolute与overflow
  17. 北航大学计算机学院新媒体艺术系,本科优秀毕业论文参考-北航新媒体与艺术学院-北京航空航天大学.doc...
  18. WCF技术剖析之十四:泛型数据契约和集合数据契约(上篇)
  19. 查看防火墙状态service iptables status报错
  20. mac上的http请求监控软件

热门文章

  1. 你不得不了解的10款服务器监控工具
  2. kubernetes实战篇之helm示例yaml文件文件详细介绍
  3. 记录一次生产发布事件——(简单的非空验证也能引发大问题)
  4. C# .net 中 Timeout 的处理及遇到的问题
  5. Swagger如何访问Ocelot中带权限验证的API
  6. 使用 InSpec 实现符合性即代码
  7. Web前端知识体系精简
  8. 【ArcGIS遇上Python】ArcGIS Python按照指定字段批量筛选不同类型的图斑(以土地利用数据为例)
  9. C语言试题四十六之将m行n列的二维数组中的字符数据,按列的顺序依次放到一个字符串中。
  10. linux shell之把文本里面的;替换成\n格式输出