自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(101)
  • 资源 (2)
  • 收藏
  • 关注

原创 c语言模块化编程

1. gcc -shared -fPIC -o hello.so hello.c  :这是动态模块编译选项2.gcc -o hello_dlopen hello_dlopen.c -ldl -export-dynamic: 这是主程序编译选项

2015-06-02 17:42:32 788

转载 中断发生时用户堆栈和内核堆栈的切换

如果一个中断产生时任务正在用户代码中执行,那么该中断会引起CPU特权级从3到0的变化,此时CPU就会运行用户态堆栈到内核态堆栈的切换操作。CPU会从当前任务的任务状态段TSS中取得新堆栈的段选择符和偏移量。因为中断服务程序在内核中,属于0级特权级代码,所以48位的内核态堆栈指针会从TSS的ss0和esp0字段中获得。在定位了新堆栈(内核态堆栈)之后,CPU就会首先把原用户态堆栈指针ss和esp压入

2014-07-18 16:57:56 5787

转载 PAUSE帧格式

硬件成本和数据帧处理速度的限制,缓冲拥塞造成的丢帧率大于链路传输中位出错率,因此必须解决缓冲拥塞造成的丢帧问题。以太网流量控制技术:IEEE802.3 将数据链路层分为三层:LLC,MAC控制子层(可选)和MAC(介质访问控制子层)。MAC控制子层 规定了通用的全双工流量控制结构。CSMA/CD实现半双工的流量控制。CSMA/CD基本介绍:端

2013-12-19 16:16:39 10463

转载 TCP快速重传与快速恢复原理分析

转自 http://blog.csdn.net/zhangskd/article/details/7174682超时重传是TCP协议保证数据可靠性的一个重要机制,其原理是在发送一个数据以后就开启一个计时器,在一定时间内如果没有得到发送数据报的ACK报文,那么就重新发送数据,直到发送成功为止。这是数据包丢失的情况下给出的一种修补机制。一般来说,重传发生在超时之后,但是如果发送

2013-12-12 11:32:03 767

转载 linux下查看网络端口占用情况

命令: netstat -tupln 或者 netstat -pln 参数解释:-t : 指明显示TCP端口-u : 指明显示UDP端口-p : 显示进程ID(PID)和程序名称,每一个套接字/端口都属于一个程序.-l  : 仅显示监听套接字 -- 所谓套接字就是使应用程序能够读写与收发通讯协议(protocol)与资料的程序-n : 不进行DNS轮询(可以加速操作) 所有

2013-12-10 16:36:12 1081

原创 v6eval测试问题集锦

ct6:    addr.p2:测试时,如果有错,查看NUT端网卡配置文件,并且注释掉ipv6 global地址。

2013-12-10 13:38:39 1061

转载 tcp sack选项

一般TCP的ACK过程       在TCP的交互过程中,除了第一个SYN请求报文的ACK标志未置1外,其他的报文的ACK标志都是置1的。当客户端与服务器在交互的过程中,某些数据报被丢弃时,其ACK确认和后续数据交互的过程如下图所示: 图 1  一般丢包情况下的ACK确认和后续数据交互的过程示意图       在上图所示的交互过程中,我们可以清楚的发现,在交互中由于某些

2013-12-09 13:48:25 1228

原创 yum更新软件包时卡死

与挂载nfs文件系统有关。

2013-12-08 17:15:33 1899

原创 fedora设置开机自动启动应用程序

command: gnome-session-properties

2013-12-04 15:02:12 1946

转载 PACKET_MMAP实现原理分析

PACKET_MMAP实现的代码都在net/packet/af_packet.c中,其中一些宏、结构等定义在include/linux/if_packet.h中。PACKET_MMAP的实现原理PACKET_MMAP在内核空间中分配一块内核缓冲区,然后用户空间程序调用mmap映射到用户空间。将接收到的skb拷贝到那块内核缓冲区中,这样用户空间的程序就可以直接读到捕获的数据包了。

2013-11-27 10:10:50 3138

转载 RTP/RTCP/RTSP/SIP/SDP

RTPsdfsReal-time Transport Protocol)是用于Internet上针对多媒体数据流的一种传输层协议。RTP协议详细说明了在互联网上传递音频和视频的标准数据包格式。RTP协议常用于流媒体系统(配合RTCP协议),视频会议和一键通(Push to Talk)系统(配合H.323或SIP),使它成为IP电话产业的技术基础。RTP协议和RTP控制协议RTCP一起使

2013-10-29 20:46:49 923

转载 vim配置

手把手教你把Vim改装成一个IDE编程环境(图文)By:吴垠Date:2007-09-07Version:0.5Email:lazy.fox.wu#gmail.comHomepage:http://blog.csdn.net/wooinCopyright:

2013-09-19 16:37:06 486

转载 以太网概述及以太网帧格式

很多人将局域网(Local Area Network,LAN)和以太网(Ethernet)混为一谈,这个误解大概是因为和其他局域网技术比较起来,以太网技术使用得是如此普遍、发展得是如此地迅速,以至于人们将"以太网"当作了"局域网"的代名词。本节将讨论"局域网"和"以太网"二者之间的关系以及相关的一些基础知识。1 以太网概述    1973年,施乐公司(Xerox)开发出了一个设备互

2013-09-17 00:15:09 1554

转载 Linux2.6PCI驱动加载原理

Linux2.6PCI驱动加载原理pci设备上电时,硬件保持未激活状态。设备不会有内存和I/O端口映射到计算机的地址空间。每个PCI主板上都配备有能够处理PCI的BIOS、NVRAM或PROM等固件。这些固件通过读写PCI控制器中的寄存器,提供了对设备配置地址空间的访问。系统引导时,固件在每个PCI设备上执行配置事务,以便为它提供的每个地址区域分配一个安全的位置。当驱动程序访问设备时,它的

2013-08-25 13:42:15 802

转载 mysql命令行使用

一、连接MYSQL格式: mysql -h主机地址 -u用户名 -p用户密码或者: mysql -u 用户名 -p // 回车后要求输入密码,密码不可见1、连接到本机上的MYSQL。首先打开DOS窗口,然后进入目录mysql\bin,再键入命令mysql -u root -p,回车后提示你输密码.注意用户名前可以有空格也可以没有空格,但是如果-p后带有用户密码,那么-p

2013-08-11 15:12:07 788

转载 netlink宏定义

在linux/netlink.h中定义了一些方便对消息进行处理的宏,这些宏包括:#define NLMSG_ALIGNTO 4 #define NLMSG_ALIGN(len) ( ((len)+NLMSG_ALIGNTO-1) & ~(NLMSG_ALIGNTO-1) ) 宏NLMSG_ALIGN(len)用于得到不小于len且字节

2013-08-01 00:09:52 560

转载 global源码阅读

1、下载GLOBALhttp://www.gnu.org/software/global/global.htmlhttp://www.gnu.org/software/global/globaldoc.html2、编译安装./configure --prefix=[your install dir]makemake install

2013-07-23 20:27:09 998

转载 关于中断上下文为什么不能睡眠?

这个问题有很多人问过,我看了下Linux得内核代码,原因如下:(当然我不能保证一定对,如果有牛人理解得更好,欢迎指正)1、 中断处理的时候,不应该发生进程切换,因为在中断context中,唯一能打断当前中断handler的只有更高优先级的中断,它不会被进程打断,如果在 中断context中休眠,则没有办法唤醒它,因为所有的wake_up_xxx都是针对某个进程而言的,而在中断context

2013-07-21 23:59:57 7749 2

原创 v6eval编译问题

Can't locate ExtUtils/MakeMaker.pm in @INC[root@280506 FCGI-0.74]# perl Makefile.PLCan't locate ExtUtils/MakeMaker.pm in @INC (@INC contains: /usr/local/lib64/perl

2013-07-20 09:54:06 1012

转载 Eclipse CDT + QEMU 调试linux内核

有关调试的好处我想大家都不言自明了。本文章摘自原文,但加入了原文中没有说明的一些细节内容。我的系统环境是:Ubuntu 9.10 + eclipse-cpp-galileo-SR1-linux-gtk.tar.gz + QEMU 0.11.0Ubuntu 在安装时,如同大部分 Linux 发行版一样,都会同时安装 GNU 版本的 Java。这个 Java 的实用程度太低,尤其对于开

2013-07-19 21:22:07 988

转载 Eclipse下设置github开发环境

Eclipse下设置github开发环境1.按照github上的指南配置(http://help.github.com/win-set-up-git/)基础的git环境。2.在github上创建一个Repository。3.在Eclipse中通过“Eclipse Marketplaces”,在Market Places里安装egit。4.在Eclipse中生publ

2013-04-13 16:49:14 604

转载 解决win7下vc6.0打开添加文件错误 崩溃

(转)这是VC6.0的一个兼容性问题,可以按官方方法试一下原因:VC与VISIO冲突解决方法:1. 下载FileTool.exe,并解压下载地址http://support.microsoft.com/kb/241396/zh-cn2. 打开VC6.0,点击File-Open Workspace,选择刚解压出来的FileTool.dsw,并确定3. 点击Bulid-Build File

2013-04-03 18:23:56 1114

原创 dropwatch 网络协议栈丢包检查利器

源码:http://git.fedorahosted.org/cgit/dropwatch.git资料博客:http://blog.yufeng.info/archives/2497

2013-03-25 21:13:23 1179

转载 对齐

文章最后本人做了一幅图,一看就明白了,这个问题网上讲的不少,但是都没有把问题说透。  一、概念       对齐跟数据在内存中的位置有关。如果一个变量的内存地址正好位于它长度的整数倍,他就被称做自然对齐。比如在32位cpu下,假设一个整型变量的地址为0x00000004,那它就是自然对齐的。     二、为什么要字节对齐      需要字节对齐的根本原因在于CPU访

2013-03-21 17:14:40 486

转载 拥塞控制

为了防止网络的拥塞现象,TCP提出了一系列的拥塞控制机制。最初由V. Jacobson在1988年的论文中提出的TCP的拥塞控制由“慢启动(Slow start)”和“拥塞避免(Congestion avoidance)”组成,后来TCP Reno版本中又针对性的加入了“快速重传(Fast retransmit)”、“快速恢复(Fast Recovery)”算法,再后来在TCP NewReno中又

2013-03-21 15:38:48 569

转载 windows批处理

批处理文件是无格式的文本文件,它包含一条或多条命令。它的文件扩展名为 .bat 或 .cmd。在命令提示下键入批处理文件的名称,或者双击该批处理文件,系统就会调用Cmd.exe按照该文件中各个命令出现的顺序来逐个运行它们。使用批 处理文件(也被称为批处理程序或脚本),可以简化日常或重复性任务。当然我们的这个版本的主要内容是介绍批处理在入侵中一些实际运用,例如我们后面要提到 的用批处理文件来给系统打

2013-03-20 16:36:23 800

转载 kdump配置

kexec是一个快速启动机制,允许通过已经运行的内核的上下文启动一个Linux内核,不需要经过BIOS。BIOS可能会消耗很多时间,特别是带有众多数量的外设的大型服务器。这种办法可以为经常启动机器的开发者节省很多时间。kdump是一个新的,而且非常可信赖的内核崩溃转储机制。崩溃转储数据可以从一个新启动的内核的上下文中获取,而不是从已经崩溃的内核的上下文。当系统崩溃时,kdump使用kexe

2013-03-20 09:48:05 1225

原创 panic

login: BUG: unable to handle kernel NULL pointer dereference at 00000010IP: [] xfrm_output_resume+0x74/0x130*pdpt = 000000000f4b9001 *pde = 0000000000000000 Oops: 0000 [#1] SMP

2013-03-19 18:04:48 775

转载 linux内存管理

1. 内核初始化:    * 内核建立好内核页目录页表数据库,假设物理内存大小为len,则建立了[3G--3G+len]::[0--len]这样的虚地址vaddr和物理地址paddr的线性对应关系;    * 内核建立一个page数组,page数组和物理页面系列完全是线性对应,page用来管理该物理页面状态,每个物理页面的虚地址保存在page->virtual中;    * 内核建

2013-03-19 10:43:39 482

转载 Linux kernel panic解决方法

Linux kernel panic解决方法kernel panic错误表现kernel panic 主要有以下几个出错提示:Kernel panic-not syncing fatal exception in interruptkernel panic - not syncing: Attempted to kill the idle task!kernel panic -

2013-03-18 14:44:40 1740

转载 minicom使用

===== 一.Minicom介绍 =====       Linux下的Minicom的功能与Windows下的超级终端功能相似,可以通过串口控制外部的硬件   设备.适于在linux通过超级终端对嵌入式设备行管理.同样也可以使用minicom对外置Modem   进行控制.      ===== 二.Minicom的安装 =====      ==== 1.rp

2013-03-18 14:43:38 1109

转载 linux源码阅读

一 linux内核源码阅读工具windows下当然首选source insight, 但是linux下就没有source insight这么优秀的工具了,但是也有不少的替代品,但觉绝对部分人会选择vim+ctags+cscope的组合,还有部分人或选择wine中的 source insight或选择navigatror,当然对于代码阅读来说vim+ctags+cscope的组合还是比较好的

2013-03-13 21:43:33 1092

转载 一些linux资源

linux内核源代码情景分析 非扫描版 上下册合订版 字清楚 带书签 1575页 pdfhttp://download.csdn.net/source/2002579*************************************************************linux设备驱动开发详解 pdf,针对ARM9 s3c2410 经典 宋宝华http://

2013-03-12 19:16:06 730

转载 校验和

报文的IP校验和、ICMP校验和、TCP/UDP校验和使用相同的算法,在RFC1071中定义,网上这方面的资料和例子很多,就不解释算法流程了,而是侧重于在实现的变化和技巧。The checksum algorithm is simply to add up all the 16-bit words in one's complement and then to take the one's c

2013-03-08 11:42:39 8909

转载 RHEL中网卡命名规则

原文出自:http://www.2cto.com/os/201210/159434.htmlvmware克隆centos修改linux mac地址 Device eth0 does not seem to be present, delaying initialization  故障背景: 在vmware workstation中了完全克隆了一个已经存在的centos的虚拟

2013-03-08 10:37:13 1333 1

转载 jxl操作excel

jxl操作excel一、API系列       Jxl的API主要有三个包,jxl,jxl.format,jxl.write.如果单独的分析API,可能对于更明确的了解此API没有太多的帮助,我们还是从Excel文件的层次来剥离此API吧.一个excel文件由一个工作簿组成,一个工作簿又由n个工作表组成.每个工作表又由多个单元格组成.对应于Jxl中的结构为

2013-03-06 18:00:09 1131

转载 以太网基本知识小结

一、概述以太网是应用最为广泛的局域网,包括标准的以太网(10Mbit/s)、快速以太网(100Mbit/s)和10G(10Gbit/s)以太网,采用的是CSMA/CD访问控制法,它们都符合IEEE802.3。常见的802.3应用为:10M:10base-T(铜线UTP模式)100M:100base-TX(铜线UTP模式):100BASE-TX是一种使用5类数据级无屏

2013-03-05 13:48:50 14954

转载 tcp拥塞控制

为了防止网络的拥塞现象,TCP提出了一系列的拥塞控制机制。最初由V. Jacobson在1988年的论文中提出的TCP的拥塞控制由“慢启动(Slow start)”和“拥塞避免(Congestion avoidance)”组成,后来TCP Reno版本中又针对性的加入了“快速重传(Fast retransmit)”、“快速恢复(Fast Recovery)”算法,再后来在TCP NewReno中又

2013-03-04 15:34:29 679

转载 udev

概述:Linux 用户常常会很难鉴别同一类型的设备名,比如 eth0, eth1, sda, sdb 等等。通过观察这些设备的内核设备名称,用户通常能知道这些是什么类型的设备,但是不知道哪一个设备是他们想要的。例如,在一个充斥着本地磁盘和光纤磁盘的设备名清单 (/dev/sd*) 中,用户无法找到一个序列号为“35000c50000a7ef67”的磁盘。在这种情况下,udev 就能动态地在

2013-02-28 22:08:47 840

转载 TCP/IP状态图

这是网络编程的基础,tcp的状态转移图说到底就是一个状态机的不同状态之间的转换关系以及触发这些状态需要的条件,一共存在11个状态,我们来逐一分析:1.CLOSED:起始点,在超时或者连接关闭时候进入此状态。2.LISTEN:svr端在等待连接过来时候的状态,svr端为此要调用socket, bind,listen函数,就能进入此状态。此称为应用程序被动打开(等待客户端来连接

2013-02-27 13:15:40 5682

Linux-Netfilter机制分析

Linux-Netfilter机制分析,值得学习!

2013-01-23

空空如也

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

TA关注的人

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