linux操作系统与程序设计

linux操作系统与程序设计

ID:12124959

大小:371.90 KB

页数:30页

时间:2018-07-15

linux操作系统与程序设计_第1页
linux操作系统与程序设计_第2页
linux操作系统与程序设计_第3页
linux操作系统与程序设计_第4页
linux操作系统与程序设计_第5页
资源描述:

《linux操作系统与程序设计》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、Linux操作系统与程序设计课程设计报告书指导老师:报告组员:2013年7月5号目录一、实验项目目的1二、实验项目的人员组成及指责划分1三、实验项目的功能及模块划分1四、设计与实现34.1系统结构34.1.1系统结构图34.2客户端界面34.2.1注册34.2.2登录44.2.3界面设计44.3服务器的实现64.3.1用户登录64.3.2转发聊天消息74.4通信模块的实现84.4.1通信方式的选择11五、测试与调试11六、总结11七、附录:程序代码12一.实验项目目的随着嵌入式在生活年中的应用越来越广泛,嵌入式Linux下的socket网络编程也越来越热门。本次课程设计是为了加强对LINUX

2、系统下的编程的各种知识点的整合与灵活运用,让我们更加熟悉Linux下的编程操作,重点在Linux下的socket编程,了解TCP,UDP等协议的使用,并完成课程设计题目。二.实验项目的人员组成及指责划分我们实验组总共由2个同学组成,姓名,专业,学号及职责划分如下:①(专业及班级:网络工程102班学号:1),小组组长,负责整体设计和模块划分。②(专业班级:网络工程102班,学号:13),负责代码编写及修改.三.实验项目的功能及模块划分1.系统功能系统主要实现三大功能:1.注册与登陆系统2.群聊3.私聊272.登录聊天系统功能模块图客户端私聊退出群聊解除锁定直接私聊锁定私聊对象聊天系统服务器登录

3、处理关闭服务器聊天信息发送处理用户退出用户管理27四、设计与实现4.1系统结构4.1.1系统结构图发送消息发送消息模块服务器转发消息建立用户链表,执行添加用户,删除用户,查询用户等操作。客户端接受消息模块接受消息4.2客户端界面4.2.1注册274.2.2登录登录界面设计截图4.2.2界面设计界面截图27本系统直接在终端环境下运行,具体实现代码如下:while(1){memset(buf,'',BUFFERSIZE);//必须清空否则会有虚假数据memset(buf_temp,'',BUFFERSIZE);if(recvfrom(socket_fd,buf,sizeof(buf),0

4、,NULL,NULL)<0){perror("接收消息失败");}if(strncmp("Q",buf,1)==0)//接收服务器下线通知{printf("33[22;30m%s",buf+1);//输出黑色文字系统消息kill(getppid(),SIGUSR2);kill(getpid(),SIGUSR2);}elseif(strncmp("A",buf,1)==0){printf("33[22;96m%s",buf+1);//输出灰色文字系统消息}elseif(strncmp("P",buf,1)==0){printf("33[22;31m%s",buf+1);//输出红色

5、文字系统消息}elseif(strncmp("R",buf,1)==0){if(strncmp(buf+1,name,strlen(name))==0){sprintf(buf_temp,"我%s",buf+strlen(name)+1);printf("33[22;32m%s",buf_temp);//输出黄色文字自己的消息}else{printf("33[22;33m[收到消息@]%s",buf+1);//输出绿色文字}}printf("33[22;30m");//恢复黑色}274.3服务器的实现服务器运行界面:4.3.1用户登录处理用户登录功能源码:voidProcessL

6、ogin(char*command,SA_INrec_addr){charname[10];USERuser;charbuf[BUFFERSIZE];memset(buf,'',BUFFERSIZE);strcpy(name,command+1);if(findUser(head,name)==-1){strcpy(user.name,name);user.address=rec_addr;addUser(head,user);buf[0]='Y';if(sendto(socket_fd,buf,sizeof(buf),0,(SA*)&rec_addr,sizeof(rec_addr))

7、==-1){perror("登录失败");}}else{buf[0]='N';27if(sendto(socket_fd,buf,sizeof(buf),0,(SA*)&rec_addr,sizeof(rec_addr))==-1){perror("登录失败");}}}4.3.2转发聊天消息界面:源码:voidProcessChat(char*command){charbuf[BUFFERSIZE];SA_I

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。