以太网数据链路层协议分析
摘要:一.局域网的几种协议,主要包括以太网第二版、IEEE802系列、令牌环网和SNAP等!1.以太网(V2)以太网第二版是早期的版本,是由DEC、Intel和Xerox联合首创,简称DIX。帧格式如下图:前导信息:采用1和0的交替模式,在每个数据包起始处提供5MHZ的时钟信号,以充许接收设备锁定进入的位流。目标地址:数据传输的目标MAC地址。源 地 址:数据传输的源MAC地址。以太网类型:标识了帧中所含信息的上层协议。数据加填充位:这一帧所带有的数据信息。(以太网帧的大小是可变的。每个帧包括一个1 4字节的报头和一个4字节的帧校验序列域。这两个域增加了1 8字节的帧长度。帧的数据部分可以包括从4
阅读全文
posted @
2012-07-31 13:47
百万军中
阅读(1425)
推荐(0)
8B10B编码详解
摘要:8B/10B,也叫做8字节/10字节或8B10B。8B/10B方式最初由IBM公司于1983年发明并应用于ESCON(200M互连系统),由Al Widmer和Peter Franaszek在IBM的刊物“研究与开发”上描述。 8b/10b编码的特性之一是保证DC 平衡,采用8b/10b编码方式,可使得发送的“0”、“1”数量保持基本一致,连续的“1”或“0”不超过5位,即每5个连续的“1”或“0”后必须插入一位“0”或“1”,从而保证信号DC平衡,它就是说,在链路超时时不致发生DC失调。通过8b/10b编码,可以保证传输的数据串在接收端能够被正确复原,除此之外,利用一些特殊的代码( 在PC.
阅读全文
posted @
2012-07-30 10:02
百万军中
阅读(12735)
推荐(0)
tcl解释器——C语言
摘要:注:区区做了一点点扩展,让这个小TCL能进行字符串的最最基本操作:连接和单字符提取。。。/**//* Tcl in ~ 500 lines of code by Salvatore antirez Sanfilippo. BSD licensed *//**//* Hacked by Joyer : add '.' and '|' command to support basic string op*/#include <stdio.h>#include <stdlib.h>#include <string.h>enum ..
阅读全文
posted @
2012-07-27 16:55
百万军中
阅读(1222)
推荐(0)
centos6.2 配置ISE12.2
摘要:InstallationSave the downloaded 12.1 archive anywhere (it's just the setup/install files)Extract the archive (right click -> Extract here)Open a terminal (Ctrl + Alt + t), navigate to the folder, and run xsetup as root:cd Xilinx_ISE_DS_Lin_12.1_M.53d.0.4/sudo ./xsetupFollow the instructions i
阅读全文
posted @
2012-07-25 14:07
百万军中
阅读(316)
推荐(0)
mount命令详解
摘要:linux是一个优秀的开放源码的操作系统,可以运行在大到巨型小到掌上型各类计算机系统上,随着 linux系统的日渐成熟和稳定以及它开放源代码特有的优越性,linux在全世界得到了越来越广泛的应用。现在许多企业的计算机系统都是由UNIX系 统、Linux系统和Windows系统组成的混合系统,不同系统之间经常需要进行数据交换。下面我根据自己的实际工作经验介绍一下如何在linux系统 下挂接(mount)光盘镜像文件、移动硬盘、U盘以及Windows网络共享和UNIX NFS网络共享。 挂接命令(mount) 首先,介绍一下挂接(mount)命令的使用方法,mount命令参数非常多,这里主要讲..
阅读全文
posted @
2012-07-25 13:32
百万军中
阅读(210)
推荐(0)
centos6.2 vncserver配置
摘要:一、查看是否安装VNCyum groupinstall "Chinese Support"yumgroupinstall "Desktop"打开配置文件的目录: cd /etc/sysconfig2)编辑配置文件: vi i18n3)用#号把第一行(LANG="en_US.UTF-8")注释掉,其实直接在这行改也是可以的,不过保险点的做法,还是先注释掉,等成功后再删除不迟。在第一行下添加一行新行,输入(LANG="zh_CN.UTF-8"),然后保存文件,重启系统,就能见到亲切的中文啦。好像6.0以后VNC名字由v
阅读全文
posted @
2012-07-25 13:01
百万军中
阅读(2526)
推荐(0)
我也学erlang(六)——列表解析
摘要:列表解析: 列表解析是一种无需使用fun、map、filter创建列表的一种方式。 假设我们有一个列表L, 2> L=[1,2,3,4,5]. 我们要想使L加倍,可以使用前面说过的使用list:map1> list:map(fun(X)->2*X end,L). 也可以使用列表解析4> [2*X || X<-L].[2,4,6,8,10]记号[F(x) || x<-L]代表由F(X)组成的列表,其中X从列表L中获得。下面这个形式就是列表解析最常见的一种形式[X || Qualifier1,Qualifier2……]其中X是表达式,Qualifier是生成器或
阅读全文
posted @
2012-07-25 00:25
百万军中
阅读(2613)
推荐(0)
I/O重定向
摘要:不好意思,今天发现高阶例子的解释中有个错误,同时也修改了一下全文。(2004-4-18) 首先,感谢网中人、r2007、lightspeed等诸位前辈的无私指导!以下的一些结论可能有错,还请各位前辈多多指点,我会及时更正!1、基本概念a、I/O重定向通常与 FD有关,shell的FD通常为10个,即 0~9;b、常用FD有3个,为0(stdin,标准输入)、1(stdout,标准输出)、2(stderr,标准错误输出),默认与keyboard、monitor、monitor有关;c、用 < 来改变读进的数据信道(stdin),使之从指定的档案读进;d、用 > 来改变送出的数据信道(
阅读全文
posted @
2012-07-23 12:15
百万军中
阅读(285)
推荐(0)
C语言中自加与自减效率的思考
摘要:原帖地址:http://out.bitunion.org/thread-10461486-1-2.html在正常的C语言中,使用cpp 代码[复制到剪贴板]for(val=0;val<num;val++)for(val=num;val>0;val--)从表面上看是一样的,通常我们的目的是使循环进行num次。然而在经典的C语言效率的讨论中,往往会有人说“第一种效率较第二种而言较低”。针对这一问题,昨天试图在C99手册上搜索相关说明,但是没有找到。因此我考虑这种效率的差异是由机器执行过程中产生的。至此,我决定通过反汇编的方式分析其中的差异。下面我们进行测试。首先编写一段测试代码,内容较
阅读全文
posted @
2012-07-22 20:03
百万军中
阅读(672)
推荐(0)
nagios的nrpe插件进程无法启动
摘要:部分服务器有时执行nrpe启动命令,执行没问题.可进程起不来.1ps -ef|grep nrpe######看不到nrpe进程.1.原因很大是因为服务器上开启了xinetd. 关闭xinetd进程即可2.因为一般都使用的是-d模式启动的nrpe进程,那么它是独立起的demon进程,所以如果xinetd进程也在的话,nrpe就起不来.3.如果使用-i模式启动,那么就必须要启动xinetd守护进程.12/etc/init.d/xinetd stop /usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -d现在再看, 进程已经启动
阅读全文
posted @
2012-07-22 10:42
百万军中
阅读(1212)
推荐(0)
nrpe简单插件编写
摘要:原文地址:nagios插件编写及使用nrpe执行root命令 - fenghao.cn's Softzone!我的soft空间 - 51CTO技术博客 http://linuxguest.blog.51cto.com/195664/321410http://www.ohlinux.com/archives/632/前言:Nagios是相当不错的监控工具,被称作是“监控之神”,但同样也有“难搞死”头衔。发挥Nagios一切魅力的都是他的插件,正因为丰富多样的插件让nagios有血有肉。监控的内容不断在变化,插件也不断变化,默认的一些插件可能越来越不能满足需求,这个时候就要自己来写些插件了
阅读全文
posted @
2012-07-20 00:22
百万军中
阅读(310)
推荐(0)
ubuntu 11.10 安装配置NFS
摘要:nfs服务器在嵌入式开发中非常常用,可以实现主机和开发板共享文件。 1、安装软件包 sudo apt-get install nfs-common nfs-kernel-server rpcbind 2、配置 sudo mkdir /nfs sudo vim /etc/exports 增加下面一行的内容/nfs *(rw,sync,no_root_squash) 注:nfs允许挂载的目录及权限,在文件/etc/exports中进行定义,各字段含义如下: /nfs:要共享的目录 * :允许所有的网段访问 rw :读写权限 sync:资料同步写入内在和硬盘 no_root_squash:n...
阅读全文
posted @
2012-07-18 20:36
百万军中
阅读(257)
推荐(0)
[转载]解决/usr/bin/ld: cannot find -lxxx 问题
摘要:原文地址:http://blog.sina.com.cn/s/blog_4156950c0100sfzz.html问题:在linux环境编译应用程式或lib的source code时常常会出现如下的错误讯息:/usr/bin/ld: cannot find -lxxx这些讯息会随着编译不同类型的source code 而有不同的结果出来如:/usr/bin/ld: cannot find -lc/usr/bin/ld: cannot find -lltdl/usr/bin/ld: cannot find -lXtst其中xxx即表示函式库文件名称,如上例的:libc.so、libltdl.so
阅读全文
posted @
2012-07-18 10:23
百万军中
阅读(292)
推荐(0)
DBI connect() failed: Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock'
摘要:错误代码如下:DBI connect('database=prcasys;host=localhost','prcasys',...) failed: Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2) at ./installdb line 41解决办法:进入perl脚本,在DBI->connect函数内加入正确的sock位置,比如:DBI->connect("DBI:mysql:database=
阅读全文
posted @
2012-07-18 00:27
百万军中
阅读(1293)
推荐(0)
致命错误: mysql/mysql.h:没有那个文件或目录 解决办法
摘要:错误如下:make[sudo] password for XXX: cd ./src && makemake[1]: 正在进入目录 `/home/XXX/ndoutils-1.5.2/src'gcc -fPIC -g -O2 -I/usr/local/mysql/include/mysql -DHAVE_CONFIG_H -c -o io.o io.cIn file included from io.c:11:0:../include/config.h:261:25: 致命错误: mysql/mysql.h:没有那个文件或目录编译中断。make[1]: *** [io.
阅读全文
posted @
2012-07-17 20:26
百万军中
阅读(5262)
推荐(0)
ubuntu源码编译安装mysql-5.5.25a
摘要:最初apt-get install mysql-server安装了一次,版本为5.1,感觉不满意,于是apt-get remove卸载,下载源码编译安装之。谁知道出现了各种各样的错误,什么language啊、*.sock啊、errmsg啊等等,反正很多啊,比较烦google之,发现是两次装的版本不一致导致的。于是find /var /etc | grep "mysql"查找到N多结果,然后把mysql相关的逐个删除(需要甄别)。然后重新安装mysql。1.CMAKE参数参考如下:cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \#
阅读全文
posted @
2012-07-17 19:29
百万军中
阅读(1222)
推荐(0)
mysql-5.5.25a安装:Installation of system tables failed解决办法
摘要:问题描述如下:$:sudo ./scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysqlInstalling MySQL system tables...Installation of system tables failed! Examine the logs in/var/lib/mysql for more information.You can try to start the mysqld daemon with: shell> /usr/local/mysql/bin/mysqld --skip-gra.
阅读全文
posted @
2012-07-17 15:11
百万军中
阅读(3461)
推荐(0)
我也学erlang(五)——简单的列表处理
摘要:简单的列表处理 sum、map函数和测试如下: -module(mylists).-export([sum/1]).-export([map/2]).sum([H|T]) ->H+sum(T);sum([]) ->0.map(_,[]) ->[];map(F,[H|T]) ->[F(H)|map(F,T)].sum函数只是简单的计算列表中各个元素之和;map/2函数第一个子句对空列表不做任何处理,第二个子句对一个列表生成一个新的列表,其头是F(H),尾是map(F,T).5> L=[1,3,7]. [1,3,7]6> mylists:sum(L...
阅读全文
posted @
2012-07-16 19:13
百万军中
阅读(229)
推荐(0)
我也学erlang(四)
摘要:定义自己的控制流程(for) Erlang没有for循环,我们先定义一个:-module(loop_for).-export([for/3]).for(Max,Max,F) ->[F(Max)];for(I,Max,F) ->[F(I)|for(I+1,Max,F)].就这么简单,例如,对for(1,10,F)求值会生成列表[F(1),F(2),……F(10)]。现在有了一个for循环,可以用它来创建1到10的整数列表和平方列表2> loop_for:for(1,10,fun(I)->I end).[1,2,3,4,5,6,7,8,9,10]3>...
阅读全文
posted @
2012-07-16 18:50
百万军中
阅读(170)
推荐(0)
我也学erlang(三)
摘要:开胃菜: 同名不同目的函数:所谓目就是指函数的参数。它们会被认为是两个不同的函数,除了它们的名字恰巧相同之外,它们彼此没有再没有任何联系。正题:fun: fun就是一个匿名函数,所谓匿名,是因为它没有名字。我们来做点实验,先定义一个fun函数,然后把它赋给Z。 11> Z=fun(X)->2*X end.#Fun<erl_eval.6.111823515>当定义fun函数时,系统通常会打印出来一串奇怪的数字,先不用管他。输入:12> Z(2).4fun可以拥有任意数量的参数。比如:13> Hypot=fun(X,Y)->math:sqrt(X*X+Y*
阅读全文
posted @
2012-07-14 23:57
百万军中
阅读(165)
推荐(0)
我也学erlang(二)
摘要:函数: 举例如下:-module(geometry).-export([area/1]).area({rectangle,Width,Ht})->Width*Ht;area({circle,R}) ->3.14159*R;area({square,X}) ->X*X. area函数有两个子句组成,子句间以分号分割,最后一条子句以句号结束。每一个子句都有一个函数头和一个函数体,函数头由函数名和随后以括号括起来的模式组成,函数体则由一系列表达式组成,如果函数头中的模式与调用参数匹配成功的话,其对应的表达式就会计算。模式将会按照它们出现在函数定义中的先后顺序进...
阅读全文
posted @
2012-07-14 23:13
百万军中
阅读(223)
推荐(0)
我也学erlang(一)
摘要:1.数据类型(可以这么叫吧?)整数、浮点数等常规原子类型: 使用:全局有效,无需定义,可以使用单引号扩起来; 含义:一个原子的值就是原子自身。如: 1>hello. hello 讨论原子的值,多少有些奇怪,但是erlang是一个函数式语言,每一个表达式必须有值,整数和原子这样简单类型也不例外。元组: 含义: 类似C语言的结构,除了元组是匿名的之外,它们之间相差无几。比如: 创建一个point,P={10,45},创建了一个元组并将其绑定到变量P。通常也可以这样定义:{point,10,45}。 元组可以嵌套。比如想表达一个人信息的某些方面,{person...
阅读全文
posted @
2012-07-13 23:57
百万军中
阅读(285)
推荐(0)
Can't locate IPC/Run.pm in @INC
摘要:编译perl,出现错误如下:Can't locate IPC/Run.pm in @INC (@INC contains: /etc/perl /usr/local/lib/perl/5.12.4 /usr/local/share/perl/5.12.4 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.12 /usr/share/perl/5.12 /usr/local/lib/site_perl .) at ./check_ipmi_sensor line 35.解决方法:原文参考:http://nets.ucar.edu/nets/i
阅读全文
posted @
2012-07-10 16:21
百万军中
阅读(6000)
推荐(0)
ubuntu:configure error:cannot find ssl libraries
摘要:首先安装SSL库,openssl或者libssl:sudo apt-get install opensslsudo apt-get install libsslconfigure的时候加上选项:./configure --with-ssl=/usr/bin/openssl --with-ssl-lib=/usr/lib/x86_64-linux-gnu(可能64位和32位有所不同)
阅读全文
posted @
2012-07-09 15:42
百万军中
阅读(1483)
推荐(0)
insmod: error inserting 'hello.ko': -1 Invalid module format
摘要:1, make xconfigGeneral setup---->>>local version -append to kernel release: 在这儿添加下面内容-170.2.117.fc10.i686or modify ./.config file:## General setup#CONFIG_EXPERIMENTAL=yCONFIG_LOCK_KERNEL=yCONFIG_INIT_ENV_ARG_LIMIT=32CONFIG_LOCALVERSION="-170.2.117.fc10.i686".config配置文件在内核树的根目录中,有一
阅读全文
posted @
2012-07-08 10:52
百万军中
阅读(1096)
推荐(0)
linux CentOS普通用户无法从ssh登录解决方案
摘要:找到/etc/security/access.conf 文件,把默认是-:ALL EXCEPT root :tty1改成-:ALL EXCEPT root yourusername:ALL
阅读全文
posted @
2012-07-06 19:05
百万军中
阅读(995)
推荐(0)