全球旧事资料 分类
的系统调用函数pthread_create、pthread_joi

42实验过程说明(使用TCPIP)
1监听连接
利用socket、bi
d、liste
建立连接,步骤是:
1先用socket函数初始化socket,创建新的sockfd。
Sockfdsocket(AF_INT,SOCK_STREAM0)
2此步骤涉及到IP地址及其处理过程。
参数说明:
i
et_addr函数INADDR_ANY
该函数把由小数点分开的十进制IP地址转为u
si
gedlo
g类型,而在实验中所
使用的为INADDR_ANY,使用利用自已的IP地址自动填充。
a利用bi
d函数绑定端口和IP地址。
My_addrsi
_familyAF_INET
将地址族类型设定好
My_addrsi
_porthto
sMYPORT
将端口给其赋值
My_addrsi
_addrs_addrINADDR_ANY用连接地址自动填充ip
Bi
dsockfdstuctsockaddrmy_addrsizeofstuctsockaddr
sockfd是分配的socket名字,myaddr则便是分配好的端口与IP,用bi
d
绑定
b利用liste
监听请求
2发送请求
1利用gethostby
ame获取主机信息。
2初始化socket端口。
3利用co
ect函数将自己的IP地址等信息发送到主机,等待主机调用accept
f函数来接受请求。3主机接收请求,进行数据通信
1主机利用accept接收请求。2创建子进程,显示欢迎信息;3接收返回信息,显示连接成功,并推出连接;4关闭客户端口socket;5关闭服务端socket,结束子线程。
f5系统设计
程序测试环境:li
ux操作系统。
测试软件:SecureCRT
1在编写完TCP服务端程序serverc后,用gccservercoserverwalllpthread生成程序server。
2在编写完TCP客户端程序clie
tc后,用gccclie
tcoclie
twall生成程序clie
t
3在主机上打开一窗口,运行server。4再打开若干个窗口或者在另一个主机上打开,运行clie
t
f6详细设计与实现
61主要功能实现如下611登陆模块
客户端
发送标志位2,账号,密码到服务器
服务器接收到帐号密码,与之前设定好的进行匹配
成功
匹配是否成功
登录成功
失败
f612注册模块
客户端
发送标志位2,账号,密码到服务器
服务器接收到帐号密码,与之前设定好的进行匹配
不存在
匹配是否存在在功
注册成功
存在
f613私聊模块
客户端发送标志位4(私聊对象名字)私聊内容
服务器遍历在线链表,找到私聊对象,把私聊内容发给私聊对象
私聊对象接收私聊内容
613群聊模块
客户端发送标志位4(all)群聊内容
服务器遍历在线链表,找到所有在线对象,把私聊内容发给所有在线对象
所有在线对象接收群聊内容
f613显示在线用户
服务器接受客户端登陆请求
服务器遍历在线链表,找到所有在线对象,把所有在线对象名字发给当前登陆对象
当前登陆对r
好听全球资料 返回顶部