自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

奔跑的路

要么行走在路上,要么静思于眼下。

  • 博客(10)
  • 资源 (65)
  • 收藏
  • 关注

原创 linux设备模型——总线,驱动,设备间的关系

设备模型之kobject,kset及其关系关于linux设备模型kobject,kset,ktype设备驱动基础0:设备模型之kobject,kset及其关系 设备模型之总线,驱动,设备Linux驱动之bus_register分析Linux设备管理(一)_kobject, kset,ktype分析

2017-07-17 09:11:43 1207

原创 学习Linux-4.12内核网路协议栈(1.8)——网络设备驱动模块的加载

1.了解PCI总线说到网络设备驱动,就不得不说PCI总线,但是这个话题可深可浅,而且网上的资料也是一大堆(比如),但是对于我们来说,目前并不需要掌握很深,下面是网上找的两张最基本的PCI工作结构图,虽然PCI总线上可以挂接不同种类的设备,但我们这里只要了解网络设备就够了,所以我更偏好第二张图,它够简单,也够直观。      关于PCI总线,这里主要介绍两个结构体,一个是

2017-07-16 19:32:28 2467

原创 学习Linux-4.12内核网路协议栈(1.7)——网络设备的初始化(struct net_device)

在linux的网络设备里,其中一个最关键的结构体应该要算net_device了,它由对应的网络设备驱动进行创建和初始化,服务于内核网络子系统。struct net_device这个结构体比较大,在了解它之前,我们先看一下它的注释:1433 /**1434  *  struct net_device - The DEVICE structure.1435  *      Actu

2017-07-16 19:21:19 8873

原创 学习Linux-4.12内核网路协议栈(1.6)——协议栈的初始化(inet_init实现过程)

这篇文章主要分析inet_init()函数的实现过程:1796 static int __init inet_init(void)1797 {1798 struct inet_protosw *q;1799 struct list_head *r;1800 int rc = -EINVAL;18011802 sock_skb_cb_check_siz

2017-07-14 14:57:03 1309

原创 学习Linux-4.12内核网路协议栈(1.5)——协议栈的初始化(inet_init主要数据结构)

前面了解到网络初始化申请了两块skb高速缓存和创建了一个/proc/net/protocols文件,现在开始重头戏,网络协议栈的初始化。这篇文章主要介绍网络栈中使用到的主要数据结构。网络协议栈的内核实现和理论上的分层有些不一样,在代码里面的分层如下图:开始前,先回顾一下应用层socket函数的调用,它会创建一个socket并返回对应的描述符:int sock

2017-07-09 21:37:52 1861

原创 学习Linux-4.12内核网路协议栈(1.4)——协议栈的初始化(proto_init)

这篇文章主要分析proto_init过程,它完成协议相关proc文件的创建3241 static __net_initdata struct pernet_operations proto_net_ops = {3242 .init = proto_init_net,3243 .exit = proto_exit_net,3244 };324

2017-07-09 10:42:28 1596

原创 学习Linux-4.12内核网路协议栈(1.3)——协议栈的初始化(sock_init)

static int __init sock_init(void){ int err; /* * Initialize the network sysctl infrastructure. */ err = net_sysctl_init(); if (err) goto out; /* *

2017-07-06 23:11:45 1659

原创 学习Linux-4.12内核网路协议栈(1.2)——协议栈的初始化(sk_buff)

sk_buff 是网络数据包的承载,是最关键的结构体之一/** * struct sk_buff - socket buffer * @next: Next buffer in list * @prev: Previous buffer in list * @tstamp: Time we arrived/left * @rb

2017-07-06 18:47:08 2327

原创 学习Linux-4.12内核网路协议栈(0)——前言

当决定开始写这个系列文章的时候,就意识到这可能会是个漫长的过程,也可能是个短暂的过程(如果自己中途放弃的话)。最近一段时间零零散散在了解内核网路协议栈相关的东西,有时候觉得好难,有时候觉得也就那么回事,这种感觉反反复复持续了一段时间,直到现在可以较为平静的面对这些问题的时候,决定对网络协议栈的学习做个梳理和记录,下面是阅读到的一些书籍:TCP IP详解卷1:协议 原书第2版

2017-07-03 17:46:12 3076

原创 学习Linux-4.12内核网路协议栈(1.1)——系统的初始化(do_initcalls)

我们知道,不管在什么样的平台上启动linux,它的开始都是以start_kernel()进行系统的初始化,当然网络协议栈的初始化也是在这个过程中完成,下面从start_kernel()开始跟踪:start_kernel() --> rest_kernel() --> kernel_thread(kernel_init, NULL, CLONE_FS) --> kernel_init_freea

2017-07-03 17:42:34 2518

linux shell vim

自己写的一个简单的ppt介绍shell和vim里面的一些东西

2016-07-11

eap peer state machine

eap peer state machine是我自己画的一个状态机图

2016-07-09

802.1x std 2004+2010

IEEE官方发布的802.1X标准,英文版,未翻译

2016-07-04

wps packages

wps 抓包以及分析, 包括多种设备之间的wps 连接

2016-06-08

Wi-Fi Simple Configuration Technical Specification Version 2.0.5

2016-05-29

interrupt code

interrupt code

2015-11-20

script.rar

shell脚本练习.rar

2015-10-28

S3C2440

S3C2440-32位CMOS单片机

2015-10-22

arm-linux-gcc-4.4.3.tar.gz

arm-linux-gcc-4.4.3.tar.gz

2015-09-30

uboot-2015-10

u-boot-2015.10-rc1.tar.bz2

2015-09-30

sed awk讲解资料全集

想学好sed和awk吗, 被别人复杂的sed和awk神奇和高效惊叹了吗,想知道其中的原因吗, 这里我搜集了讲解sed和awk全面的资料,让你自如的完成想要的操作,字符串的操作没有你办不到

2015-06-11

精通UNIX Shell脚本编程 第二版 免费 包含脚本文件

精通UNIX Shell脚本编程 第二版 免费 真正的第二版,不拿第一版忽悠大家, 清晰 最好用的shell书籍,最全面的shell介绍

2015-06-11

vim实用技巧 免费

vim实用技巧 免费

2015-05-27

ultraedit配置

ultraedit配置

2015-03-13

EAP状态机.pdf

描述 hostapd中eap实现的状态机转移过程和一些基本概念

2014-12-23

vim配置收集

自己整理的vim配置,将多个大神推荐的vim配置copy过来整理的

2014-12-15

最全的vim配置

收集了多家vim的配置,总结在了一起,有些功能没有开启需要时,在使用中自己打开以下就好,里面有好多可以现成使用的插件。

2014-12-15

firewall防火墙讲解

自己做了一个讲解防火墙墙的ppt,介绍了iptables和netfilter的关系,c代码的实现和规则发打包向内核的提交等

2014-12-02

防火墙的介绍与实现

自己写的一个介绍关于防火墙的ppt,里面讲讲解了iptables和netfilter的关系,语法以及c代码封装iptables规则的方法与过程。

2014-12-02

PPP通信讲解

自己写的一个关于ppp的讲解ppt,涉及ppp通信连接大多数过程,有一部分代码剖析

2014-12-02

MP3播放器 c实现

MP3播放器 c实现

2014-10-09

linuxC函数手册

linuxC函数手册

2014-09-09

xcap_1_0_4网络数据包修改与发送工具

xcap_1_0_4网络数据包修改与发送工具

2014-09-05

netmint一个好用的网络发包工具

一个好用的网络发包工具

2014-09-04

xcap一个好用的网络发包工具

xcap一个好用的网络发包工具

2014-09-04

netcat-0.7.1.tar.gz

netcat This is a tool generating packets with the user-specified source port to user-specified destination IP address and port number. It can also listen on the user-specified ports. http://netcat.sourceforge.net

2014-09-04

GitHubSetup

经过这么长时间理论知识的熏陶,想必大家早已跃跃欲试了,那么我们在Git Hub上建立一个开源项目作为实战演习吧。Git Hub是全球最大的Git服务器供应商,每个帐号有100M的免费使用空间,网址是:https://github.com/   首先我们在Git Hub上创建一个帐号,按照上面指导的方法设置好你的认证信息(每次提交代码都会需要这个认证信息)   然后,如下图新建一个项目(选择Create a New Repository),名叫git usage Git使用技巧篇(2)(图二)   在服务器端,你可以看到这个项目的信息,包括项目源代码的URL,如下图 Git使用技巧篇(2)(图三)   在本地使用如下的命令,就可以完成你的第一次提交了:   mkdir git-usage(创建项目目录) cd git-usage(进入项目目录) git init(Git初始化) touch README(创建一个README文件) git add README(增加该文件到索引) git commit -m 'first commit'(本地提交) git remote add origin git@github.com:phoenixtoday/git-usage.git(增加远程服务器代码库地址) git push origin master(将本地代码提交到远程服务器上)

2014-08-31

UNIX、linux编程实践教程光盘.rar

历经了几十年,至今仍是主流的操作系统。本书通过解释Unix的工作原理,循序渐进...

2014-08-28

一个比较好用的vim配置

这是我自己写了一个vimrc文件,里面的功能比较多,好多配置方法可以参考一下

2014-08-25

80211r原理明细

80211r原理明细80211r原理明细80211r原理明细80211r原理明细80211r原理明细

2018-07-01

80211r的无线局域网漫游技术的研究与实现

80211r的无线局域网漫游技术的研究与实现80211r的无线局域网漫游技术的研究与实现80211r的无线局域网漫游技术的研究与实现80211r的无线局域网漫游技术的研究与实现

2018-07-01

嵌入式开发相关书籍

嵌入式开发相关书pdf 嵌入式开发相关书pdf 嵌入式开发相关书pdf

2018-06-03

Linux内核精髓-精通Linux内核必会的75个绝技 完整版

这本书是我少数几个设置了分数限制的书,它是完整版,现在网上的大多数都是mini版本,知道这本书价值的人自然不会因为任何限制而阻碍求知的欲望,因为它物有所值。

2017-03-19

TCP IP详解卷1:协议 原书第2版 压缩二

TCP IP详解卷1:协议 原书第2版 压缩二TCP IP详解卷1:协议 原书第2版 压缩二TCP IP详解卷1:协议 原书第2版 压缩二TCP IP详解卷1:协议 原书第2版 压缩二

2017-03-19

TCP IP详解卷1:协议 原书第2版 压缩一

文件太大,分成两个部分压缩,都要下载下来才能解压

2017-03-19

Linux设备驱动开发详解:基于最新的Linux 4.0内核 高清完整.pdf版下载

Linux设备驱动开发详解:基于最新的Linux 4.0内核.pdf Linux设备驱动开发详解:基于最新的Linux 4.0内核.pdf Linux设备驱动开发详解:基于最新的Linux 4.0内核.pdf

2017-03-12

FIPS PUB 197-2001

FIPS PUB 197-2001是AES加密算法详细介绍,也是官方指定CCMP的加密算法

2016-10-04

windows-use-vim-ctags-and-git

怎么在windows环境下使用vim查看代码 ? 怎么在windows下使用git版本管理工具 ?在网上搜索会搜出个种各样的推荐,有人推荐直接下载一个windows下的vim安装包,或者有人推荐使用source insight,notpad++, sublime, ultraedit 或其他IDE工具等等,但是我尝试了使用这些工具查看代码以后,感觉都不习惯,后来才发现自己是个linux中毒患者,用Linux那一套才比较得心应手。但是有时候又需要使用到windows下面的一些应用,所以开始折腾怎么在windows下使用vim+ctags+git,下面是我整理的记录。 windows使用vim

2016-08-25

ctags可执行文件

想在windows使用ctags工具的同学可以直接下载下来,按照解压步骤里面的方法使用就可以了

2016-08-17

shell和vim

shell 和 vim的一些介绍,主要包括PPT和平常的一些东西

2016-07-11

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除