没有合适的资源?快使用搜索试试~ 我知道了~
基于Linux网络聊天室的设计37311.doc
需积分: 16 1 下载量 78 浏览量
2022-07-16
08:50:27
上传
评论
收藏 97KB DOC 举报
温馨提示
试读
21页
基于Linux网络聊天室的设计37311.doc
资源推荐
资源详情
资源评论
《基于 Linux 网络聊天室的设计》 第1页 共 21 页
基于 Linux 网络聊天室的设计
学生姓名:陈永泉 指导老师:胡锦丽
摘要本课程设计实现了在 linux 下简单的网络聊天室.在 Linux 下编写并调试服务器端程序
和客户端程序,实现了客户、服务器之间的连接和通信。可以在单机上开辟两个窗口分别运
行客户、服务器端的程序,或者将两台主机连接分别作为客户和服务器的方式.本设计使用
网络套接字 socket 和多线程在网络中的应用,并基于 linux 下的 vi 编辑器。本方案经 gcc
调试器调试成功,可以在单机网络聊天中使用。
关键词网络聊天室 ;linux ;socket ;vi
Abstract Design and Implementation of the course in under linux simple network chat rooms。
Prepared in the Linux and debugging server-side processes and client to achieve the client ,
server and communications link between 。 Can open up two windows on the stand—alone
operation, respectively , customers , server—side procedures, or to connect two hosts ,
respectively, as the way the client and server。 The design of the network socket using the socket
and multi—threaded applications in the network, and under linux based vi editor. The program
by the success of gcc debug debugger, you can chat in the use of stand-alone network.
Key words Network Chat Rooms; Linux; Socket; Vi
基于 Linux 网络聊天室的设计1
1 背景3
1。1 linux 介绍3
2 技术说明6
2。1TCP 和 UDP 通信的概念6
2.1。1 UDP 通信6
2.1。2 TCP 通信6
2。2 客户/服务器模型7
2.3 网络套接字(socket)的概念8
2。4 多线程的概念8
3 系统实现10
3。1 Linux 提供的有关 Socket 的系统调用10
3.2 实验过程说明(使用 TCP/IP)12
3。3 TCP 通信实现13
4 运行效果19
《基于 Linux 网络聊天室的设计》 第3页 共 21 页
1 背景
1.1 开发背景
在网络无所不在的今天,在 Internet 上,有 ICQ、MSN、Gtalk、OICQ 等网络聊天软
件,极大程度上方便了处于在世界各地的友人之间的相互联系,也使世界好像一下子缩小
了,不管你在哪里,只要你上了网,打开这些软件,就可以给你的朋友发送信息,不管对
方是否也同时在线,只要知道他有号码.
Linux 操作系统作为一个开源的操作系统被越来越多的人所应用,它的好处在于操作
系统源代码的公开化!只要是基于 GNU 公约的软件你都可以任意使用并修改它的源代码。
但对很多习惯于 Windows 操作系统的人来说,Linux 的操作不够人性化、交互界面不够美
观,这给 Linux 操作系统的普及带来了很大的阻碍。因此制作一个 Linux 操作系统下的拥
有人性化界面的实时通讯工具,将给那些刚刚接触 Linux 操作系统的用户带来极大的方便,
而且通过设计这样的一个应用程序还能更好的学习网络编程知识和掌握 LINUX 平台上应
用程序设计开发的过程,将大学四年所学知识综合运用,以达到检验学习成果的目的
1.2 linux 介绍
Linux 是一种针对 PC 计算机和工作站的操作系统,它具有像 Windows 和 Mac 那样的功能
齐全的图形用户界面(GUI,Graphical User Interface)。Linus Torvald 和其它的遍布世界各地
的编程人员共同开发的。作为一种操作系统,它具有与 Unix,Mac,Windows 和 Windows NT
同样的功能。
提到 Linux 我们不能不提 GNU 和 Unix.Richard M。Stallman 建立的自由软件联盟出版了两
种许可证,GNU 通用公共许可证(GNU Gneral Public License,GPL)和 GNU 函数库通用
公共许可证(GNU Library Gneral Public License,LGPL).大部分 GNU 工程的软件和文档是以
GNU 通用公共许可证发行的,但是有一些库是以 GNU 函数库通用公共许可证发行的。按
照 GNU 通用公共许可证的规定,Linux 的源代码可以自由获取,这满足了我们学习该系统
的强烈愿望.GPL 充分体现了 Stallman 的思想:只要用户所做的修改是同等自由的,用户可以
自由地使用、拷贝、查询、重用、修改甚至发布这个软件。通过这种方式,GPL 保证了 Linux
(以及同一许可证下的大量其他软件)不仅现在自由可用,而且皮后经过任何修改这后都
《基于 Linux 网络聊天室的设计》 第4页 共 21 页
仍然可以自由使用.
Unix 是由 AT—T 贝尔实验室的 Ken Thompson 和 Dennis Ritchie 于 1969 年在一台已经废
弃了的 PDP—7 上开发的;最初它是一个用汇编语言写成的单用户操作系统。后来,他们
又在 PDP-11 上用 C 语言重新编写(发明 C 语言的部分目的就在于此),把 Unix 做成为了一
个文本处理系统,这使 Unix 在贝尔实验室得到广泛的应用。Unix 的最初版本免费提供给
许多知名的大学的计算机系使用。加州大学伯克利分校的计算机系就是其中的一名,并地
Unix 进行了修改增加了许多新的特点,这就是主为人知的 BSC 版本的 Unix。与此同时,其
它独立开发的 Unix 版本也开始萌生。Unix 不断发展了,各种版本被应用到不同的计算机使
用.而 Linux 最初是专门为基于 Intel 的个人计算机设计的。(1)Linux 的昨天 1991 年,一名
叫 Linus Torvalds 的芬兰大学生对 Unix 各种版本对于 80386 类的机器的脆弱支持十分不
满,他决定要开发出一个全功能的、支持 POSIX 标准的、类 Unix 的操作系统内核,该系
统吸收了 BSD 和 System V 的优点,同进摒弃了它们的缺点。他独立把这个内核开发到
0.02 版,这个版本已经可以运行 gcc、bash 和很少的一些应用程序.后来,他又开始了在因
特网上寻求广泛的帮助。
1994 年,Linux 已经升级到 1.0 版本.它的源代码量也呈指数形式增长,实现了基本的
TCP/IP 功能,此时 Linux 已经拥有大约 10 万的用户.
(2) Linux 的今天作为一各服务器级的操作系统,Linux 已经成熟了。现在的 Linux 内核由
150 多行代码组成,能作为 Web 服务器平台,也为越来越多的商业用户提供文件和打印服务。
它既被当作邮件服务器的一种候选平台,也被当作一种强壮而安全的防火墙.
Linux 的企业级特性,比如支持多处理器、支持大型文件系统、日志文件系统以及密集型计
算和高可用性集群技术,也逐步成熟。
桌面上的 Linux 也在继续完善。KDE 桌面提供的图形用户界面在易用性和可配置方面都能
和微软的 Windows 相媲美.
(3) Linux 的明天 Linux 最强大的生命力在于其公开的开发过程。每个人都有可以自由获
取内核源程序,每个人都有要不得以运载源程序加以修改,而后他人也可以自由获取你修改
后的源程序。Linux 这种独特的自由流畅的开发模型已被命名为 bazaar(集市模型)。Bazaar
开发模型通过重视实验,征集并充分利用早期的反馈,对巨大数量的脑力资源进行平衡配置,
可以开发出更优秀的软件。本联盟就是想通过 bazaar 开发模型,在网上召集一些 Linux 的爱
好者,开发出更优秀的操作系统或软件。
剩余20页未读,继续阅读
资源评论
智慧安全方案
- 粉丝: 3679
- 资源: 59万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功