自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

积水成渊

——————专注linux开发学习。

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

原创 linux下用户程序同内核通信实例一(netlink)

linux下用户程序同内核通信的方式一般有ioctl, proc文件系统,剩下一个就是Netlink套接字了。 这里先介绍下netlink。先抄一段前辈对这几种通信方式的比较:传送门http://blog.csdn.net/tqyou85/article/details/3939931Netlink 是一种在内核与用户应用间进行双向数据传输的非常好的方式,用户态应用使用标准的

2014-04-18 11:50:20 6822 1

转载 用户空间和内核空间通讯之【系统调用】

现在,越来越多的应用程序需要编写内核和用户级代码的程序来一起协作完成具体的任务,而用户与空间和内核空间的通讯也就是一个不可回避的话题了。针对于需要和内核空间通信的具体应用而言,其开发模式和套路相对来说比较固定,主要概括起来有两大步骤:第一步,编写内核服务程序利用内核空间提供的权限和服务来接收、缓存和处理数据;第二步,编写用户程序来和先前的内核服务程序进行交互。具体来说,可以利用用户程序来配

2014-04-17 10:05:14 1710

转载 用户空间和内核空间通讯之【proc文件系统】

今天我们介绍另一种用户内核空间通信的方法:proc文件系统。proc文件系统作为linux提供的一种虚拟文件系统并不占用实际外围存储空间,它仅存在于内存中,系统断电即消失。proc文件系统最开始的设计主要是为满足内核向用户态进程报告其状态而设计,并没有为输入做规定和说明。随着发展,现在的proc文件系统已经演变成一个“用户-内核”空间半双工的通信方式了(虽然目前已经开始有点混乱了,但某些早期开

2014-04-17 10:03:40 1910

转载 用户空间和内核空间通讯之【Netlink 下】

关于Netlink多播机制的用法        在上一篇博文中我们所遇到的情况都是用户空间作为消息进程的发起者,Netlink还支持内核作为消息的发送方的情况。这一般用于内核主动向用户空间报告一些内核状态,例如我们在用户空间看到的USB的热插拔事件的通告就是这样的应用。       先说一下我们的目标,内核线程每个一秒钟往一个多播组里发送一条消息,然后用户空间所以加入了该组的进程都会收到这

2014-04-17 10:02:03 1321 1

转载 用户空间和内核空间通讯之【Netlink 中】

今天我们来动手演练一下Netlink的用法,看看它到底是如何实现用户-内核空间的数据通信的。我们依旧是在2.6.21的内核环境下进行开发。      在文件里包含了Netlink协议簇已经定义好的一些预定义协议:点击(此处)折叠或打开#define NETLINK_ROUTE        0    /* Routing/device hook         

2014-04-17 09:50:35 1328

转载 用户空间和内核空间通讯之【Netlink 上】

分类: LINUX引言         Alan Cox在内核1.3版本的开发阶段最先引入了Netlink,刚开始时Netlink是以字符驱动接口的方式提供内核与用户空间的双向数据通信;随后,在2.1内核开发过程中,Alexey Kuznetsov将Netlink改写成一个更加灵活、且易于扩展的基于消息通信接口,并将其应用到高级路由子系统的基础框架里。自那时起,Netlink就成了

2014-04-17 09:47:14 3142 2

转载 u-boot-2010.12移植到2440

支持内核引导为了让U-boot支持内核引导,需要涉及u-boot和linux内核的配合,u-boot传递启动参数给linux内核。其中以machine ID最为重要,是内核能够正确引导的先决条件。其他参数则通过gd->bd数据结构传递给内核。 1、u-boot的配置和修改首先需要在include\configs\smdk2440.h中加入以下宏定义:#defin

2014-04-17 09:20:27 620

原创 PIM-SM协议初探(三)SPT构建

组播源注册组播源注册的目的是向RP通知组播源的存在。图6 组播源注册示意图如图6所示,组播源向RP注册的过程如下:(1)        当组播源S向组播组G发送了一个组播报文时,与组播源直连的DR在收到该报文后,就将其封装成注册报文,并通过单播方式发送给相应的RP;(2)        当RP收到该报文后,一方面解封装注册报文并将封装在其中的组播报文沿着RPT转发给接收者,

2014-04-11 17:43:10 10482

原创 PIM-SM协议初探(二)RPT构建

构建RPT图5 PIM-SM中构建RPT示意图如图5所示,RPT的构建过程如下:(1)        当接收者加入一个组播组G时,先通过IGMP报文通知与其直连的DR;(2)        DR掌握了组播组G的接收者的信息后,向该组所对应的RP方向逐跳发送加入报文;(3)        从DR到RP所经过的路由器就形成了RPT的分支,这些路由器都在其转发表中生成了(*,G)

2014-04-11 16:30:14 4455

原创 PIM-SM协议初探(一)路由角色选举

PIM是Protocol Independent Multicast(协议无关组播)的简称,表示可以利用静态路由或者任意单播路由协议(包括RIP、OSPF、IS-IS、BGP等)所生成的单播路由表为IP组播提供路由。组播路由与所采用的单播路由协议无关,只要能够通过单播路由协议产生相应的组播路由表项即可。PIM借助RPF(Reverse Path Forwarding,逆向路径转发)机制实现对组播报

2014-04-11 16:28:36 22820

iec61850 源码,已实现接口对接及模型操作回调接口

基于开源IEC-61850源码适配了交换机,目前实现了:1.模型数据接口回调。2. 模型数据后台定时更新。

2021-02-27

quagga文档

quagga 相关文档。同BCM SDK 配合的设计

2014-10-27

1588时钟协议

1588精确时钟协议源代码。可用于移植开发。

2014-04-21

Zebra下的PIM-SM协议

zpimd是 开源路由项目zebra 下的PIM-SM协议无关组播路由协议的稀疏模式实现。 本代码作者是大名鼎鼎的Robert Olsson

2014-04-21

Linux下网卡驱动程序源码分析

Linux下网卡驱动程序源码分析,描述了linux下网卡驱动程序的开发过程

2012-09-18

空空如也

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

TA关注的人

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