<网络> 基础(库 网络分层模型)
一.库:分为静态库和动态库
1.静态库:在链接阶段 将代码完整拷贝到exe中
①使用方法:#pragma comment(lib,"xx.lib")
②注意:pragma在预处理时保留 链接阶段生成 静态库只需导.h和.lib
2.动态库:在链接阶段 将引入库拷贝到exe中
②使用方法同静态库 但这里的lib叫做引入库 而不是静态库
②加载方式分为两类:隐式加载和动态加载
隐式加载:导.h .lib和.dll
动态加载:加载库→获得函数地址→卸载库
动态加载相比隐式加载 更加灵活 但是只适用于函数少的时候
3.动态链接库也称为动态共享库 可以作为一种进程通信的方式
①入口点函数:DLLMain
②特点:读时共享 写时复制
③解决:共享段 允许共享
4.总结:
①静态库效率高一些 适用于小程序 可存在多份 但是可能会出现占内存较多的情况
②动态库当重复使用时为省内存空间的时候用 只需一份
二.网络分层模型
1.OSI七层模型:
2.七层模型的简化:TCP/IP四层模型
⑤⑥⑦→应用层:HTTP HTTPS FTP(广域网 使用TCP) TFTP(局域网 使用UDP) DNS DHCP POP3等协议
④→传输层:UDP TCP RUDP(可靠的UDP)
③→网络层:IP
①②→数据链路层:ARP(IP→MAC) RARP(MAC→IP)
3.网络通信方式:大端模式
①大端:低地址存高位
②小端:低地址存低位
例:0x12345678