摘要:
在编译一个大型项目的时候,往往有很多目标文件、库文件、头文件以及最终的可执行文件。不同的文件之间存在依赖关系(dependency)。比如当我们使用下面命令编译时:$gcc -c -o test.o test.c$gcc -o helloworld test.o可执行文件helloworld依赖于t 阅读全文
摘要:
1. 共享内存 共享内存 - 内核管理一块物理内存,允许不同的进程访问,媒介就是 物理内存,最快的IPC。 编程步骤: 1 先获得key。 key_t key = ftok(); 2 创建/获取内部ID。 int shmid = shmget(key,flags); 3 挂接(映射)共享内存 shm 阅读全文
摘要:
TCP和UDP TCP是 有连接协议(基于连接的协议),想要数据交互必须保持连接,会给服务器带来很大的压力。好处就是 可以重发一切错误数据,因此TCP的数据一定是正确和完整的。 UDP是 无连接协议,平时不保持任何的连接,服务器压力较小。缺点就是不会主动重发错误数据,因此有可能丢失数据。UDP也可以 阅读全文
摘要:
网络编程(2) 网络编程需要使用通信地址 sockaddr_in,其中的端口和IP都要做转换,端口要从本机格式转网络格式,IP要从点分十进制转十六进制。函数: htons() - 本机 转 网络 inet_addr() - 点分十进制 转 十六进制 ntohs() - 网络 转 本机(从网络取数据到 阅读全文
摘要:
常见知识点: 1、 网络常识 - IP地址、端口、网络协议、7层模型和4层/5层模型/osi 2、 7层模型: 物理层、数据链路层、网络层、传输层、会话层、表现层、应用层 3、 协议 在网络中,有很多的规范(数据交互),这些规范叫做协议。 常见协议: http - 超文本传输协议(互联网基础协议) 阅读全文