VMALLOC_RESERVE 和 896M
VMALLOC_RESERVE和896MLINUX内核虚拟地址空间到物理地址空间一般是固定连续影射的。假定机器内存为512M,从3G开始,到3G+512M为连续固定影射区。zone_dma,zone_normal为这个区域的。固定影射的VADDR可以直接使用(getafreepage,thenuse
求助:将用户空间的虚拟地址映射到内核态的逻辑地址。
问题:小弟正在写一个测试程序,程序的目的是用户空间的虚拟地址映射为内核空间的逻辑地址,然后内核空间的驱动程序对该内存空间直接操作,写入相应的字符串,最后再由用户空间读出该字符串以验证程序的正确性。程序的流程大概是这样的。-----------------内核空间-------------------
linux内存管理报告
看了几周linux内存管理,做了个报告,分享一下是以mips32bit平台来说明的.写得不好,不要pk我哦.哈哈刚刚开始linux的学习不久.大家互相交流,谢谢..文章来源CU社区:linux内存管理报告
查找X86_64下内核代码段物理地址的方法
查找X86_64下内核代码段物理地址的方法一.目标:我想找出X86_64LINUX2.6.18的内核代码段的物理地址.找出这个地址有什么用呢?一般人是用不到的.不过如果你知道什么是DMAATTACK.同时又想用这个方法来攻击X86_64LINUX的话,你也许就会用到内核的物理地址了.二.方法:错误的
Linux内存:内存管理的实质
1.内核初始化:*内核建立好内核页目录页表数据库,假设物理内存大小为len,则建立了[3G--3G+len]::[0--len]这样的虚地址vaddr和物理地址paddr的线性对应关系;*内核建立一个page数组,page数组和物理页面系列完全是线性对应,page用来管理该物理页面状态,每个物理页面
发个简单(易用)的内存池
首先是把节点中的list和ptr改成head和tail了,为了方便理解,老炮给的意见另外是,在节点中添加了一个raw_data指针,跟data在初始化时同时指向数据内存地址,这样做的目的是防止用户在退出时忘记了free每一个node,如果采用以前的方式,整个内存池也就忘记Free了,虽然能够在退出时
我理解的逻辑地址、线性地址、物理地址和虚拟地址(补充完整了)
本贴涉及的硬件平台是X86,如果是其它平台,嘻嘻,不保证能一一对号入座,但是举一反三,我想是完全可行的。一、概念物理地址(physicaladdress)用于内存芯片级的单元寻址,与处理器和CPU连接的地址总线相对应。——这个概念应该是这几个概念中最好理解的一个,但是值得一提的是,虽然可以直接把物理
[内存管理] Linux内存管理大图(第三稿)
Linux内核的书买了不少了,一直没看,这两天开始认真学习。对于内核中最复杂的内存管理部分,根据自己的理解画了张大图。高端内存映射那还没完全搞明白,基本空着,等以后搞懂了再改,也请各位多指教。文章来源CU社区:[内存管理]Linux内存管理大图(第三稿)
内核netfilter处理问题(暨packet接受与NAPI介绍)
我认为,一个数据报在netfilter处理的过程中,一直是在softirq中进行的,因此,不可能被其他softirq打断,如果在一个netfilter的动作,也即target中,直接调用dev_queue_xmit()来发送自己构造的数据报,会出现内存泄漏吗?内核中,一个最为接近的类似的处理是ipt
Netfliter状态跟踪之动态协议的实现浅析(tftp实现)
之所以叫“浅析”,主要是分析其流程,很多细节的地方没有一一注解出来,之所以以tftp为范本来剖析,主要是因为它简单,呵呵,这篇贴子,作为旧贴http://bbs.chinaunix.net/viewthread.php?tid=815129&extra=page%3D1%26filter%3
网络代码学习第二部分:网络子系统在IP层的收发过程剖析
网络代码学习第二部分:网络子系统在IP层的收发过程剖析文章来源CU社区:网络代码学习第二部分:网络子系统在IP层的收发过程剖析
我自己分析内核tc的一点心得(5)
sch_dsmark.c和cls_tcindex.cdiffserv是一个体系,需要一个有若干个路由和一定规模的网络来协作实现,就单个主机来说用处不大.在这个网络中,大家都遵守同样的diffserv协定,例如哪个dsfield的优先级高,哪个低,以及怎样处理等.这里引入了域的概念,就是遵守某一dif
我自己分析内核tc的一点心得(4)
关于sch_ingress.chttp://bbs.chinaunix.net/viewthr...p;highlight=qtdszws使用ingress的内核处理流程tcqdiscadddeveth0handleffff:ingresstcfilteradddeveth0parentffff:p
我自己分析内核tc的一点心得(3)
scsch_prio队列规则的分析cls_u332分类器的分析cls_fw分类器的分析文章来源CU社区:我自己分析内核tc的一点心得
我自己分析内核tc的一点心得(2)
其实我前段时间才真正开始研究网络。以前看过情景分析,把socket层基本搞清楚。往下是inetsocket层,也不是很难。再往下就是传输层,TCP/UDP,虽然看过TCP/IP详解的一,二卷本,但仍一头雾水,看不懂(原因估计是太庞大,又盘根错节)。决定再从下往上。先看了net/core/*.c,许多
我自己分析内核tc的一点心得(1)
包括tcqdiscadddeveth0rootsfq的内核流程sch_sfq.c文件分析tbf的原理sch_tbf.c的分析文章来源CU社区:我自己分析内核tc的一点心得
如何让 linux 包转发达到 40万pps,尝试中!
问题:1000Kpps,好像有点难度哦,cisco2600我记得就那么几十Kpps解答(多种解答):1000MBps线速才148.8Wpps,你这个100Wpps快达到千兆线速了,X86构架是没戏的,只能考虑NP构架了问题:148.8Wpps是怎么来的?X86的限制在哪里呢?解答:包转发线速的衡量标
Hacking the Linux Kernel Network Stack(译本)(2)
HackingtheLinuxKernelNetworkStack(译本[chp5-end])第五章NetFilter钩子其他可能的用法在这里我将会就Netfilter在其它方面的更有趣的应用给你作一些建议。在5.1我会给你提供一些思想源泉。5.2节将会讨论并提供能运行的代码,这个代码使一个基于内核
Hacking the Linux Kernel Network Stack(译本)(1)
深入Linux内核网络堆栈作者:bioforgealkerr@yifan.net原名:<<HackingtheLinuxKernelNetworkStack>>翻译,修改:duanjigang<duanjigang1983@126.com>翻译参考:raodan(
Netfilter源码分析(9)
/*kendo2006-4-2修正原来对target部份描述不完全的情况*/filter表的内容,还剩下三个内容:1、target的匹配;2、每个模块的target/match等函数的实现;3、内核与用户空间的交互;这里,以target的匹配做为2005的的结尾吧(因为明天飞贵州,估计2005年是没