Linux内核分析
文章平均质量分 80
leopard_ray
这个作者很懒,什么都没留下…
展开
-
在 Linux 下用户空间与内核空间数据交换的方式,第 1 部分: 内核启动参数、模块参数与sysfs、sysctl、系统调用和netlink
本系列文章包括两篇,它们文详细地介绍了 Linux 系统下用户空间与内核空间数据交换的九种方式,包括内核启动参数、模块参数与 sysfs、sysctl、系统调用、netlink、procfs、seq_file、debugfs和relayfs,并给出具体的例子帮助读者掌握 这些技术的使用。 本文是该系列文章的第一篇,它介绍了内核启动参数、模块参数与sysfs、sysctl、系统调用和netlin转载 2007-04-12 09:45:00 · 711 阅读 · 0 评论 -
在 Linux 下用户空间与内核空间数据交换的方式,第 2 部分: procfs、seq_file、debugfs和relayfs
本系列文章包括两篇,它们文详细地地介绍了Linux系统下用户空间与内核空间数据交换的九种方式,包括内核启动参数、模块参数 与sysfs、sysctl、系统调用、netlink、procfs、seq_file、debugfs和relayfs,并给出具体的例子帮助读者掌 握这些技术的使用。 本文是该系列文章的第二篇,它介绍了procfs、seq_file、debugfs和relayfs,并结合给出原创 2007-04-12 09:46:00 · 691 阅读 · 0 评论 -
Linux 系统内核空间与用户空间通信的实现与分析
多数的 Linux 内核态程序都需要和用户空间的进程交换数据,但 Linux 内核态无法对传统的 Linux 进程间同步和通信的方法提供足够的支持。本文总结并比较了几种内核态与用户态进程通信的实现方法,并推荐使用 netlink 套接字实现中断环境与用户态进程通信。1 引言Linux 是一个源码开放的操作系统,无论是普通用户还是企业用户都可以编写自己的内核代码,再加上对标准内核的裁原创 2007-04-12 11:52:00 · 565 阅读 · 0 评论 -
SYN Cookie原理及其在Linux2.4内核中的实现
本文就分别介绍一下 SYN Flood 攻击和 SYN Cookie 的原理,更重要的是介绍 Linux 内核中实现SYN Cookie 的方式。最后,本文给出一种增强目前 Linux 中 SYN Cookie 功能的想法。 概述在 目前以IPv4为支撑的网络协议上搭建的网络环境中,SYN Flood是一种非常危险而常见的DoS攻击方式。到目前为止,能够有效防范SYN Flo原创 2007-04-12 14:39:00 · 574 阅读 · 0 评论 -
Linux内核中cache的实现
本文档的Copyleft归yfydz所有,使用GPL发布,可以自由拷贝,转载,转载时请保持文档的完整性,严禁用于任何商业用途。msn: [email protected]来源:http://yfydz.cublog.cn1. 前言kmem_cache是Linux内核提供的快速内存缓冲接口,这些内存块要求是大小相同的,因为分配出的内存在接口释放转载 2007-08-29 15:05:00 · 3315 阅读 · 0 评论 -
Linux 内核软中断(softirq)执行分析
今天无意中看了眼 2.6 内核的软中断实现,发现和以前我看到的大不相同(以前也是走马观花,不大仔细),可以说改动很大。连 softirq 的调用点都不一样了,以前是三个调用点,今天搜索了一下源代码,发现在多出了ksoftirqd 这个东西后,softirq 在系统中的调用点仅是在 ISR 返回时和使用了 local_bh_enable() 函数后被调用了。网卡部分的显示调用,我觉转载 2007-11-08 17:39:00 · 2040 阅读 · 0 评论 -
千兆TCP拥塞控制算法分析
作者:Geoff Huston,APNIC回顾30多年来的互联网从业经验,我发现:促使互联网协议套件成功地成为全球通信系统首选技术的关键,是互联网协议(IP)本身。作为一种重叠协 议,它能够支持几乎任何类型的通信介质。但是我还想指出IP中另外一个重要的角色,即位于IP之上的可靠传输协议--传输控制协议(TCP)。我之所以认 为它如此重要,是因为TCP所采用的端到端速率自适应控制转载 2007-11-19 11:37:00 · 3961 阅读 · 0 评论 -
Kernel panic 信息分析方法(转自高人)
Kernel panic 息分析方法(转自高人) Oops: 0000 [#1] PREEMPT SMP Modules linked in: capidrv kernelcapi isdn slhc ipv6loop dm_multipath snd_ens1371 gameport snd_rawmidi snd_ac97_codec转载 2010-01-06 17:14:00 · 5501 阅读 · 0 评论 -
gcc的__attribute__编绎属性
<br />要了解Linux Kernel代码的分段信息,需要了解一下gcc的__attribute__的编绎属性,__attribute__主要用于改变所声明或定义的函数或数据的特性,它有很多子项,用于改变作用对象的特性。比如对函数,noline将禁止进行内联扩展、noreturn表示没有返回值、pure表明函数除返回值外,不会通过其它(如全局变量、指针)对函数外部产生任何影响。但这里我们比较感兴趣的是对代码段起作用子项section。<br />__attribute__的section子项转载 2010-12-27 10:25:00 · 965 阅读 · 0 评论