函数功能的封装:
从设计角度:对于大量重复的代码进行封装
当代码出现问题时:
a.printf() 局部找问题
b.gdb 逐行调试。
知识短时间内可以获取到
能力的提升需要一定的练习
IPC 进程间通信方式
共享内存 // 最高效的进程间通信方式
共享内存:
1.是一块,内核预留的空间
2.是不同进程之间最高效的通信方式(避免了)
ipcs 显示内存的具体使用信息,可以用来查看是否在内核上申请到对应内存。
使用较少的通信方式:
1)消息队列,2)信号量集
网络编程
网络:
1.作用:解决不同主机之间的通信问题
2.如何实现:1)物理层面 有一个 信息通路 2)在软件层面(逻辑层面)也需要一个通路
IP地址:
作用:标识网络中的一台主机(凡是能够进行网络通信的机器)
为了让不同体系的硬件和软件进行互联互通
1.物理层
规定了物理层面的电气特性以及相关的机械特性
物理层面数据的传输 --- 一位一位的二进制数据 //就是所谓的比特流
2.数据链路层
规定了传输数据的格式 //一般以帧数据为基础单位。 //控制传输过程可靠
3.网络层(网际层)
用于解决 网络 与 网络之间 的数据传输 //数据包
4.传输层
传输控制层,控制传输过程,保证数据完整和可靠
5.会话层
处理一次会话过程
6.表示层
规定了传输数据的格式和方式
7.应用层
就是直接获取要收发的数据
现在实际应用的网络模型是:tcp/ip模型
怎么发挥作用?
每个层次中,都有自己的一套规范 被称为协议
程序员 ------>应用层
IP(用来标识一台网络中的主机)
可以通过ip找到对应的一台主机
本质:32位整型数值
表示方式 点分十进制
0~~255
IP地址组成:网络号 + 主机号
网络号:用来表示所处的网络
主机号:表示能容纳的主机
ipv6 //128位
端口号 :用来表示主机中某一个具体(进行网络通信)的进程
网络编程:
tcp / udp