一些linux kernel hacking资料

 
Author 一些linux kernel hacking资料
alert7


Joined: Oct 18, 2001
Posts: 501 Posted: 2002-08-09 14:59
Joined: Oct 18, 2001
Posts: 501 Posted: 2002-08-09 14:59
--------------------------------------------------------------------------------
http://www.linuxforum.net/forum/ ... sts&Main=303849

Code:
--------------------------------------------------------------------------------

------------------------------------------
1)
如何编程接收ppp0上的裸IP包?
http://www.linuxforum.net/forum/ ... xK&Number=60593

如何捕获所有的ip包
http://www.linuxforum.net/forum/ ... xK&Number=90308

Linux-2.4.0网络部分改变
http://www.linuxforum.net/forum/ ... xK&Number=68573

防火墙技术分析讲义( for aka lecture)
http://www.linuxforum.net/forum/ ... xK&Number=92895

Linux防火墙程序设计
http://www.linuxforum.net/forum/ ... xK&Number=69842

Shaper是一个限制网络速率的虚拟网络设备
http://www.linuxforum.net/forum/ ... xK&Number=74270

traceroute的问题
http://www.linuxforum.net/forum/ ... xK&Number=78915

ptype_all结构的一点理解和网络初始化以后的组织图
http://www.linuxforum.net/forum/ ... xK&Number=86492

关于ptype_all链表和pypte_base的理解
http://www.linuxforum.net/forum/ ... xK&Number=89657

怎样取得skb结构中的内容!
http://www.linuxforum.net/forum/ ... xK&Number=86847

2)

Linux内核网络参数的意义及应用
http://www.linuxforum.net/forum/ ... xK&Number=92618

网络设备的初始化是在何时做的
http://www.linuxforum.net/forum/ ... xK&Number=95141

内核中网络部分问题
http://www.linuxforum.net/forum/ ... xK&Number=98491

几个非阻塞socket连续向一个ip的不同端口connect 时
http://www.linuxforum.net/forum/ ... K&Number=100878

关于TCP连接的应答问题
http://www.linuxforum.net/forum/ ... K&Number=103739

内核是怎么得到网卡的硬件地址的
http://www.linuxforum.net/forum/ ... xK&Number=99255

ip_input,ip_forward和ip_output
http://www.linuxforum.net/forum/ ... K&Number=100675

lvm技术
http://www.linuxforum.net/forum/ ... K&Number=102202

网卡混杂模式(promisc)
http://www.linuxforum.net/forum/ ... K&Number=104376

需要打开网卡的promisc
http://www.linuxforum.net/forum/ ... K&Number=104378

3)
netfilter各个HOOK的关系
http://www.linuxforum.net/forum/ ... K&Number=102971

关于netfilter的一点问题
http://www.linuxforum.net/forum/ ... K&Number=111800

netfilter.h的解释
http://www.linuxforum.net/forum/ ... K&Number=104100

netfilter.c剖析1
http://www.linuxforum.net/forum/ ... K&Number=111276

netfilter各个HOOK的关系
http://www.linuxforum.net/forum/ ... K&Number=102978

netfilter剖析2
http://www.linuxforum.net/forum/ ... K&Number=111742

ip_tables.c中组织规则的方式
http://www.linuxforum.net/forum/ ... K&Number=114230

ip_tables.c的防火墙规则处理
http://www.linuxforum.net/forum/ ... K&Number=114885

ip_tables.c中防火墙规则环的检测
http://www.linuxforum.net/forum/ ... K&Number=115532

ip_tables.c的面向应用程序的接口
http://www.linuxforum.net/forum/ ... K&Number=116658

4)
内核中的fastroute是什么意思
http://www.linuxforum.net/forum/ ... K&Number=110809

内核对以太网设备的探测过程
http://www.linuxforum.net/forum/ ... K&Number=112753

ISA网卡驱动程序的探测过程
http://www.linuxforum.net/forum/ ... K&Number=112915

ISA网卡驱动程序发送和接收过程
http://www.linuxforum.net/forum/ ... K&Number=113182

IP包的接收过程
http://www.linuxforum.net/forum/ ... K&Number=116468

网络包的排队发送过程
http://www.linuxforum.net/forum/ ... K&Number=113452

IP包碎片重组过程
http://www.linuxforum.net/forum/ ... K&Number=116940

IP包的本地分发过程
http://www.linuxforum.net/forum/ ... K&Number=117098

包缓冲区操作的几个内嵌函数
http://www.linuxforum.net/forum/ ... K&Number=118514

包队列操作的一些内嵌函数(续)
http://www.linuxforum.net/forum/ ... K&Number=118544

5)
包缓冲的分配操作
http://www.linuxforum.net/forum/ ... K&Number=118621

ip_tables.c的各个注册函数解释
http://www.linuxforum.net/forum/ ... K&Number=118739

IP包的生成和发送接口
http://www.linuxforum.net/forum/ ... K&Number=119629

Linux网络接口层分析(之一):netif_rx
http://www.linuxforum.net/forum/ ... K&Number=119643

关于Linux的路由
http://www.linuxforum.net/forum/ ... K&Number=119871

网络设备的IP地址结构
http://www.linuxforum.net/forum/ ... K&Number=120939

网络过滤器的基本结构
http://www.linuxforum.net/forum/ ... K&Number=121722

表驱动IP过滤器的基本工作过程
http://www.linuxforum.net/forum/ ... K&Number=122218

混杂模式后,就可以截取发送到其它机器的数据包
http://www.linuxforum.net/forum/ ... K&Number=119604

IP轨迹跟踪过滤器的基本结构
http://www.linuxforum.net/forum/ ... K&Number=123482

6)
IP地址转换过滤器的基本工作原理
http://www.linuxforum.net/forum/ ... K&Number=124864

如何编写网卡的驱动程序
http://www.linuxforum.net/forum/ ... K&Number=125277

关于FreeS/WAN一问
http://www.linuxforum.net/forum/ ... K&Number=128127

在freeswan实现中,它是如何截取ip包的呢?
http://www.linuxforum.net/forum/ ... K&Number=127661

路由表的框架结构
http://www.linuxforum.net/forum/ ... K&Number=115741

对网络设备驱动的看法
http://www.linuxforum.net/forum/ ... K&Number=129997

请问netfilter中在钩子NF_IP_LOCAL_OUT处为什么要做DNAT
http://www.linuxforum.net/forum/ ... K&Number=129185

linux对icmp的回显请求的反应
http://www.linuxforum.net/forum/ ... K&Number=129899

发送、接受、转发包处理结构框图
http://www.linuxforum.net/forum/ ... K&Number=129775

谁能帮我解决Netfilter关于钩子函数优先级的问题
http://www.linuxforum.net/forum/ ... K&Number=131288

7)
Linux的TCP/IP协议栈阅读笔记-系列
http://www.linuxforum.net/forum/ ... xK&Number=67720





--------------------------------------------------------------------------------




--------------------------------------------------------------------------------

alert7


Joined: Oct 18, 2001
Posts: 501 Posted: 2002-08-09 15:01
--------------------------------------------------------------------------------
http://www.linuxforum.net/forum/ ... sts&Main=304802

文章标题 文件系统------by yuhaid [re: calfe] 回复

张贴者: yunhaid (journeyman)
张贴日期 07/01/02 04:14 PM



TTY终端设备文件接口的基本结构

proc 文件系统的分析(1)

proc 文件系统的分析(2)

proc 文件系统的分析(3)

proc 文件系统的分析(4)

PROC文件系统的基本结构

tty终端文件的异步操作

VFS文件系统(1)

VFS文件系统(2)

VFS文件系统(3)

版本2.4.16下path_init和path_walk,link_path_walk分析报告

分析虚拟文件系统的结构

Ext2 文件系统的硬盘布局



==========Signature Zone==========
我是新手,我怕谁.

编辑者: calfe (07/01/02 05:45 PM)

文章选项:


文章标题 Re: 文件系统------by yuhaid [re: yunhaid] 回复

张贴者: xshell (Pooh-Bah)
张贴日期 07/01/02 04:32 PM



不错!!

工整的排列看起来很舒服! 文件系统部分的好帖相对来说可能会多一些,辛苦你了.

==========Signature Zone==========
C & C

文章选项:


文章标题 Re: 内核同步相关讨论 [re: sirx] 回复

张贴者: calfe (enthusiast)
张贴日期 07/01/02 06:54 PM



好的,我会尽量满足你的要求。只要帖子质量好,就可以推荐。希望sirx多多推荐。

==========Signature Zone==========
人处于某一时空都有两条路可走,所以人字这么写:人

文章选项:


文章标题 与进程相关的讨论 [re: calfe] 回复

张贴者: calfe (enthusiast)
张贴日期 07/01/02 07:37 PM



1.
实时进程的时间片赋值问题

2.
在linux中一个进程如何修改其它进程的数据?

3.
如何跟踪进程1

4.
如何跟踪进程2

5.
根据pid得到进程的名称task->comm

6.
如何在内核中唤醒和睡眠用户进程

7.
中断上下文,进程上下文和任务上下文之间的区别---需要进一步深入

8.
关于user_struct的分析

9.
need_resched 是怎么使用的


10。
关于0号进程的讨论

11。
init进程从内核态切换到用户态

12。
关于进程数的限制问题

13。
"return" and "exit"之间的不同

14.
linux中进程与线程的问题

15.
进程描述符

==========Signature Zone==========
人处于某一时空都有两条路可走,所以人字这么写:人

编辑者: calfe (07/01/02 07:53 PM)

文章选项:


文章标题 进程的创建和撤消 [re: calfe] 回复

张贴者: calfe (enthusiast)
张贴日期 07/01/02 07:55 PM



1.
进程创建

2.
进程销毁

3.
clone与fork的讨论

4.
fork进程的学习

5.
示例clone系统调用的使用方法

==========Signature Zone==========
人处于某一时空都有两条路可走,所以人字这么写:人

文章选项:


文章标题 论坛索引 [re: calfe] 回复

张贴者: hyl (journeyman)
张贴日期 07/02/02 11:09 AM



已完成! 上次更新 2002.7.4



索引的内容:
我比较喜欢的帖子. 和精华收藏多有冲突.


索引的使用:
支持分类, 从这里找帖子, 然后分类,要比在论坛里搜索方便. 有这一点作用, 也不枉我遍历一次论坛.
( 折叠起来看,不然太乱了)



索引的更新:
我们记录了索引更新的时间. 下一次更新时, 比方说一个月后, 只需选择显示一个月内发表的文章. 这样就不会丢掉
文章.
但是,有可能重复, 因为新的回应会使帖子位置前移.
这个问题这样解决:
凡是我收集的文章统统加入我的收藏夹, 这样,更新时我只向索引里加入那些可以加入我的收藏夹的文章.



索引的局限:
水平有限, 不免错漏.
我尽力保留有价值的帖子. 不敢说没有在索引中的帖子就没有价值.但我一直在努力.

编辑者: xshell (07/04/02 02:28 PM)

文章选项:


文章标题 Re: 论坛索引 [re: hyl] 回复

张贴者: hyl (journeyman)
张贴日期 07/02/02 11:11 AM





关于faq----征求建议和合作者

请教linux内核版本2.0.35的进程切换

诚征版主,祝内核版越办越好!

编译内核时有很多东东不明白什么含义,哪位知道什么地方可以找到比较全面的资料

高手是怎么编译内核的啊?

编译内核之一

编译内核之三

编译内核之四

编译内核之五

编译内核之六(后记)

大家对NeXT,BeOS,Darwin这些变种如何看待,似乎国内很少有人谈及?

编译内核之二

提问:the STRUCTURE of Linux?

编译内核时,在哪部分把PCMIA卡编译掉?

微内核?进程调度?

linux的非微内核一直受竞争对手的非议,请问未来linux的发展在这方面有什么计划?(null)

一点题外话



书上说段页式内存管理是最好的内存管理方式,但LINUX的内存管理使用的是页式,为什莫?

1f是指什么,好象并没有1f的标签

编译内核是否只是简单的make config,若不是,请给我详细步骤。

那位大侠知道如何记录通过ipchains网关的数据报

要怎样建立放火墙

模块程序却出错如下:invalid parameter parm_a

块设备驱动程序的注册似乎都是通过调用register_blkdev(),

调用了netif_rx 函数。

请问tunable parameter

关于进程数

如何编写自己的设备驱动程序,又如何在C语言中调用

where the kernel start? why I can not find the function 'main()'?

请问可不可以在Linux下改网卡的硬件地址(将每个发送出去的数据包的硬件地址改为特定的值)?

编译的时候他说我的最后一行:missing seprator

lilo怎么改?image=? initrd

init在哪儿

__asm__是干什么的?

编译setup.S为什么有一大堆错误

想让内核将printk输出到messages文件

get_current(void)

文章选项:


文章标题 Re: 论坛索引 [re: hyl] 回复

张贴者: hyl (journeyman)
张贴日期 07/02/02 11:16 AM



在内核态,进程如何访问用户态空间的数据?

Bug大侠,该如何研究Linux的源代码

head.s中调用setup_paging时,内存0x1000起开始的几页全被清零,岂不是将内核代码head.s部分覆盖了,这是怎么回事?

内核首先读入内存0x10000处,但后又移至0x1000处,这样岂不是与内核页目录swapper_pg_dir地址冲突吗

inw()/outw()、inl()/outl(),其中b、w、l各是什么意思

如何安装3块网卡,每个网卡在一个网段

要写一个PCI卡(自制的)driver

加载modules时就提示有些目标文件中存在unresolved simbol

linux -- driver的编写 -- file_operations

装载lilo时会显示:“LILO:”,请问如何改变这个显示

关于BluePoint2.0的几个烂点:

include头文件modversions.h时,一般用什么条件?为什么我用的时候它总是和#include asm/uaccess.h冲突

用insmod装载模块时,出现了unresolved symbol

Linux的整体式结构决定了其内核的高效性

我用命令 mount -t vfat /dev/hda1 /mnt/c 发现,我的linux好象,不支持vfat

如何查看当前内核的配置参数

我们也做嵌入式,欢迎一起创业

kmalloc(),返回的地址不用设置页表,而vmalloc()需要。 这说明什么

__get_free_pages()返回的是物理地址还是虚拟地址

分析do_fork chldreg指针的赋值的问题小弟感觉很糊涂

linux -- driver -- __put_user

linux -- driver -- ioctl

How can I do a Linux Boot/Root Disk

编写驱动程序时,需要将硬件的物理地址为虚地址. LINUX内核如何保证这种影射对每个进程都是有效的.

如何在Windows或者DOS下编译内核

内核过程所允许使用的堆栈空间有多大

system.map到底有什么用

想利用时钟中断,想自己加入一些代码形成自己的中断服务程序.

用signal 的确可以做当异步地运行某个函数, 信号是否是以中断的形式运行的

起动盘为什么mount不上去

看不出head.s是如何调用start_kernal()函数的

start_kernel()中我怎么没有发现初始化网络部分的函数

head.s究竟是怎样调用start_kernel()函数的呢

Linux是不是对中断控制器重新编程过了

系统初始化

阅读setup.S原程序时,对下面进入保护模式程序段有点不理解

kernel_thread()是用来产生init进程的,然后由init全权处理进程,它怎么会初始化网络呢

段描述符高速缓存寄存器和描述符投影寄存器有什么区别

段描述符中有一位p用来区分此段是否在内存中,问题是若一段中部分叶在内存,部分不在内存,此位如何赋值

如何有效阅读内核代码?

init 进程启动之后,所有其他进程就由INIT进程全权处理。这时可以说系统内核已经完全启动起来吗?

在head.s-->start_kernel()-->启动init这个过程我还没有发现内核调用调度函数

能不能将内核的地址空间动态映射到用户空间的0xc0000000-0xffffffff 上去

已分配并不再使用的堆栈页面是对换到交换空间中还是直接被系统回收

Why I can't boot linux form fd(volume 1.722M) but fd(volume 1.44) can do?

调入系统模块到0x1000:0处时,为虾米还要判断es为64k对齐 为什么还要调用kill_motor

Pentium CPU CR0中的WP位是干什么用的?

CPU从用户的特权级3进入到内核的特权级0,请问这时是CPU如何完成这个中断指令的?

setup.S的bootsect_helper程序时,对于bios的15h中断的87号移低端内存到高端内存的参数有点不明白

do_mmap()函数 off&~PAGE_MASK的含义是什么?mm->map_count 是何含义?mm->locked_vm不是被锁定的vm的个数吗?

Oops是什么意思

为什么要去分析内核 我是菜鸟,但我是鹰的后代

setup.S中为什么需要置A20线

setup.S中移动剩余setup代码区的一个问题

那么当系统物理内存为最大值4G时,内核似乎只能管理它自已地址空间中的1G? 应用程序0-0x8048000有何作用?

pmd是指什麽

vfork的原意是什么

东东太多,我不知从哪下手!



文章选项:


文章标题 Re: 论坛索引 [re: hyl] 回复

张贴者: hyl (journeyman)
张贴日期 07/02/02 11:17 AM



8295A的断口号是怎么分配的

一篇ELF格式的详细说明

SYMBOL_NAME(...)和__asm__volatile(...)的功能是什么呢?

Linux中,局部描述符表LDT有何用呢?

__pa(x)是干什么用的

内核不使用虚拟内存,但是却把0xc0000000-4g的地址做为内核保留地址,这是怎么一会事

vmalloc分配的内存能否被swap out

ping的源代码

MEM_ALT_K是什么

__volatile__是什么功能

将一个极小的GUI机制引入内核可否?

Linux console font operation

在共享库定义共享段

Linux交换内存的一个缺陷

do_page_fault部分时,对里边提及的Pentium cpu缺陷(f00fc7c8冻结指令)很迷惑

解读vmlinux.lds.S

fixmap_init()函数是用来干虾米的?

lcall7 读trap_init()

paging_init()中的end_mem = (end_mem + ~mask) & mask;

static定义的变量放于哪个段

_edata和_end在哪儿定义

如何往内核加载模块

勇敢地蜕去你的陈年旧皮!

do_IRQ()中断号错误码的正负问题

build_irq"#"前缀

编译内核VFS:can't open root device 08:0a

mem_map结构数组中每个页面的age值是在什么时候更新的

GCC为2.96版,这是个非稳定的版本

说说用户进程的页面切换

kernel_threadregs.esp由从何而来呢?

Too many open files"问题

3g的虚拟内存到物理内存的映射是否都在task_struct中

为什么要有8M的隔离带?

为何总是报错VFS:unable to mount root fs on 08:01?

\linux\kernel\init\main.c开始的部分其偏移地址是否都被编译为从大于3G开始

lds定义了内核映象所有符号从PAGE_OFFSET(3G)处开始编址

Linux目前的体系只能管理2G物理内存?

编译好的内核为什么要要经过压缩?

系统状态保存在当前进程任务结构和内核堆栈中。进程间的切换点都在schedule()中

setup_arch()函数是如何得到命令行参数的

进程数据结构页面是如何保证不被换出内存的?

问_end的定义

mount和insmod一个模块的区别?网卡的混杂模式是什么意思?

mmap用于进程间文件共享,SYSV IPC用于进程间内存共享

当当前进程current的调度策略是FIFO时,其时间片current.counter为何没有重新赋值

加载模块时,想给参数赋值


文章选项:


文章标题 Re: 论坛索引 [re: hyl] 回复

张贴者: hyl (journeyman)
张贴日期 07/02/02 11:19 AM



开机后不要人干与就直接可起动我的应用

FIFO策略进程的时间片(counter)没有重新赋值

如何使linux进程的堆栈是不可运行的?

可重入 和 ret_from_intr

FIFO的进程其时间片在schedule()中被忽视而没有重新赋值.请问这是否会导致它被频繁的重新调度呢?

推荐内核分析风格

__asm__ __volitile__

我的看法

如何编程接收ppp0上的裸IP包?

PS/2鼠标工作原理和硬件编程的技术资料

请教如何读linux的Kernel

模块的版本相关性指什么?

当物理内存超过3G时就管理不了?

lcall7的入口处比system_call多压栈了一项pushfl

原代码看的工具lxr是怎么用的?

调用_free_page()后,该内存页真的被释放了吗

free_area_init()中bitmap_size 是否有问题?

对try_to_swap_out()的一点改进

Where is file for mapping kernel virtual address

有没有关于gunzip()的解压算法

gunzip()函数在解压缩piggy.o(真正的内核)时,是如何定位或寻址到piggy.o的内存地址的呢

堆中内存是如何分配的

这里的set_pte使我很疑惑,为什么用的不是物理地址,而是加上0xC0000000的虚拟地址呢

编译时决定virtual address吗?

boot.S, setup.S ... is running with real-mode?Need not mmu settings?

idle是内核线程,init线程已转变为普通进程

a paper about debugger

由于ELF中允许用.section自定义段

trampoline乱谈

SMP不太熟悉,有几个入门性的问题

如何在内核中获得键盘和鼠标的消息

引用内核中变量求助 EXPORT_SYMBOL()宏添加相应内核符号

outb_p :where define?what does "%w1" mean ?

Linux太难学了

读kmem_cache_estimate ()这个函数

kmem_cache_estimate 中的 L1_CACHE_ALIGN

slab分配器的设计思想

page aligned 是什么意思

用nice等命令设定的进程优先级有什么确切的含义

模块中的全局符号自动添加到系统符号表中,模块中不能使用EXPORT_SYMBOL(), 可用EXPORT

在内核态与用户态转变时,地址映射是相同的,堆栈区域不同

linux核心程序中怎样打开设备呢

怎样调试内核???gdb行吗?

硬件内存在系统内存空间中的映射问题

和malloc,calloc一样,一般是用sbrk系统调用实现的

Linux头文件中定义了进行串操作的函数,驱动程序可以使用它们来获得比C语言写的循环更好的性能

readahead使用的各个变量的意义

About kernel stack

section __ex_table,"a"和.previous 以及.fixed

请教各位如何使用SYSCTL的问题

System Call is a limitation??

About GET_CURRENT

Linux的TCP/IP协议栈阅读笔记(1)

Linux的TCP/IP协议栈阅读笔记(2)

Linux的TCP/IP协议栈阅读笔记(3)

Linux的TCP/IP协议栈阅读笔记(4)

Linux的TCP/IP协议栈阅读笔记(5)

Linux的TCP/IP协议栈阅读笔记(6)

Linux的TCP/IP协议栈阅读笔记(7)

About the Linux Kernel Analysis Book

Linux的TCP/IP协议栈阅读笔记(8)

请大虾们推柬一下读核工具

请问内核2.4版本的zone分配器的设计思

你可能感兴趣的:(网络技术,linux,linux内核,网络,防火墙,编程,structure)