chinaUnix中的linux源代码学习

2023-11-06

原文地址: http://bbs.chinaunix.net/thread-1930079-1-1.html
大家好:

内核源码版对本版块的精华帖进行了分类汇总。所有的精华帖分为十大类。
各个分类的精华帖相关信息分布在该贴2~11楼。每个分类各占1楼,均可从下面分类列表点击进入
1. 内核学习方法,编译、调试等常见问题

1.1 关于编译升级内核到2.6.0的一些问题 作者:ommm
         http://linux.chinaunix.net/bbs/thread-281831-1-5.html
1.2 VMWare Workstation 6.0调试Linux Kernel,竟如此方便 作者:albcamus
         http://linux.chinaunix.net/bbs/thread-896214-1-5.html
1.3 基于S3C2410的Linux全线移植文档 作者:dozec
         http://linux.chinaunix.net/bbs/thread-798304-1-6.html
1.4 【原创】《Linker Script in Linux》 作者: zx_wing
         http://linux.chinaunix.net/bbs/viewthread.php?tid=1032711
1.5 月经结贴 -- 《Segmentation Fault in Linux》 作者: zx_wing
         http://linux.chinaunix.net/bbs/thread-1149936-1-19.html
1.6 【译】linux-2.6.31内核文档系列 作者:openspace
         http://linux.chinaunix.net/bbs/thread-1149917-1-23.html
1.7 Solaris、Linux和FreeBSD的内核比较 作者:compnik
         http://linux.chinaunix.net/bbs/thread-783940-1-24.html
1.8 定位Oops的具体代码行 作者:albcamus
         http://linux.chinaunix.net/bbs/thread-1008573-1-25.html
1.9 调试KERNEL时,找出当前进程信息的方法 作者:accessory 
         http://linux.chinaunix.net/bbs/thread-1147973-1-36.html
1.10 Linux内核配置文档!!!(make menuconfig)  作者:HopeCao 
         http://linux.chinaunix.net/bbs/thread-16106-1-58.html
1.11 Git 中文教程 作者:swanrobin 
         http://linux.chinaunix.net/bbs/thread-724949-1-79.html
1.12 怎样为Linux内核打补丁 作者:jeffshia 
         http://linux.chinaunix.net/bbs/thread-811431-1-87.html
1.13 2.6 内核中宏定义 #define DEFINE(sym, val)的问题 ? 作者:kimyoung 
         http://linux.chinaunix.net/bbs/thread-702373-1-94.html
1.14 Linux内核中的红黑树 作者:Godbach 
         http://linux.chinaunix.net/bbs/thread-1055772-1-94.html
1.15 Linux内核解读入门 作者:小皮 
         http://linux.chinaunix.net/bbs/thread-85340-1-99.html
1.16 Linux汇编语言开发指南(zt)  作者:mmgg00 
         http://linux.chinaunix.net/bbs/thread-508038-1-99.html
1.17 Netconsole实例源代码分析 作者:dreamice 
         http://linux.chinaunix.net/bbs/thread-1047519-1-105.html
1.20 使用git参与kernel开发 作者:albcamus 
         http://linux.chinaunix.net/bbs/thread-920610-1-109.html
1.21  http://lwn.net/Articles/2.6-kernel-api/ 的翻译  作者:co63 
         http://linux.chinaunix.net/bbs/thread-1040681-1-113.html
1.22  linux情景分析非扫描带书签版本 作者:onlyflyer 
         http://linux.chinaunix.net/bbs/thread-1016938-1-123.html
1.23 kallsyms的分析  作者:qtdszws
         http://linux.chinaunix.net/bbs/thread-1013999-1-135.html
1.24 【求助】关于inb和inw的疑问 作者:njngypp 
         http://linux.chinaunix.net/bbs/thread-992279-1-147.html
1.25 绝对精品--linux 内核代码构架图  作者:achlice 
         http://linux.chinaunix.net/bbs/thread-983931-1-153.html
1.26 [转贴]用tags/cscope看内核源代码-HOWTO  作者:leviathan.alan 
         http://linux.chinaunix.net/bbs/thread-719390-1-153.html
1.27 linux-2.6内核升级文档(全)  作者:killua 
         http://linux.chinaunix.net/bbs/thread-484867-1-155.html
1.28 请教一个扩展汇编的问题  作者:flw2 
         http://linux.chinaunix.net/bbs/thread-901464-1-169.html
1.29 前段时间arch/i386/kernel/head.S注解 作者:alasijiabandao 
         http://linux.chinaunix.net/bbs/thread-909584-1-177.html
1.30 ud2是什么指令?  作者:netentsec 
         http://linux.chinaunix.net/bbs/thread-901519-1-191.html
1.31 使用GDB与QEMU调试内核时的问题分析  作者:mingyanguo 
         http://linux.chinaunix.net/bbs/thread-702878-1-200.html
1.32 什么是module 以及如何写一个module(转)  作者:我菜我怕谁 
         http://linux.chinaunix.net/bbs/thread-612522-1-207.html
1.33 用netconsole从网络上收集Kernel Panic信息详细方法  作者:Jobs.AE@
         http://linux.chinaunix.net/bbs/thread-811116-1-225.html
1.34 升级2.6内核的经验与心得 作者:vikingpro 

        http://linux.chinaunix.net/bbs/thread-251091-1-260.html

2. 进程管理与进程间通信、模块间通信等

2.1 内核通知链 学习笔记 作者:scutan
    http://linux.chinaunix.net/bbs/thread-1051266-1-2.html
2.2 使用netlink通讯时需要注意的一些问题 作者:duanjigang
    http://linux.chinaunix.net/bbs/thread-1144547-1-9.html
2.3 工作队列分析 作者: rwen2012
    http://linux.chinaunix.net/bbs/thread-882951-1-15.html
2.4 [原创]QEMU小实验:手工遍历所有进程的方法 作者:accessory
    http://linux.chinaunix.net/bbs/thread-1155784-1-16.html
2.5 用户空间内核空间ipc总结(sockopt,ioctl,mmap,netlink,proc,seq,file,copy_user) 作者:ubuntuer
    http://linux.chinaunix.net/bbs/thread-1154038-1-23.html
2.6 netlink socket 编程之 why & how  作者:duanjigang 
    http://linux.chinaunix.net/bbs/thread-1031932-1-39.html
2.7 linux2.6.29 swtich_to 详细分析(一)  作者:liujunwei1234 
    http://linux.chinaunix.net/bbs/thread-1099177-1-57.html
2.8  Linux 用户态与内核态的交互——netlink 篇  作者:独孤九贱
    http://linux.chinaunix.net/bbs/thread-822500-1-60.html
2.9 基于NETLINK的内核与用户空间共享内存的实现 作者:bripengandre 
    http://linux.chinaunix.net/bbs/thread-1113929-1-63.html
2.10 内核源码kfifo分析(原创) 作者:springtty
    http://linux.chinaunix.net/bbs/thread-1089313-1-74.html
2.11 Unreliable Guide to Locking -by Rusty Russell-中文版 作者:albcamus
    http://linux.chinaunix.net/bbs/thread-656347-1-79.html
2.12 完全公平调度(CFS) 作者:wxc200 
    http://linux.chinaunix.net/bbs/thread-1063798-1-90.html
2.13 Linux 2.4 内核说明文档(进程与中断管理篇)  作者:xuediao 
    http://linux.chinaunix.net/bbs/thread-571760-1-127.html
2.14 写了一个内核模块 实现简单的类似ps命令.  作者:mq110 
    http://linux.chinaunix.net/bbs/thread-653764-1-130.html
2.15 PAE机制分析 作者:vestige 
    http://linux.chinaunix.net/bbs/thread-986982-1-149.html
2.16 Linux2.6内核进程创建过程分析 作者:scriptkidz
    http://linux.chinaunix.net/bbs/thread-912485-1-172.html
2.17  [转贴]用户态和内核共享内存--最简单的例子  作者:leviathan.alan 
    http://linux.chinaunix.net/bbs/thread-719393-1-183.html
2.18 Linux 调度的科普文章 作者:raise_sail 
    http://linux.chinaunix.net/bbs/thread-903481-1-186.html
2.19 linux 2.4内核之信号(一) 作者:yjfpb04 
    http://linux.chinaunix.net/bbs/thread-900690-1-191.html

3. 内存管理及地址相关

3.1 Linux内存管理大图(第三稿) 作者:Aryang
        http://linux.chinaunix.net/bbs/thread-1043740-1-1.html
3.2 我理解的逻辑地址、线性地址、物理地址和虚拟地址(补充完整了)  作者:独孤九贱
        http://linux.chinaunix.net/bbs/thread-919019-1-6.html
3.3 发个简单(易用)的内存池 作者:duanjigang
        http://linux.chinaunix.net/bbs/thread-1153205-1-20.html
3.4 Linux内存:内存管理的实质 作者:frank_seng
        http://linux.chinaunix.net/bbs/thread-1003872-1-21.html
3.5 查找X86_64下内核代码段物理地址的方法 作者:accessory
        http://linux.chinaunix.net/bbs/thread-1151780-1-26.html
3.6 linux内存管理报告 作者:kendyke
        http://linux.chinaunix.net/bbs/thread-1145231-1-35.html
3.7 [推荐] LKML上一篇关于barrier文档草案的讨论  作者:xiaozhaoz 
        http://linux.chinaunix.net/bbs/thread-713279-1-44.html
3.8 还是不理解IOMMU、北桥、PCI的MMIO和ioremap  作者:epegasus 
        http://linux.chinaunix.net/bbs/thread-985872-1-50.html
3.9 求助:将用户空间的虚拟地址映射到内核态的逻辑地址。 作者:onlyflyer 
        http://linux.chinaunix.net/bbs/thread-885038-1-80.html
3.10 VMALLOC_RESERVE 和 896M  作者:思一克 
        http://linux.chinaunix.net/bbs/thread-690010-1-80.html
3.11 对Linux堆内存释放的总结  作者:snow_insky
        http://linux.chinaunix.net/bbs/thread-677609-1-82.html
3.12 请问完全内存虚拟化处理缺页异常的流程是什么? 作者:kikanjuu 
        http://linux.chinaunix.net/bbs/thread-978835-1-88.html
3.13 Linux 内核中Demand paging 与swap机制的源码分析 作者:crosskernel 
        http://linux.chinaunix.net/bbs/thread-1060602-1-93.html
3.14 Linux sys_exec中可执行文件映射的建立及读取  作者:frank_seng 
        http://linux.chinaunix.net/bbs/thread-1000474-1-116.html
3.15 请教大家一个mmap的问题  作者:blossom007cn 
        http://linux.chinaunix.net/bbs/thread-900802-1-191.html
3.16 映射的冲突 作者:qtdszws
        http://linux.chinaunix.net/bbs/thread-901328-1-190.html
3.17 Linux Memory Management or 'Why is there no free RAM?'  作者:snow_insky 
        http://linux.chinaunix.net/bbs/thread-686942-1-209.html
3.18 一个cache相关的问题 作者:duanius

4. 中断相关

4.1 《Interrupt in Linux(硬件篇)》(1楼有更新 2008.5.3) 作者:zw_wing
        http://linux.chinaunix.net/bbs/thread-996409-1-23.html
4.2 [保留] 关于LINUX在中断(硬软)中不能睡眠的真正原因 作者:思一克 
        http://linux.chinaunix.net/bbs/thread-902033-1-38.html
4.3 2.6.10的中断处理分析 作者:normalnotebook 
        http://linux.chinaunix.net/bbs/thread-685702-1-126.html
4.4 请问如果在中断上下文中调用可能引起阻塞的代码到底会怎么样?  作者:dengcainiao 
        http://linux.chinaunix.net/bbs/thread-802655-1-256.html

5. 文件系统方面

5.1 内核模块中对文件的读写 作者:ubuntuer
        http://linux.chinaunix.net/bbs/thread-1148680-1-7.html
5.2 一个简单文件系统的实现 作者:goter
        http://linux.chinaunix.net/bbs/thread-1113528-1-23.html
5.3 最近看vfs部分,写了个笔记,大家看看.(37 ~ 39 楼更新了mount 文件系统部分) 作者:xpl
        http://linux.chinaunix.net/bbs/thread-1005219-1-27.html
5.4 何把内核中的信息打印到文件 作者:xiaozhe2000 
        http://linux.chinaunix.net/bbs/thread-738197-1-112.html
5.5 2.4.18预读算法详解 作者:taoistf 
        http://linux.chinaunix.net/bbs/thread-1029156-1-122.html
5.6 [转] Dr.Wu 的博士论文: linux内核中的预取算法 作者:albcamus
        http://linux.chinaunix.net/bbs/thread-1029420-1-122.html
5.7 UNIX传统文件系统s5fs的实现  作者:xzh2002 
        http://linux.chinaunix.net/bbs/thread-13214-1-171.html
5.8 nfs权限  作者:zhaixinshe 
        http://linux.chinaunix.net/bbs/thread-557038-1-174.html

6. 网络协议栈方面

6.1 基于2.6.20版本的《Linux内核源码剖析--TCP/IP实现》【样章01 02 03 22 30】 作者:lmarsin
        http://linux.chinaunix.net/bbs/thread-1157659-1-1.html
6.2 [出版]--基于2.6.26内核的《追踪LINUX TCP/IP代码运行》 作者:qinjiana0786
        http://linux.chinaunix.net/bbs/thread-1064374-1-2.html
6.3 PF_RING实现分析 作者:独孤九贱
        http://linux.chinaunix.net/bbs/thread-1149919-1-5.html
6.4 Netfilter 连接跟踪与状态检测的实现 作者:独孤九贱
        http://linux.chinaunix.net/bbs/thread-815129-1-9.html
6.5 Netfilter之连接跟踪实现机制初步分析 作者:Minit
        http://linux.chinaunix.net/bbs/thread-1057483-1-9.html
6.6 教你修改以及重构skb 作者:ubuntuer
        http://linux.chinaunix.net/bbs/thread-1152885-1-10.html
6.7 共享RFC集合,linux网络源码伴侣 作者:lmarsin
        http://linux.chinaunix.net/bbs/thread-1159286-1-11.html
6.8 关于ptype_all和pypte_base中的pt_prev的说明[转] 作者:Godbach
        http://linux.chinaunix.net/bbs/thread-1160785-1-12.html
6.9 Linux内核IP Queue机制的分析(三)——ip_queue内核模块的分析 作者:Godbach
        http://linux.chinaunix.net/bbs/thread-1152070-1-17.html
6.10 udp数据报从网卡驱动到用户空间流程总结 作者:peimichael 
        http://linux.chinaunix.net/bbs/thread-1133017-1-38.html
6.11 Linux内核发送构造数据包的方式 作者:Godbach 
        http://linux.chinaunix.net/bbs/thread-1133084-1-42.html
6.12 Netfilter CONNMARK用法及分析(二)-- 内核代码分析 作者:godbach 
        http://linux.chinaunix.net/bbs/thread-1142069-1-44.html
6.13 [保留] 2.6内核数据包接收流程分析  作者:瀚海书香 
        http://linux.chinaunix.net/bbs/thread-1132965-1-45.html
6.14 敬告:已完成--基于LINUX内核中的TCP/IP的核心过程分析 作者:qinjiana0786
        http://linux.chinaunix.net/bbs/thread-1049757-1-64.html
6.15 Netfilter 地址转换的实现 作者:独孤九贱
        http://linux.chinaunix.net/bbs/thread-886488-1-71.html
6.16 [原]Netfilter实现机制分析 作者:Minit 
        http://linux.chinaunix.net/bbs/thread-1054981-1-78.html
6.17 Linux内核IP Queue机制的分析(二)——用户态处理并回传数据包 作者:Godbach
        http://linux.chinaunix.net/bbs/thread-1063004-1-82.html
6.18 网络子系统在链路层的收发过程剖析 作者:rwen2012
        http://linux.chinaunix.net/bbs/thread-886985-1-87.html
6.19 Netfilter源码分析-我来抛砖,望能引玉 作者:独孤九贱
        http://linux.chinaunix.net/bbs/thread-670248-1-87.html
6.20 Hacking the Linux Kernel Network Stack(译本) 作者: duanjigang 
        http://linux.chinaunix.net/bbs/thread-758787-1-91.html
6.21 skbuff解释 - [转贴自CLF,作者:wheelz]  作者:leviathan.alan 
        http://linux.chinaunix.net/bbs/thread-776678-1-124.html
6.22 如何让 linux 包转发达到 40万pps,尝试中! 作者:sbyond 
        http://linux.chinaunix.net/bbs/thread-641802-1-142.html
6.23 我自己分析内核tc的一点心得  作者:qtdszws
        http://linux.chinaunix.net/bbs/thread-854814-1-145.html
6.24 网络代码学习第二部分:网络子系统在IP层的收发过程剖析  作者:rwen2012
        http://linux.chinaunix.net/bbs/thread-888336-1-150.html
6.25 Netfliter状态跟踪之动态协议的实现浅析(tftp实现)  作者:独孤九贱
        http://linux.chinaunix.net/bbs/thread-841944-1-160.html
6.26 内核netfilter处理问题(暨packet接受与NAPI介绍)  作者:guotie 
        http://linux.chinaunix.net/bbs/thread-684828-1-200.html

7. CPU与多核方面

7.1 关于LINUX上中断在各个CPU之间的负载平衡问题 作者:思一克
        http://linux.chinaunix.net/bbs/thread-902244-1-3.html
7.2 在多核系统上网络数据转发实验和一点思考 作者:独孤九贱
        http://linux.chinaunix.net/bbs/thread-1112413-1-3.html
7.3 关于 atomic 的话题 作者:mik 
        http://linux.chinaunix.net/bbs/thread-1145097-1-40.html
7.4 关于AMD TLB bug  作者:crspo 
        http://linux.chinaunix.net/bbs/thread-984846-1-153.html

8. 硬件相关与设备驱动

8.1  [原创] 写一个块设备驱动 作者:OstrichFly
        http://linux.chinaunix.net/bbs/thread-1045283-1-2.html
8.2 LINUX下USB1.1设备学习小记(更新完毕) 作者:superfight
        http://linux.chinaunix.net/bbs/thread-1067271-1-2.html
8.3 请教个网卡驱动的问题 作者:VIP_fuck
        http://linux.chinaunix.net/bbs/thread-1158886-1-11.html
8.4 个人对kobject的一点研究 作者:superfight
        http://linux.chinaunix.net/bbs/thread-1058833-1-12.html
8.5 RTL8139网卡驱动程序分析[转] 作者:Godbach
        http://linux.chinaunix.net/bbs/thread-1095257-1-14.html
8.6 Linux那些事儿之我是USB Core——PDF下载 作者:ilttv.cn
        http://linux.chinaunix.net/bbs/thread-913310-1-14.html
8.7 【原】Linux-千兆网卡驱动实现机制浅析 作者:Minit
        http://linux.chinaunix.net/bbs/thread-1094725-1-17.html
8.8 利用udev在/dev下动态生成/移除设备文件 作者:albcamus
        http://linux.chinaunix.net/bbs/thread-892777-1-18.html
8.9 ACPI in Linux - Myths vs. Reality 中文版 作者:albcamus 
        http://linux.chinaunix.net/bbs/thread-903433-1-24.html
8.10 Intel-E100网卡驱动实例分析 作者:lenn
        http://linux.chinaunix.net/bbs/thread-690741-1-24.html
8.11 说一说:关于数据传送中 address bus 的工作原理 作者:mik
        http://linux.chinaunix.net/bbs/thread-1145254-1-39.html
8.12 有谁对网卡DMA有所了解 作者:duanius 
        http://linux.chinaunix.net/bbs/thread-983479-1-49.html
8.13 [转] linux那些事儿之我是HUB - PDF文件 作者:albcamus
        http://linux.chinaunix.net/bbs/thread-912798-1-57.html
8.14 网卡驱动注册到PCI总线这一过程的分析 作者: scutan 
        http://linux.chinaunix.net/bbs/thread-1052717-1-59.html
8.15 PCI驱动的suspend/resume方法,在何时调用? 作者:albcamus 
        http://linux.chinaunix.net/bbs/thread-984759-1-65.html
8.16 请教e1000中DMA传输的问题  作者:tqkangkang 
        http://linux.chinaunix.net/bbs/thread-896596-1-71.html
8.17 改写drivers/net/8139too.c 作者:xiongce 
        http://linux.chinaunix.net/bbs/thread-895246-1-72.html
8.18 字符设备驱动 架构分析 作者:xpl 
        http://linux.chinaunix.net/bbs/thread-1027719-1-82.html
8.19 看块设备驱动部分的笔记  作者:xpl 
        http://linux.chinaunix.net/bbs/thread-1008997-1-113.html
8.20 关于iptables中ip_conntrack_max和hash表的关系及调整  作者:NetDC 
        http://linux.chinaunix.net/bbs/thread-596067-1-150.html
8.21 pci_dma_sync_single_for_cpu到底同步的是什么?  作者:smalloc 
        http://linux.chinaunix.net/bbs/thread-987061-1-151.html
8.22 关于ROM BIOS的启动问题 作者:daidongly 
        http://linux.chinaunix.net/bbs/thread-979127-1-153.html
8.23 最近在学习2.6的device model,写了篇学习文档,分享给大家  作者:semiyd 
        http://linux.chinaunix.net/bbs/thread-905104-1-162.html
8.24 Linux那些事儿之我是U盘 提供pdf格式下载 作者:冷月葬花魂 
        http://linux.chinaunix.net/bbs/thread-905580-1-169.html
8.25 [转一好文]从 2.4 到 2.6:Linux 内核可装载模块机制的改变对设备驱动的影响 作者:albcamus
        http://linux.chinaunix.net/bbs/thread-700366-1-177.html
8.26 硬盘扇区的读写函数及其调用路径 作者:思一克 
        http://linux.chinaunix.net/bbs/thread-718919-1-197.html

9. 安全相关

9.1 使用 netfilter/iptables 为 Linux(内核 2.4.x )配置防火墙 作者:轩辕砍刀
        http://linux.chinaunix.net/bbs/thread-63898-1-3.html
9.2 使用kprobes,截获execve系统调用 作者:albcamus
        http://linux.chinaunix.net/bbs/thread-909712-1-8.html
9.3 Adore-ng-0.56源码分析 作者:ubuntuer
        http://linux.chinaunix.net/bbs/thread-1138561-1-8.html
9.4 突破linux内核模块验证 作者:W.Z.T
        http://linux.chinaunix.net/bbs/thread-1150719-1-15.html
9.5 【iptables交流贴】iptables执行的流程分析 作者:Godbach
        http://linux.chinaunix.net/bbs/thread-1022438-1-16.html
9.6 剖析一个由sendfile引发的linux内核BUG 作者:kouu
        http://linux.chinaunix.net/bbs/thread-1153577-1-16.html
9.7 Linux堆栈溢出的经典问题,欢迎围观!大牛前进 作者:GoldenSoldier
        http://linux.chinaunix.net/bbs/thread-1145802-1-19.html
9.8 [欢迎进入讨论] 关于syn-proxy的一些问题 作者:Godbach
        http://linux.chinaunix.net/bbs/thread-1065143-1-21.html
9.9 新爆内核高危漏洞sock_sendpage的利用分析的讨论 作者: 独孤九贱
        http://linux.chinaunix.net/bbs/thread-1130648-1-21.html
9.10 Linux下实现劫持系统调用的总结 作者:Godbach
        http://linux.chinaunix.net/bbs/thread-1147025-1-23.html
9.11 Snort 入侵检测系统源码分析 作者:Godbach  原创作者:独孤九贱
        http://linux.chinaunix.net/bbs/thread-1122507-1-23.html
9.12 呵呵,我也凑个热闹,转发一个原来写的 iptables 版 DNS 匹配模块 作者:platinum
        http://linux.chinaunix.net/bbs/thread-1149676-1-25.html
9.13 netlink+netfilter+BloomFilter内核态过滤URL  作者:ubuntuer 
        http://linux.chinaunix.net/bbs/thread-1149519-1-34.html
9.14 共享:linux arp 欺骗程序 作者:wojiaohesen 
        http://linux.chinaunix.net/bbs/thread-1134584-1-35.html
9.15 劫持函数调用 作者:ubuntuer 
        http://linux.chinaunix.net/bbs/thread-1148600-1-36.html
9.16 [原创]关于劫持系统调用隐藏进程的一些心得 作者:g84ch 
        http://linux.chinaunix.net/bbs/thread-1135859-1-38.html
9.17 Linux内核的加密函数框架 作者:richardhesidu 
        http://linux.chinaunix.net/bbs/thread-1098120-1-56.html
9.18 Linux-Netfilter&iptables实现机制的分析及应用 作者:Minit 
        http://linux.chinaunix.net/bbs/thread-1117331-1-59.html
9.19 iptables 源码分析  作者:独孤九贱
        http://linux.chinaunix.net/bbs/thread-663849-1-93.html
9.20 get system call table in x86-64 Linux - 欢迎测试并报BUG  作者:albcamus
        http://linux.chinaunix.net/bbs/thread-885248-1-100.html

10. 内核其它问题

10.1 学习linux内核时,模仿linux编写的操作系统 作者:lmarsin
        http://linux.chinaunix.net/bbs/thread-1160442-1-1.html
10.2 Linux 内核初始化的宏实现简析 作者:独孤九贱
        http://linux.chinaunix.net/bbs/thread-1157563-1-5.html 
10.3 放出 mouseOS 0.01 预览版 作者:mik
        http://linux.chinaunix.net/bbs/thread-1160253-1-5.html
10.4 摩托罗拉E380/海尔N60/夏新E600/philips968等手机系统分析 作者:wheel
        http://linux.chinaunix.net/bbs/thread-866379-1-21.html
10.5 深入理解Linux内核第三版 明显的错误 作者:wuqing
        http://linux.chinaunix.net/bbs/thread-914783-1-27.html
10.6 insmod源码分析-part1 作者: wuhui_zsu
        http://linux.chinaunix.net/bbs/thread-679405-1-28.html
10.7 arm linux kernel 从入口到start_kernel 的代码分析 作者:xpl 
        http://linux.chinaunix.net/bbs/thread-1021226-1-60.html
10.8 XEN虚拟机扫盲文章 作者:zx_wing
        http://linux.chinaunix.net/bbs/thread-989783-1-86.html
10.9 [原创]openSUSE 10.3 + Bochs搭建操作系统调试环境。 作者:future0906 
        http://linux.chinaunix.net/bbs/thread-920347-1-104.html
10.10 一个ascii 画图工具 作者:pennyliang
        http://linux.chinaunix.net/bbs/thread-1012032-1-130.html
10.11 linux任务响应模型&linux实时化&RTAI 3.2分析&Adeos分析  作者:siasd
        http://linux.chinaunix.net/bbs/thread-793613-1-146.html
10.12  lsmod源码分析  作者:wuhui_zsu 
        http://linux.chinaunix.net/bbs/thread-682578-1-178.html
10.13 简单的说说学习引导的动力!  作者:1jjk 
        http://linux.chinaunix.net/bbs/thread-670517-1-205.html
10.14 急求linux0.11内核源码?  作者:2001033231 
        http://linux.chinaunix.net/bbs/thread-866448-1-207.html
10.15 成功在uclinux下实现拨号,总结经验 作者:upcuiling 
        http://linux.chinaunix.net/bbs/thread-782470-1-249.html



新手入门指南:
下面是我个人的一些总结。我学习LINUX KERNEL也才1,2年。文中难免有不对的地方,欢迎大家指正。
我的目标是写的比较完善,然后版主可以置顶。方便新人。
现在只是第一版,还不是很全面,欢迎大家在后面补充,我会及时更新到一楼。多谢。
一、常见问题:

1、如何开始学习LINUX KERNEL:

我觉得首先要有操作系统的基本知识,比如上过课,或者看过一本操作系统方面的书。起码要理解进程,虚拟内存,分页,分段等这些基本概念。如果这些你都搞不懂,看后面的会更加头疼。另外,至少要了解C语言,汇编最好也有些概念。

操作系统的书我只看过这本《Operating Systems: Internals and Design Principles》。现在已经出到了第六版。

然后看LINUX内核的书,看下面3本书,按顺序看。

前面是全名,中间是版本,再后面是缩写。如果有新版的看最新的。。
1)LINUX KERNEL DEVELOPMENT, 2ND EDITION (LKD)(注:非常好的入门书籍)
2) LINUX DEVICE DRIVERS, 3RD EDITION  (LDD)(注:很好的实战书籍,对KERNEL HACKER一样有帮助)
3) UNDERSTANDING LINUX KERNEL. 3RD EDITION (ULK) (注:从硬件讲到上层,内容丰富,大观念清楚)

我一般优先看英文原版书,一个是练习英语,另外一个也是英文经典的书多一些。中文的好书也有,不过我不是很了解。

上面说的总共4本书如果你都看完了,大概理解了。那么你已经可以算是高手了,论坛里的60%以上的问题基本都可以回答,或者参与讨论了。

我觉得另外一个初学者经常面临的问题就是不知道该看哪方面的书和资料。这其中一部分原因就是基础不够扎实。解决的办法也是从基础的书看起。同时在论坛上多问问。

另外,光看书也是不够的,还要多动手实践。刚学的时候起码要学习下怎么编译内核,内核模块。然后写一些小内核模块啥的。或者参与些项目。

BTW:在本版页面上面直接点“精华”,就可以看到所有的精华贴,很方便。

如果后面想做硬件相关的话,那么建议看看各种规范。比如INTEL CPU IA32-64手册,PCI SPEC, PCI EXPRESS SPEC,ACPI SPEC等。


2、如何调试KERNEL

最常用也最方便的还是用PRINTK。具体介绍在LDD里说的很清楚。另外,新的KERNEL 2.6.2x? 之后也开始支持KGDB。还有一个方法是用QEMU或者VMWARE之类的虚拟机来调试。参考下面2个帖子:


VMWare Workstation 6.0调试Linux Kernel,竟如此方便
 (作者:albcamus)

用QEMU+GDB 调试LINUX KERNEL的方法  (作者:accessory)


3、什么是虚拟地址,线性地址?

看下面这个精华贴: 我理解的逻辑地址、线性地址、物理地址和虚拟地址  (作者:独孤九贱)(注:在ULK3中也有详细介绍)

4、系统调用是如何实现的?
在ULK3中有对INT 80和SYSENTER的解释。不过LINUX中还有一种VSYSCALL,主要用来提高效率,适合那些只是读取信息的SYSCALL,比如GETTIMEOFDAY. 等我找找精华贴,或者啥时总结下。

5、 内核中常出现的do { } while (0)是做什么用的?


6、 Segmentation Fault in Linux (作者:zx_wing)

7、 关于LINUX在中断(硬软)中不能睡眠的真正原因 


8、 Linux汇编语言开发指南(zt) (转载者:mmgg00)

9、如何看源代码?
我一般喜欢用LXR, 常去  http://lxr.linux.no/+trees  这里看。如果你觉得前面这个网站慢的话,也可以自己搭一个LXR,或者搜下其他离你比较近的LXR. 还有很多人喜欢用SOURCE INSIGHT (SI)。不过它是个商业软件。

二、网络相关问题

1、 基于2.6内核的《追踪LINUX TCP/IP代码运行》  (作者:qinjiana0786)

2、 教你修改以及重构skb  (作者:ubuntuer)

3、 Linux内核IP Queue机制的分析  (作者:Godbach)

【FIXME:还有很多其他内容】


三、硬件相关

1、 什么是总线地址?软件如何配置硬件?APIC?

2、 INTEL手册中,APIC部分阅读笔记  (作者:accessory)

3、 写一个块设备驱动  (作者:赵磊. 网名:OstrichFly )(注:由浅到深,非常详细)

4、 Interrupt in Linux(硬件篇) (作者:zx_wing)

5、 RTL8139网卡驱动程序分析[转]  (转载者:Godbach)

6、 改写drivers/net/8139too.c  (作者:xiongce )

7、 Linux-千兆网卡驱动实现机制浅析  (作者:Minit )



四、安全相关

1、 Linux下实现劫持系统调用的总结  (作者:Godbach)

2、 破linux内核模块验证  (作者:W.Z.T)

3、 Snort 入侵检测系统源码分析  (作者:Godbach)

4、 Adore-ng-0.56源码分析  (作者:ubuntuer)

5、 新爆内核高危漏洞sock_sendpage的利用分析的讨论  (作者:独孤九贱)(注:首发于2009.8.18)

6、 剖析一个由sendfile引发的linux内核BUG  (作者:kouu)


五、其他

1、 Linker Script in Linux  (作者:zx_wing)(注:介绍内核文件是怎么连接的)

2、 Linux内存:内存管理的实质  (作者:frank_seng )

3、 linux内存管理报告  (作者:kendyke )

4、 一个简单文件系统的实现  (作者:goter  )

5、 内核模块中对文件的读写  (作者:ubuntuer)

6、 说一说:关于数据传送中 address bus 的工作原理  (作者:mik)(详细介绍读写内存时跨边界的问题)

7、 关于 atomic 的话题 (作者:mik)

8、 基于S3C2410的Linux全线移植文档 (作者:dozec)(嵌入式,ARM)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

chinaUnix中的linux源代码学习 的相关文章

  • 除了 iptables 之外还有数据包管理实用程序吗? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我正在寻找一个 Linux 实用程序 它可以根据一组规则更改网络数据包的有效负载 理想情况下 我会使用
  • :: 右侧的非法标记

    我有以下模板声明 template
  • 当存在点和下划线时,使用 sed 搜索并替换

    我该如何更换foo with foo sed 只需运行 sed s foo foo g file php 不起作用 逃离 sed s foo foo g file php Example cat test txt foo bar sed s
  • Linux下的C#,Process.Start()异常“没有这样的文件或目录”

    我在使用 Process 类调用程序来启动程序时遇到问题 可执行文件的层次结构位于 bin 目录下 而当前工作目录需要位于 lib 目录下 project bin a out this is what I need to call lib
  • 在64位操作系统上以32位模式和64位模式编译ioctl函数的执行有什么不同?

    我有 64 位 Enterprise SuSE 11 我有一个应用程序 它打开 HIDRAW 设备并在其上操作 ioctl 函数以从该设备获取原始信息 如下所示 struct hidraw devinfo devinfo int fd op
  • 从 Linux 命令行发送 SNMP 陷阱消息

    Folks 我需要从 Linux 命令行使用此命令 snmptrap 将自定义消息发送到陷阱侦听器 我需要根据用户设置在 v1 和 v2c 中发送相同的消息 这是我发现的 For v1 snmptrap v 1 c Tas hostname
  • jpackage linux 创建的桌面文件不足

    我刚刚开始使用 jpackage 它是一个非常棒的工具 只要迈出一步 我的肩上的工作就减轻了很多 我对看起来硬编码且无法定制的东西越感到惊讶 JPackage 自动生成启动器 lib
  • 如何使用libaudit?

    我试图了解如何使用 libaudit 我想接收有关使用 C C 的用户操作的事件 我不明白如何设置规则 以及如何获取有关用户操作的信息 例如 我想获取用户创建目录时的信息 int audit fd audit open struct aud
  • 测试linux下磁盘空间不足

    我有一个程序 当写入某个文件的磁盘空间不足时 该程序可能会死掉 我不确定是否是这种情况 我想运行它并查看 但我的测试服务器不会很快耗尽空间 有什么办法可以嘲笑这种行为吗 看起来没有任何方法可以在 Ubuntu 中设置文件夹 文件大小限制 并
  • 使用 sed 将 old-link-url 替换为 new-link-url

    我正在 bash 中编写一个脚本 将 old link url 替换为 new link url 我的问题是 sed 由于斜杠而无法替换 url 如果我只输入一些文字就可以了 my code sed e s old link new lin
  • 如何使用 bash 脚本关闭所有终端,在每个终端中有效地按 Ctrl+Shift+Q

    我经常打开许多终端 其中一些正在运行重要的进程 例如服务器 而另一些则没有运行任何东西并且可以关闭 如果您按 重要 则会弹出确认提示Cntrl Shift Q在其中 如下所示 我想要一个 bash 脚本 它可以关闭所有终端 但将 重要 终端
  • 原生 Linux 应用程序可像 ResHacker 一样编辑 Win32 PE

    我想运行自动修改 dll服务 用户提交特定的 dll 我在服务器上修改它 然后用户可以下载 dll的修改版本 是否有任何本机 Linux 应用程序提供常见的 Win32 PE 修改功能 例如图标 字符串 加速器 对话等 至少提供命令行或脚本
  • ARM 系统调用的接口是什么?它在 Linux 内核中的何处定义?

    我读过有关 Linux 中的系统调用的内容 并且到处都给出了有关 x86 架构的描述 0x80中断和SYSENTER 但我无法追踪 ARM 架构中系统调用的文件和进程 任何人都可以帮忙吗 我知道的几个相关文件是 arch arm kerne
  • 退出 bash 脚本但保持进程运行

    我正在运行服务器 需要使用参数执行以下命令 这些脚本目前工作得很好 但问题是当我运行脚本时我无法返回到控制台 它在控制台中保持运行 如果我强行停止它 那么该过程也会停止 我想继续运行该进程并返回到控制台 bin sh php home st
  • gnome-terminal 新选项卡,使用别名作为要执行的命令

    我已经创建了一个别名 bashrc文件如下 alias myproject cd Desktop myproject 当我重新启动终端时保存文件后 输入myproject带我到项目目录 但是当我尝试使用别名作为新的命令参数时gnome te
  • 是否有可能通过 mmap 匿名内存“打孔”?

    考虑一个使用大量大致页面大小的内存区域 例如 64 kB 左右 的程序 每个内存区域的寿命都相当短暂 在我的特定情况下 这些是绿色线程的替代堆栈 如何最好地分配这些区域 以便一旦该区域不再使用 它 们的页面可以返回到内核 天真的解决方案显然
  • 如何在 Linux 中使用单行命令获取 Java 版本

    我想通过单个命令获取 Linux 中的 Java 版本 我是 awk 的新手 所以我正在尝试类似的事情 java version awk print 3 但这不会返回版本 我将如何获取1 6 0 21从下面的Java版本输出 java ve
  • 如何在两个不同帐户之间设置无密码身份验证

    我们可以在两台机器的两种不同用途之间设置无密码身份验证吗 例如 计算机A有用户A 计算机B有用户B 我们可以设置密码 ssh 以便计算机 A 上的用户 A 使用其用户帐户 A 登录计算机 B 谢谢你 如果我理解你的问题 你能设置一下吗ssh
  • 远程linux服务器到远程linux服务器大型稀疏文件复制 - 如何?

    我有两台 CentOS 5 4 服务器 每台服务器上都安装了 VMware Server 假设我始终对 vmware 虚拟机使用稀疏文件 将虚拟机文件从一台服务器复制到另一台服务器的最可靠 最快速的方法是什么 虚拟机的文件复制起来很痛苦 因
  • 使用命令行将 MediaWiki 维基文本格式转换为 HTML

    我倾向于编写大量文档 因此 MediaWiki 格式对我来说很容易理解 而且比编写传统 HTML 节省了我很多时间 然而 我也写了一篇博客 发现一直从键盘切换到鼠标来输入正确的 HTML 标签会增加很多时间 我希望能够使用 Mediawik

随机推荐

  • Java期末作业-社区医疗信息管理系统(源码+数据库文件+设计报告·附下载链接)

    Java期末大作业 社区医疗信息管理系统介绍 比较简单 点我下载项目源码 数据库文件 设计报告文档 介绍 这个小项目没有用到任何框架也没有用到Javaweb的技术 知识使用了Java写代码 使用MySQL创建数据库 然后用JDBC进行连接
  • 什么是信道编码?信道编码比较

    消除干扰 让无线信号更干净 这本是信道编码技术的初衷 然而 最近网络上这场 Polar码投票 闹剧 无中生有地添加杂质 与所议论的技术之本质背道而驰 若Polar码也有血肉之躯 此君情何以堪 香农前辈若在世 也会笑话我们吧 2016年11月
  • 1.NoSQL数据库简介

    1 1技术发展 技术的分类 1 解决功能性的问题 Java Jsp RDBMS Tomcat HTML Linux JDBC SVN 2 解决扩展性的问题 Struts Spring SpringMVC Hibernate Mybatis
  • 服务器的作用

    服务器的作用 1 服务器就好像是一个电话总台一样 而其他的网络设备就像是公共电话 所有的数据传输都要经过服务器的处理 2 服务器作为一个网络节点 为用户提供数据处理服务 最常见的就是使用服务器为自己搭建一个网站 3 服务器运算能力强 可以长
  • Babel安装步骤(JavaScript编译器)

    首先需要安装node js按照官网 下一步 就行 1 npm init 初始化 2 安装依赖包 npm install save dev babel core babel cli 如果说提示babel不是命令 可以全局安装npm insta
  • 05-windows下SQL Developer连接Orcale

    1 使用orcale安装时候自带的工具SQL Developer 工具位置 连接 连接成功
  • 【React 进阶】props 和 state 的区别详解

    时隔一年半之久再次重新学习 React 好多都还是原来的样子 这次我要重新开启 React 的大门 希望各位小伙伴可以一起讨论学习呦 前言 今天我们开始第一个专题 React 中 关于 props 和 state 当然我们不是对 props
  • 【React】19课 react组件使用redux小案例

    小案例效果入下 我们来看一下文件的目录结构 redux文件内的index js文件代码 const add Num 增加一条数据 const remove Num 删除一条数据 state 数据原先的状态 action 需要来进行改造的内容
  • using namespace std啥意思?命名空间?

    using 是C 中的关键字 命名空间作用域参考 两种形式 using 命名空间名 标识符名 将指定的标识符暴露在当前的作用域内 使得在当前作用域可以直接引用该标识符 using namespace 命名空间名 将指定命名空间内的所有标识符
  • 默纳克调试说明书_默纳克_NICE3000调试说明书(修改版)

    4 2 4 密码设置 为了更有效地进行参数保护 NICE3000电梯一体化控制器提供了密码保护 下面示例将密码改为12345的过程 粗体表示闪烁位 图4 9 密码的设定过程 设置了用户密码 即用户密码FP 00的参数不为0 会先进入用户密码
  • Selenium被检测为爬虫,怎么屏蔽和绕过

    01 Selenium 操作被屏蔽 使用selenium自动化网页时 有一定的概率会被目标网站识别 一旦被检测到 目标网站会拦截该客户端做出的网页操作 比如淘宝和大众点评的登录页 当手工打开浏览器 输入用户名和密码时 是能正常进入首页的 但
  • DNS查询服务器的基本流程

    DNS查询服务器的基本流程 假定域名为m xyz com的主机想知道另一台主机 域名为y abc com 的IP地址 例如 主机m xyz com打算发邮件给y abc com 此时 必须知道主机y abc com的IP地址 主机m xyz
  • 因果推理(九):双重差分(Difference-in-Differences)

    1 预备知识 回顾一下第二章的 unconfoundedness 假设 无混杂假设等价于 T T T到 Y Y Y之间没有畅通无阻的后门路径 在这种情况下 关联就是因果 那么可以用下面的式子计算ATE
  • 【编译原理】第1章 引论

    1 引论 目录 一 基本概念 二 编译过程 三 PL 0编译程序 题目练习 拓展 高级程序语言 参数传递 一 基本概念 源语言程序 源语言编写的程序 源语言一般指的是编写源程序所用的语言 它必须翻译成机器语言才能在计算机中使用 目标语言程序
  • linux下显卡驱动掉了,出现The system is running in low-graphics mode时解决方法

    Ctrl alt F1 cd etc X11 sudo cp xorg conf failsafe xorg conf sudo reboot 重启会发现linux很卡 原因是显卡驱动有问题 Ctrl alt F1 sudo service
  • Android 10如何隐藏应用图标

    隐藏应用图标这个功能应该用的很少 毕竟用到这个功能的应用可想而之 手动滑稽 隐藏图标的实现方式我想在网上查到很多了有在AndroidManifest实现的也用通过如下代码实现的 启动组件 param componentName 组件名 pr
  • 2.处理器与设备间数据交换方式

    处理器与外设之间传输数据的控制方式通常有3种 查询方式 中断方式和直接内存存取 DMA 方式 21 查询方式 设备驱动程序通过设备的I O端口空间 以及存储器空间完成数据的交换 例如 网卡一般将自己的内部寄存器映射为设备的I O端口 而显示
  • ASPXGridView使用总结

    转载 一 ASPXGridView外观显示 属性 Caption 列的标题 KeyFieldName 数据库字段 SEOFriendly 是否启用搜索引擎优化 Summary 指定分页汇总信息的格式 Setting节点的ShowFilter
  • 如何将小程序放到公众号菜单?

    第一步 公众号关联小程序 注 小程序要放到公众号菜单需要先把小程序与公众号关联 如果已经关联了可以直接下一步操作 1 到微信公众平台 登录小程序账号 进入设置 gt 开发设置 即可得到小程序AppID 将其复制下来 获取小程序AppID 2
  • chinaUnix中的linux源代码学习

    原文地址 http bbs chinaunix net thread 1930079 1 1 html 大家好 内核源码版对本版块的精华帖进行了分类汇总 所有的精华帖分为十大类 各个分类的精华帖相关信息分布在该贴2 11楼 每个分类各占1楼