DL : 0
操作系统课程设计任务书
一、设计题目:多机进程通信
应用Socket进程通信技术编写聊天室程序,实现基于服务器的并发多机信息转发。如果各客户端在线则可以实时聊天、发送接收文件,如果某客户端离线,则发送给他的消息可由服务器端进行内容缓存,待重新连线后可以自动接收通过服务器转发的信息或文件。缓存与转发的控制算法可参考操作系统课程中生产者消费者进程同步方法、缓冲池技术等相关理论。
二、设计思路和功能的详细描述
采用TCP协议,所以属于客户机/服务器模式,因此需要聊天服务器端和聊天客户端两个程序,实现的功能是:任意一台装有客户端程序的计算机都可以通过服务器端的IP地址与服务器相连,然后进入聊天室与连接到服务器的其他客户进行聊天。当客户聊天结束时,可以点断开与服务器断开连接,以释放进程让其他等待的客户进入聊天室,本聊天室最大同时支持50个客户端的连接,如果服务器配置较高可以修改程序来增加同时连接数。
三、采用的方法、技术、运行环境及其配置
本聊天程序采用TCP协议,用VC++编写,属于客户机/服务器模式。采用了多线程的机制。其中使用windows Sockets实现多台计算机(多个进程)间的通信,SOCKET实际在计算机中提供了一个通信端口,可以通过这个端口与任何一个具有SOCKET接口的计算机通信。应用程序在网络上传输,接收的信息都通过这个SOCKET接口来实现。在客户机/服务器模式中客户应用程序向服务器程序请求服务。一个服务程序通常在一个众所周知的地址监听对服务的请求,也就是说,服务进程一直处于休眠状态,直到一个客户对这个服务的地址提出了连接请求。在这个时刻,服务程序被“惊醒”并且为客户提供服务即对客户的请求作出适当的反应。本聊天程序就是基于这中思想实现的,程序分为两大部分:TCP聊天服务器端和TCP聊天客户端。两者都拥有各自的SOCKET接口,其中服务器端SOCKET接口需要绑定到固定地址上(实现语句:ock=Socket(AF_INET,SOCK_STREAM,0);),等待客户端的连接(实现语句:listen(sock,5);)。等待客户端的连接的过程就是通过多进程机制来实现的。
聊天程序是在VISUAL C++6.0上编译实现的,在WINDOWS2000,XP上测试运行成功。
对客户计算机配置无特殊要求,由于所设置的最大连接进程为50,所以对服务器要求也不高。
四、关键源程序及其详细的注释
<一>、服务器端:
1、Socket初始化
//初始化对话框
BOOL CCSocketDlg::OnInitDialog()
{
count=0;
m_list.InsertColumn(0,"消息");
m_list.SetColumnWidth(0,435);
m_edit.SetLimitText(99);
.
.
.
.
Update : 2008-11-21
Size : 55808
Publisher : lenjear
DL : 1
vb的 tcp聊天事例
Update : 2009-05-11
Size : 51526
Publisher : adasd@131.com
DL : 0
scico ccie TCP/IP 1
Update : 2010-09-30
Size : 9799325
Publisher : billinkings
DL : 1
tcp板网页测试代码
Update : 2010-10-12
Size : 285101
Publisher : 0500320421
DL : 1
windriver vxworks下的tcp/ip协议源码,是学习网络编程必看的重要资料
Update : 2010-09-04
Size : 313275
Publisher : tcp8587@163.com
DL : 2
STM32,TCP/IP协议栈源码,官方发布。
Update : 2010-10-26
Size : 6039586
Publisher : hp_0111
DL : 1
详细介绍了TCP/IP的连接与终止过程,对了解socket编程有很大的帮助
Update : 2010-10-26
Size : 705406
Publisher : 13817674957
DL : 0
NS2-TCP源码分析
Update : 2010-12-12
Size : 177830
Publisher : kijnfffs
DL : 0
TCP/IP协议的详细分析
Update : 2010-12-18
Size : 2006923
Publisher : massiclaire@hotmail.com
DL : 1
基于DM642、DM643的网络摄像机,实现网络视频传输功能,采用TI的JPEG库进行视频压缩,使用TCP协议传输,达到每秒10帧以上,基本实现实时功能。
Update : 2011-05-08
Size : 2228256
Publisher : fengbo809
DL : 0
上传的代码主要是根据基于tcp/ip网际互联而实现了客户机,客户机/服务器模型的模拟,代码写的比较干净,已经在实验室经过调试运行,具有一定的价值。
Update : 2011-05-18
Size : 15105
Publisher : liaozi
DL : 3
TCP聊天 MFC socket 网络编程
Update : 2011-05-20
Size : 132926
Publisher : 562358126
DL : 2
基于VC 6.0工程文件,测试TCP方式进行网络通信,包括服务器和客户端程序。
Update : 2011-05-27
Size : 138782
Publisher : lbxu2008
DL : 2
TCP数据转发服务器源码,该程序服务器监听两个连接。一旦连接建立后,就把两个客户端的数据相互转发。克服了两个私网IP电脑无法相互传送数据的难题。该代码在VC6.0环境下编译
Update : 2011-06-10
Size : 1848878
Publisher : huangdafu@163.com
DL : 0
MC52i GPRS模块实现TCP连接设置AT指令流程
Update : 2011-07-05
Size : 30208
Publisher : kingfire05kingfire05@126.com
DL : 0
基于VC的TCP聊天源码的实现.
Update : 2011-08-04
Size : 241281
Publisher : zhcq8016@126.com
DL : 0
这是一个基于IPv6的tcp/udp网络通信程序的工程。 该工程包括TCP Server端程序,TCP Client端程序,以及UDP Server端程序和UDP Client端一共4个程序,建立在同个工程中一起提供。
Update : 2011-09-22
Size : 3098497
Publisher : mzb3905355
DSSZ is the largest source code store in internet!
Contact us :
1999-2046
DSSZ All Rights Reserved.