Linux网络设备驱动编程
摘要:在此仅仅讨论网络设备驱动的一般写法,有关硬件部分的相关代码由于硬件规格不同,予以省略。有什么地方错误,或补充,欢迎大家提出。1, 驱动模块的加载和卸载如果网络设备(包括wireless)是PCI规范的,则先是向内核注册该PCI设备(pci_register_driver),然后由pci_driver数据结构中的probe函数指针所指向的侦测函数来初始化该PCI设备,并且同时注册和初始化该网络设备。如果网络设备(包括wireless)是PCMCIA规范的,则先是向内核注册该PCMCIA设备(register_pccard_driver),然后driver_info_t数据结构中的attach函数
阅读全文
posted @
2014-02-25 15:20
Thomson-Blog
Netfilter分析
摘要:一、概述1.Netfilter/IPTables框架简介 Netfilter/IPTables是继2.0.x的IPfwadm、2.2.x的IPchains之后,新一代的Linux防火墙机制。Netfilter采用模块化设计,具有良好的可扩充性。其重要工具模块IPTables连接到Netfilter的架构中,并允许使用者对数据报进行过滤、地址转换、处理等操作。 Netfilter提供了一个框架,将对网络代码的直接干涉降到最低,并允许用规定的接口将其他包处理代码以模块的形式添加到内核中,具有极强的灵活性。2.主要源代码文件Linux内核版本:2.4.21 Netfilter主文件:n...
阅读全文
posted @
2014-02-25 15:19
Thomson-Blog
转载: Linux内核中netlink协议族的实现
摘要:本文档的Copyleft归yfydz所有,使用GPL发布,可以自由拷贝,转载,转载时请保持文档的完整性,严禁用于任何商业用途。msn: yfydz_no1@hotmail.com来源:http://yfydz.cublog.cn1. 前言netlink协议族是Linux内核网络部分的一个固定部分, 一旦在内核配置中选了网络支持就自动带了而不能单独去掉。netlink的实现源码在net/netlink目录下,主要是net/netlink/af_netlink.c文件。以下内核代码版本为2.6.19.2, 如无特别说明代码取自net/netlink/af_netlink.c。2. 数据结构netl
阅读全文
posted @
2014-02-25 15:08
Thomson-Blog
转载: 高级Linux Kernel Inline Hook技术分析与实现
摘要:一、简述 目前流行和成熟的kernel inline hook技术就是修改内核函数的opcode,通过写入jmp或push ret等指令跳转到新的内核函数中,从而达到修改或过滤的功能。这些技术的共同点就是都会覆盖原有的指令,这样很容易在函数中通过查找jmp,push ret等指令来查出来,因此这种inline hook方式不够隐蔽。本文将使用一种高级inline hook技术来实现更隐蔽的inlinehook技术。 二、更改offset实现跳转 如何不给函数添加或覆盖新指令,就能跳转到我们新的内核函数中去呢?我们知道实现一个系统调用的函数中不可能把所有功能都在这个函数中全部实现,它必定...
阅读全文
posted @
2014-02-25 15:06
Thomson-Blog
转载:Linux netfilter源码分析
摘要:内容基本上来自两篇文章:《Netfilter源码分析》—(独孤九贱http://www.skynet.org.cn/index.php)《Linux Netfilter实现机制和扩展技术》——(杨沙洲国防科技大学计算机学院)一、IP报文的接收到hook函数的调用1.1ip_input.cip_rcv()函数以接收到的报文为例,类似的还有ip_forward(ip_forward.c)和ip_output(ip_output.c)int ip_rcv(struct sk_buff *skb, struct net_device *dev, struct packet_type *pt, stru
阅读全文
posted @
2014-02-25 15:04
Thomson-Blog
【转载】CentOS上搭建Nginx + Mono 运行 asp.net
摘要:安装步骤:一、获取开源相关程序:1、利用CentOS Linux系统自带的yum命令安装、升级所需的程序库:sudo -sLANG=Cyum -y install gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel bison pkgconfig glib2-devel gettext mak
阅读全文
posted @
2013-10-25 09:37
Thomson-Blog
阅读(267)
推荐(0)
Skype 去广告办法!转http://blog.csdn.net/iamvalen/article/details/6995813
摘要:打开 C:\Documents and Settings\用户名\Application Data\Skype 像我的是C:\Documents and Settings\Administrator\Application Data\Skype 里面有个 shared.xml 用记事本打开,<EventServers><Servers>193.88.8.59:12350 194.165.188.76:12350 212.8.163.76:12350 61.135.159.102:12350</Servers></EventServers>修改为&
阅读全文
posted @
2012-04-23 09:09
Thomson-Blog
阅读(2810)
推荐(0)
D-Link DWL-122 Wireless USB Adapter linux HOWTO
摘要:2003.12.22 @ 8:48:47 PMI've got a D-Link DWL122 Wireless USB Adapter this weekend for $29.99. Not only the price was good, but it also stated "Mac OSX supported", which sort of encouraged me to go ahead and give it a try.I asked Mr. Goggle, who told me right away it uses a Prism2 chipset, and that i
阅读全文
posted @
2010-12-07 09:34
Thomson-Blog
阅读(578)
推荐(0)
linux 安装 T400 无线网卡驱动
摘要:硬件: thinkpad t400 11b/g/n Wireless LAN Mini-PCI Express Adapter II 软件:linux 2.6.31-16 驱动下载地址:http://www.thinkwiki.org/wiki/ThinkPad_11b/g/n_Wireless_LAN_Mini-PCI_Express_Adapter_II [3]是32位的;[4]是64位的; 安装源码包: $ sudo apt-get install build-essential linux-source-2.6.31 或 $ sudo apt-get install build-ess
阅读全文
posted @
2010-12-07 09:23
Thomson-Blog
阅读(803)
推荐(0)
精彩Linux 篇章
摘要:编者按:鉴于目前中国Linux的发展现状,90%以上的问题都可以用一句话来回答,这便是本文的初衷。欢迎大家添加自己的“一句话”,收录后注明原始提供者。更详细的文档,请浏览本版精华区或http://sunjava.spymac.net/linux/----------------------------网络无关篇--------------------------0001 修...
阅读全文
posted @
2010-06-25 13:34
Thomson-Blog
阅读(210)
推荐(0)
无法打开Internet站点
摘要:可能的原因有:一、网络设置的问题 这种原因比较多出现在需要手动指定IP、网关、DNS服务器联网方式下,及使用代理服务器上网的。仔细检查计算机的网络设置。二、DNS服务器的问题 当IE无法浏览网页时,可先尝试用IP地址来访问,如果可以访问,那么应该是DNS的问题,造成DNS的问题可能是连网时获取DNS出错或DNS服务器本身问题,这时你可以手动指定DNS服务(地址可以是你当地ISP提供的DNS服务器地...
阅读全文
posted @
2010-03-18 16:04
Thomson-Blog
arp命令使用详解
摘要:arp命令使用详解(1)显示和修改“地址解析协议 (ARP)”缓存中的项目。ARP 缓存中包含一个或多个表,它们用于存储 IP地址及其经过解析的以太网或令牌环物理地址。计算机上安装的每一个以太网或令牌环网络适配器都有自己单独的表。如果在没有参数的情况下使用,则 arp命令将显示帮助信息。 语法 arp[-a [InetAddr] [-N IfaceAddr]] [-g [I...
阅读全文
posted @
2010-03-18 16:03
Thomson-Blog
常用软件广告的去除方法 转载
摘要:常用软件广告的去除方法V2.3.55.2040 正式版1.首先打开:C:\Documents and Settings\Administrator\Application Data\ 目录(这个目录是隐藏属性的)2.再进C:\Documents and Settings\Administrator\Application Data\ppStream目录;3.找到banner目录的br_msg.xm...
阅读全文
posted @
2010-02-08 10:27
Thomson-Blog
阅读(935)
推荐(0)
在linux平台上安装jsp环境:apache,tomcat配置的总结
摘要:所需软件 Apache 2.0.54 下载地址 http://apache.freelamp.com/httpd 下载该文件httpd-2.0.54.tar.gz Tomcat5.5.9 下载地址 http://apache.justdn.org/jakarta/tomcat-5/v5.5.9/bin/ 下载该文件jakarta-tomcat-5.5...
阅读全文
posted @
2010-01-28 17:05
Thomson-Blog
阅读(228)
推荐(0)
Troubleshooting ./configure, make and make install Tutorial
摘要:Sometimes, the typical sequence to compile a program doesn't work.It starts spitting out all kinds of errors and seems to do everythingbut compiling that annoying program already. What to do then? Thi...
阅读全文
posted @
2010-01-19 11:17
Thomson-Blog
阅读(383)
推荐(0)
==================windows 操作系统有2GB内存限制 ================转载
摘要:============================================================windows 操作系统有2GB内存限制WINDOWS平台上扩展SGA 针对32bit的Windows。Windows2000上不能利用超过4G的内存,一般是2G的内存保留给进程,2G内存保留给核心的。在Windows2000 Advanced Server上可以分配3G给进程,...
阅读全文
posted @
2009-12-31 12:18
Thomson-Blog
阅读(603)
推荐(0)
启动Apache
摘要:Windows操作系统中,Apache在Windows NT下一般以服务方式运行,而在Windows 95下则以控制台程序方式运行。详情请参见在Windows下运行Apache。Unix操作系统中,httpd程序作为一个守护进程运行,在后台不断处理请求。本文档描述了如何调用httpd。Apache是怎样启动的 启动时发生的错误 随系统启动 额外信息 Apache是怎样启动的如果配置文件中Liste...
阅读全文
posted @
2009-09-28 17:48
Thomson-Blog
阅读(163)
推荐(0)
configure - 配置源代码树
摘要:configure脚本配置Apache的源代码树并且将其安装到指定的平台上。丰富的选项允许你根据自己的特定状况和特定需求对Apache进行定制。 这个脚本位于源代码树的根目录下,并且只能用于类Unix操作系统。要了解其他平台的信息,参见:针对特定平台的说明文档。语法你必须在源代码树的根目录下调用configure脚本,语法如下:./configure [OPTION]... [VAR=VALUE]...
阅读全文
posted @
2009-09-28 17:47
Thomson-Blog
阅读(418)
推荐(0)
Glibc-2.4.tar.gz的安装
摘要:Glibc-2.4.tar.gz的安装问题一个一个解决1. 现在下面的网站上下载glibc-2.4.tar.gz 和glibc-libidn-2.4.tar.gz (目前不知道为什么要下载这个)http://ftp.gnu.org/gnu/glibc/2. 解压缩[root@RHEL4 programes]# tar zxvf glibc-libidn-2.4.tar.gzroot@RHEL4 p...
阅读全文
posted @
2009-09-04 08:56
Thomson-Blog
阅读(1936)
推荐(0)
为加快速度关闭Linux下不必要的系统服务
摘要:Linux系统在/etc/rc.d/init.d下定义了很多的系统服务向用户提供,默认情况下这些服务大多都是随机启动,但是很多服务是一般不需要的,或者是你没有进行配置就根本不起作用的,但由于设置成随机启动,在内核加载进内存开始运行后会花时间启动这些服务相应的进程从而大大降低开机速度,所以你可以通过关闭这些服务从而加快开机速度。 不同的GNU linux版本的系统服务大都一样,但是也会有一些小区...
阅读全文
posted @
2009-08-05 12:04
Thomson-Blog
阅读(520)
推荐(0)