05 2013 档案
摘要:GCC(GNU Compiler Collection,GNU编译器集合),是一套由 GNU 开发的编程语言编译器。GCC原本作为GNU操作系统的官方编译器,现已被大多数类Unix操作系统(如Linux、BSD、Mac OS X等)采纳为标准的编译器,现在已可处理C、C++、 Fortran、Pas...
阅读全文
摘要:内存分区一个由C/C++编译的程序占用的内存分为以下几个部分栈区(stack):由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。堆区(heap):一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收 。注意它与数据结构中的堆是两回事,分配方式倒是...
阅读全文
摘要:select和epoll属于I/O多路复用模型,用于持续监听多个socket,获取其IO事件。select(轮询)该模型轮询各socket,不管socket是否活跃,随着socket数的增加,性能逐渐下降。#include #include int select (int maxfdpl, fd_s...
阅读全文
摘要:TCP编程示例图:头文件:常用头文件"arpa/inet.h", "sys/socket.h","netinet/in.h"函数原型:int socket(int family, int type, int protocol)family:通信协议族,IP protocol family为AF_IN...
阅读全文
摘要:TCP三路握手(SYN、ACK):TCP终止连接(四次握手,2个FIN、2个ACK):TCP的TIME_WAIT状态:Who-主动关闭方,When-接收到被动端的FIN,Why-实现终止TCP全双工连接的可靠性(可能需要重发ACK)/允许老的重复分节在网络中消失,How Long-2MSL(1m-4...
阅读全文