03 2013 档案
摘要:前言: 在16位环境下,int/unsigned int 占16位,long/unsigned long占32位 在32位环境下,int占32位,unsigned int占16位,long/unsigned long占32位 何时需要使用: long 和 int 范围是[-2^31,2^31),即-2147483648~2147483647,而unsigned范围是[0,2^32),即0~4294967295,所以常规的32位整数只能够处理40亿左右,当遇到比40亿大的多的数就要用到64位。 64位使用范围: 不同的编译器对64位整数的扩展有所不同,VC使用__int64/un...
阅读全文
摘要:TCP 是一个面向连接的协议,无论哪一方向另一方发送数据之前,都必须先在双方之间建立一条连接。本节将详细讨论一个TCP 连接是如何建立的以及通信结束后是如何终止的。建立一个 TCP 连接 TCP使用三次握手 ( three-way handshake ) 协议来建立连接,图 3-10 描述了三次握手的报文序列。这三次握手为:请求端(通常称为客户)发送一个 SYN 报文段( SYN 为 1 )指明客户打算连接的服务器的端口,以及初始顺序号( ISN )。服务器发回包含服务器的初始顺序号的 SYN 报文段( SYN 为 1 )作为应答。同时,将确认号设置为客户的 ISN 加 1 以对客户的 SY.
阅读全文
摘要:http://blog.csdn.net/wjtxt/article/details/6598925从TCP协议角度来看,一个已建立的TCP连接有两种关闭方式,一种是正常关闭,即四次挥手关闭连接;还有一种则是异常关闭,我们通常称之为连接重置(RESET)。 首先说一下正常关闭时四次挥手的状态变迁,关闭连接的主动方状态变迁是FIN_WAIT_1->FIN_WAIT_2->TIME_WAIT,而关闭连接的被动方的状态变迁是CLOSE_WAIT->LAST_ACK->TIME_WAIT。在四次挥手过程中ACK包都是协议栈自动完成的,而FIN包则必须由应用层通过closesoc
阅读全文
摘要:今天在看C语言编码转换时,既然对负数的二进制表示有些遗忘,查了下网上的资料,他们说的是个P!误人子弟!和大家讨论了下,贴出来已备在此遗忘:假设有一个 int 类型的数,值为5,那么,我们知道它在计算机中表示为:00000000 00000000 00000000 000001015转换成二制是101,不过int类型的数占用4字节(32位),所以前面填了一堆0。现在想知道,-5在计算机中如何表示? 在计算机中,负数以原码的补码形式表达。什么叫补码呢?这得从原码,反码说起。 原码:一个正数,按照绝对值大小转换成的二进制数;一个负数按照绝对值大小转换成的二进制数,然后最高位补1,称为原码。比如 00
阅读全文
摘要:1.显示: 1.1、工具栏里有个黄色小笔的图标,点一下就好了 1.2、打开对话框windows->preference,在左上角输入mark Occurrencs 把右边都选上就Ok了。2.更改颜色: 打开对话框windows->preference,在左上角输入Annotations。选中右边的Occurences可以修改颜色。
阅读全文
摘要:DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)是IETF为实现IP的自动配置而设计的协议,它可以为客户机自动分配IP地址、子网掩码以及缺省网关、DNS服务器的IP地址等TCP/IP参数。了解DHCP工作过程可以帮助我们排除有关DHCP服务遇到的问题。DHCP 协议是基于UDP层(这也就是说在snort检测过程中,只能看UDP的包)之上的应用,dhcp使用udp携带报文,udp封装在ip数据包中发送。我们先来看下dhcp报文格式OP:若是client送给server的封包,设为1,反向为2;Htype:硬件类别,ethernet为1;Hle.
阅读全文
摘要:TCP协议三次握手过程分析http://www.cnblogs.com/rootq/articles/1377355.htmlTCP(Transmission Control Protocol) 传输控制协议TCP是主机对主机层的传输控制协议,提供可靠的连接服务,采用三次握手确认建立一个连接:位码即tcp标志位,有6种标示:SYN(synchronous建立联机) ACK(acknowledgement 确认) PSH(push传送) FIN(finish结束) RST(reset重置) URG(urgent紧急)Sequence number(顺序号码) Acknowledge number
阅读全文
摘要:非本人作也!因非常经典,所以收归旗下,与众人阅之!原作者不祥!堆和栈的区别 一、预备知识—程序的内存分配 一个由c/C++编译的程序占用的内存分为以下几个部分 1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。 2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收 。注意它与数据结构中的堆是两回事,分配方式倒是类似于链表,呵呵。 3、全局区(静态区)(static)—,全局变量和静态变量的存储是放在一块的,初始化的全局变量和静态变量在一块区域, 未初始化的全局变量和未初始化的静态变量在相邻的
阅读全文
摘要:这两个名字不同当然所代表的意思也就不同。我刚开始看到这就吓到了,主要是中文太博大精深了,整这样的简称太专业了,把人都绕晕了。从英文解释或中文全称看就比较容易理解。指针数组:array of pointers,即用于存储指针的数组,也就是数组元素都是指针数组指针:a pointer to an array,即指向数组的指针还要注意的是他们用法的区别,下面举例说明。int* a[4] 指针数组 表示:数组a中的元素都为int型指针 元素表示:*a[i] *(a[i])是一样的,因为[]优先级高于*int (*a)[4] 数组指针 表示:指向数组a的指针 元素表示:(*a)[i] 注意:在实际...
阅读全文
摘要:Recently,Icelebratedanotherbirthday.AsIlookbackathowquicklytimepasses,Iamamazedathowmuchcanchangeinamatterofayear.Ithinkwegothroughcyclesofchange--whenthecompleteunexpectedthrowsyouoffyourequilibrium--givingyoutheopportunitytoreassessandrecalibrate. 不久前我庆祝了又一个生日。回首往事,时间确如白驹过隙,一年之中可以发生怎样的变化啊!我觉得我们在经历
阅读全文
摘要:Configuring ISC DHCPv6 ServerContents[hide]1 Preface1.1 Stateless Configuration1.2 Stateful Configuration2 Installation2.1 Softwaredownload2.2 Sampleconfigurations3 Serverconfiguration3.1 Preconfigurationsteps3.2 Adding the Serverinterface to your Subnet3.2.1 ifconfig3.2.2 ip3.3 The Expected IP Flow
阅读全文
摘要:位运算符C提供了六种位运算运算符;这些运算符可能只允许整型操作数,即char、short、int和long,无论signed或者unsigned。& 按位AND| 按位OR^ 按位异或<< 左移>> 右移~ 求反(一元运算)按位与操作&通常用于掩去某些位,比如n = n & 0177;使得n中除了低7位的各位为0。按位或操作|用于打开某些位:x = x | SET_ON;使得x的某些SET_ON与相对的位变为1。按位异或操作^使得当两个操作数的某位不一样时置该位为1,相同时置0。应该区分位操作符&、|与逻辑操作符&&、||
阅读全文
摘要:泰坦尼克终将沉没,沉没之时,有人无关痛痒,有人迎接新生,唯有科比,将手扶着船舵,直至最后一刻。我不是科比的拥趸,也很少推崇职业体育世界里的所谓情感和忠诚。但在这一幕里,我见到了科比生命里烙刻的紫金颜色。 “湖人是一条进水的船。其他人都能跳船,他们或者可以在夏天离开,或者跟这支球队并没有多少情感。唯有科比,他是这条船的船长,他真正拿湖人当自己的生命,他和湖人一荣俱荣,一损俱损,荣辱与共。无论最终胜负如何,今天这个独臂奋战的科比,真是令人敬佩。评判人的不只是成绩,还有寄托的精神。” 这是一条我在周三解说湖人雷霆之战后发出的微博。24小时之后,被转发超过2万次。我粗略看了看,在一条涉及科比、湖人的.
阅读全文
摘要:C语言数据类型原文:http://zhidao.baidu.com/question/116383335.html?an=0&si=1C语言各种数据类型及其在系统中占的字节和取值范围2009-08-21 09:53C语言包含5个基本数据类型: void, int, float, double, 和 char. (另:C++ 定义了另外两个基本数据类型: bool 和 wchar_t. 一些基本数据类型能够被 signed, unsigned, short, 和 long 修饰所以short,long等等都不算基本数据类型。这是书上说的,所以C++是7种基本数据类型。空值型是一种,但枚举
阅读全文
摘要:Definition:The #define Directive You can use the #define directive to give a meaningful name to a constant in your program. The two forms of the syntax are: Syntax #define identifier token-stringopt #define identifier[( identifieropt, ... , identifieropt )] token-stringoptUsage:1. 简单的define定义#de...
阅读全文
摘要:Hi dear fellows,I want to setup my network in the following way:1)unknown clients get a dynamic address from range A, with router R1, and DNS1 and DNS2.2)known clients (by specific MAC addresses) get a dynamic address from range B, with router R2, and DNS3 and DNS4.3)known clients (by specific MAC a
阅读全文
摘要:笔者的dhcp client 一次在不同的dhcp sever之间切换时 (从10.0.2.× 网段到10.0.9.x网段), 抓包如下:其中的第四个包NAK的数据内容如下:0110 00 00 00 00 00 00 63 82 53 63 35 01 06 36 04 0a ......c. Sc5..6..0120 00 09 01 38 1f 72 65 71 75 65 73 74 65 64 20 61 ...8.req uested a0130 64 64 72 65 73 73 20 6e 6f 74 20 61 76 61 69 6c ddress n ot ava
阅读全文
摘要:Below are some examples which will help you to understand packet filtering better. Again, a word of warning, before performing packet filtering, make sure that you do not run it in promiscuous mode and you have permissions from your employer or you run it in your own network, better if you could cr.
阅读全文
摘要:http://linux.die.net/man/5/dhcpd.confNamedhcpd.conf - dhcpd configuration fileDescriptionThe dhcpd.conf file contains configuration information for dhcpd, the Internet Systems Consortium DHCP Server.The dhcpd.conf file is a free-form ASCII text file. It is parsed by the recursive-descent parser buil
阅读全文
摘要:WIDE-DHCPv6 client configurationThe /etc/config/dhcp6c file controls the WIDE-DHCPv6 client package wide-dhcpv6-client configuration. It defines basic properties and interface settings.SectionsA typical default configuration consists of one dhcp6c section with common settings and one or more interfa
阅读全文
摘要:http://technet.microsoft.com/en-us/library/cc757291%28v=ws.10%29.aspx#BKMK_54http://technet.microsoft.com/en-us/library/cc740203%28v=ws.10%29.aspx#BKMK_6---------------------------------The netsh interface ipv6 command context contains many commands that are useful for analyzing the current IPv6 con
阅读全文
摘要:关键字: c语言,数据类型,32位,64位1、概述 C语言有一些非常基本的数据类型,正是这些基本类型让我们可以延伸了无限的用户自定义类型,本文主要介绍了 int, size_t, time_t, long, long long int 等基本数据类型在Linux32 及 Linux64 的使用情况。表面看上去,这些类型确实太基础太简单,似乎没啥可讲的,实事似乎也是如此,用过C的对这些都已经非常熟悉了,这还用讲?在PC 64位机器 出来之前,我们确实不用太关注这些,因为在32位机上编程,似乎很少出现过什么问题,但64位机出来了,象Linux 也支持64位机器,问题就来了,为什么?因为它们的长度.
阅读全文
摘要:http://kb.cnblogs.com/page/171286/Aaron Stannard 是新创公司 MarkedUp 的CEO,他最近花费大量时间雇佣、评估很多不同的程序员,并和他们一起协作。在这个过程中他发现并总结了十种程序员无法意识到自己潜力的原因,意在让更多程序员发掘出自己的潜力,从而成为强大的程序员。 Aaron 提到,他的公司中所使用的技术非常复杂,某些大型企业都很难掌握,所以对于想要加入团队的程序员来说,入门门槛非常高。因此,尽管他们非常仔细地雇佣新人,但还是很难找到足够天才的程序员。于是,他总结出十种阻碍程序员职业生涯发展的行为,并据此来帮助想要提升自身的平凡的程序员.
阅读全文
摘要:单播、多播和广播单播”(Unicast)、“多播”(Multicast)和“广播”(Broadcast)这三个术语都是用来描述网络节点之间通讯方式的术语。那么这些术语究竟是什么意思?区别何在?1.单播:网络节点之间的通信就好像是人们之间的对话一样。如果一个人对另外一个人说话,那么用网络技术的术语来描述就是“单播”,此时信息的接收和传递只在两个节点之间进行。单播在网络中得到了广泛的应用,网络上绝大部分的数据都是以单播的形式传输的,只是一般网络用户不知道而已。例如,你在收发电子邮件、浏览网页时,必须与邮件服务器、Web服务器建立连接,此时使用的就是单播数据传输方式。但是通常使用“点对点通信”(Po
阅读全文
摘要:生成一个可执行的文件通常需要经过以下几个步骤:预处理你的源代码,去掉注释,以及其他技巧性的工作就像在 C 中展开宏。检查代码的语法看你是否遵守了这个语言的规则。如果没有,编译器会给出 警告。把源代码转换为汇编语言 ── 和机器代码很相似, 但是在一定情况下我们仍然可以理解。 [1]把汇编语言转换为机器语言──是的,我们在说位元和字节,就是1和0。检查你是否准确地使用了函数和全局变量类似的东西。例如,如果你调用了一个不存在的函数,编译器就会给出警告。如果你是从多个源代码文件编译,就要学会如何把这些文件组合到一起。把产生出来的东西用系统的运行装载器装入内存并运行。最后,把可执行文件写入文件系统。
阅读全文