------------------------------------------------------------------------------------------
复习昨天的东西:
/自动:子进程向父进程发信号(回收子进程的资源)
| 信号:
/主动:自己发(必须是自己的进程) 例如: kill 不同用户不能通过消息
其他: ^c alarm
/signal() 两个特殊信号:
处理:
/信号会打断堵塞: pause ,cin>>, msgrcv()//[读取消息:(等这消息)] 会打断 sleep();
/ 1.什么信息都可以传递:
| 2.两端必需打开
多进程间通信: | FIFO: mkfifo |
| 3.读一个少一个(//像一个消息队列)
/ 4,双方都关闭时候,数据丢失
msgget(key,IPC_CREATE|0666,0) //创建消息队列和得到消息队列
消息队列 msgrcv() //每个消息是一个结构变量.第一各个是LONG 型的类型.
msgsend //发送消息
msgctl() //删除消息队列.
makefile: //一些倚赖关系: 例如: XXX: ...........................
<TAB>
注释: #开头注释
$^ 所有用来问
$< //
$@ 第一个依赖文件
自己建立库函数: 例如: g++ -shared XXX.cc -o lib[XXX](库文件名).so
g++ a.cc -lxxx -L目录
LD_LIBRA_PATH 包含库文件所在的路径 (环境变量)
=============================================================================================
第四天: 网络编程:
=============================================================================================
(1) GDB: Debug //调试程序:
方式:
gdb + 可执行文件;
-----------------------------
演示程序: (没什么演示的,主要一些是命令)
g++ -g a.out
gdb a.out
l //每次10行的显示代码;
l 3,5 //指定行的代码:
写下断点的位置: break piont
break (b) 7 (行数)
Breakpoint 1 at 0x8048634//(内存地址): file chen.cc, line 7.
info break //列出已经设置的断点.
delete break 2//(断点编号) 删除断点.
run //运行:
print (p) i //显示变量i的值
pirnt argv[0] //用print 显示变量的值;
p argc=100 //改变量argc的值.
step : //会跟踪到函数中.
kill //终止调试程序.
bt //往回查找函数调用关系.
disp + 变量名. //每一步就会显示,此变量的值.
====================================================================================================
OSI :七层网络模型;
物理层: 物理设备.
数据链路层: 由驱动程序管理. (相临的)物理上联接的机器(同一网断) MAC 地址; 错误检测. [寻址的方式: 广播:(每个终端都可以看到.有兴趣的收.) (同一个网段//距离近)]
网络层: 不同网络之间的通信. 通过IP 地址寻址. 网关/路由
传输层: 端口号(short 类型的 65536个端口) 区分不同`网络程序. 流量控制(不通流量的网卡). 差错控制.
会话层: 通信的方法.
表示层: 例如: 整数: 也就是表示数据的不同格式(00 00 00 01 /01 00 00 00 ). //格式的处理工作.
应用层:
-----------------------
表示层: e-mail 其他文字是7位,汉字: 8位.
--------------------------------
TCP/IP
APPLICATION //透明 /
TRANSPORT //透明 传输层;(点对点) | 这三层能够操作.
INTERNET //透明 网络层. /
NETWORK INTERFACE //数据链路层.
Physical //物理层
------------------------------
IP 协议:
虚拟的包, 打成小包.10K,10K,..... =100K
---------------------------------------
IP 地址:
192.168.0.23 //点分十进制.
[192.168.0].23前面一样的部分是网络地址,最后的是主机地址.
IP 地址是4个字节 因此可以用一个LONG 型的数据表示IP 地址.//叫做内部格式.
A 0xxxxxxx 三个不同. (10.0.0.1) [0-----128]
B 10xxxxxx 两个字节不同 65536 个计算机.[129---191]
C 110xxxxx 192 最多256-1(0)-1(256)=254个网络
D 多播地址.
E 保留地址.
------------------------
子网掩码 : 区分网络地址和主机地址. 通过子网掩码把网络地址分出来.
---------------------------------------------------
128.211.[255.255] //表示广播地址.
255.255.255.255 //本网的广播地址.
127.0.0.1 //表示本机地址.
---------------------------------------------------
IPV6 :
UDP: 用户数据报协议.
TCP: 特点:
1. 传输控制协议,面向联接的.
2. 可靠的.
3. 点对点的.
4. 全双工的.
3次握手. //保证双方都能够联接.
---------------------------------------------------
socket: 套接字.