操作系统综合实践报告

上传人:第*** 文档编号:34242403 上传时间:2018-02-22 格式:DOC 页数:31 大小:307KB
返回 下载 相关 举报
操作系统综合实践报告_第1页
第1页 / 共31页
操作系统综合实践报告_第2页
第2页 / 共31页
操作系统综合实践报告_第3页
第3页 / 共31页
操作系统综合实践报告_第4页
第4页 / 共31页
操作系统综合实践报告_第5页
第5页 / 共31页
点击查看更多>>
资源描述

《操作系统综合实践报告》由会员分享,可在线阅读,更多相关《操作系统综合实践报告(31页珍藏版)》请在金锄头文库上搜索。

1、综合实践设计报告题目:基于 TCP 协议的客户/服务器程序班级:计本 122 姓名: 聂乐 学号: 2012021029 指导教师:滕艳萍 2015 年 12 月 综合实践评分表班级 计本 122 姓名 聂乐 指导教师 滕艳萍题目:基于 TCP 协议的客户/服务器程序评分标准评分的依据评分标准 分数权 重 A C 得分选题 10选题符合大纲要求,题目较新颖,工作量大选题基本符合大纲要求,工作量适中工作态度 10态度端正,能主动认真完成各个环节的工作,不迟到早退,出勤好。能够完成各环节基本工作,出勤较好。综合实践的设计过程 20能从软件设计的实际情况出发,很好地绘制软件设计的流程图并编写代码,其

2、代码质量高。能从软件设计的实际情况出发,基本能够编写出程序设计代码并绘制软件的设计流程。独立解决问题的能力 20具有独立分析、解决问题能力,有一定的创造性,能够独立完成软件的设计与调试工作,程序结构合理,逻辑严谨,功能完善。有一定的分析、解决问题能力。能够在老师指导下完成软件的设计与调试工作,程序功能较完善。答辨问题回答 10能准确回答老师提出的问题能基本准确回答老师提出的问题程序运行情况 10程序运行正确、界面清晰,测试数据设计合理。程序运行正确、界面基本清晰,能给出合适的测试数据。综合实践报告的要求 20格式规范,层次清晰,设计思想明确,解决问题方法合理,体会深刻。格式较规范,设计思想基本

3、明确,解决问题方法较合理。总分指导教师(签字):注:介于 A 和 C 之间为 B 级,低于 C 为 D 级和 E 级,其权重 A 为 1,B 为0.8,C 为 0.6,D 和 E 分别为 0.4 和 0.2。按各项指标打分后,总分在90100 为优,8089 为良,7079 为中,6069 为及格,60 分以下为不及格。摘要:本程序是根据操作系统综合实践指导中课题十所编写的一个简单的基于TCP协议下的客户/服务器程序,TCP是Transmission Control Protocol(传输控制协议)的缩写。它位于网络OSI七层模型中的传输层(IP协议位于网络层;ARP协议位于数据链路层,ARP

4、协议将IP地址解析为物理地址)。程序中的数据会先由TCP协议包装,然后再由IP协议包装,各层由上到下用自己的协议对上层传下来的数据进行包装,传到对端后,各层再由下到上解析自己的协议并把本层解析后的数据交给更高层的协议处理。熟悉Linux下的socket, 网络编程的基本方法,掌握实现客户/服务器程序的编写方法。编写一个简单的程序,带程序可实现基于TCP协议的简单的客户/服务器方式。关键词:TCP;socket;1、课题研究的内容学习操作系统的设计与实现原理,是计算机应用专业的学生全面了解和掌握系统软件,一般软件设计方法和技术的必不可少的综合课程,也是了解计算机硬件和软件如何衔接的必经之路. 本

5、课程的学习目的与任务是使学生通过本课程的学习,理解操作系统的基本概念和主要功能,掌握常用操作系统(如 Windows,UNIX,Linux)的使用和一般管理方法,了解它是如何组织和运作的,从而为学生以后的学习和工作打下基础. 2、 课题运行环境计算机一台,操作系统: Linux, 开发环境 Eclipse 3.3.0+ jdk 1.6.3、 相关概念TCP/IP(传输控制协议/网间协议)TCP/IP 是一种网络通信协议,它规范了网络上的所有通信设备,尤其是一个主机与另一个主机之间的数据往来格式以及传送方式。TCP/IP 是 INTERNET 的基础协议,也是一种电脑数据打包和寻址的标准方法。在

6、数据传送中,可以形象地理解为有两个信封,TCP 和IP 就像是信封,要传递的信息被划分成若干段,每一段塞入一个 TCP 信封,并在该信封面上记录有分段号的信息,再将 TCP 信封塞入 IP 大信封,发送上网。在接受端,一个 TCP 软件包收集信封,抽出数据,按发送前的顺序还原,并加以校验,若发现差错,TCP 将会要求重发。因此,TCP/IP 在 INTERNET 中几乎可以无差错地传送数据。在任何一个物理网络中,各站点都有一个机器可识别的地址,该地址叫做物理地址.物理地址有两个 特点: (1)物理地址的长度,格式等是物理网络技术的一部分,物理网络不同,物理地址也不同. (2)同一类型不同网络上

7、的站点可能拥有相同的物理地址. 以上两点决定了,不能用物理网络进行网间网通讯. 在网络术语中,协议中,协议是为了在两台计算机之间交换数据而预先规定的标准。TCP/IP 并不是一个而是许多协议,这就是为什么你经常听到它代表一个协议集的原因,而TCP 和 IP 只是其中两个基本协议而已。你装在计算机-的 TCP/IP 软件提供了一个包括 TCP、IP 以及 TCP/IP 协议集中其它协议的工具平台。特别是它包括一些高层次的应用程序和 FTP(文件传输协议),它允许用户在命令行上进行网络文件传输。TCP/IP 是美国政府资助的高级研究计划署(ARPA)在二十世纪七十年代的一个研究成果,用来使全球的研

8、究网络联在一起形成一个虚拟网络,也就是国际互联网。原始的 Internet 通过将已有的网络如 ARPAnet 转换到 TCP/IP 上来而形成,而这个 Internet 最终成为如今的国际互联网的骨干网。如今 TCP/IP 如此重要的原因,在于它允许独立的网格加入到 Internet 或组织在一起形成私有的内部网(Intranet)。构成内部网的每个网络通过一种-做路由器或 IP 路由器的设备在物理上联接在一起。路由器是一台用来从一个网络到另一个网络传输数据包的计算机。在一个使用 TCP/IP 的内部网中,信息通过使用一种独立的叫做 IP 包(IPpacket)或 IP 数据报(IP dat

9、agrams)的数据单元进-传输。TCP/IP 软件使得每台联到网络上的计算机同其它计算机“看”起来一模一样,事实上它隐藏了路由器和基本的网络体系结进入讨论组讨论。TCP/IP 在网路中所扮演的角色 TCP/IP 的全称是 Transmission Control Protocol / Internet Protocol (TCP/IP)当初是用来配合 ARPANET 来处理不同硬体之间的连接问题的比如 Sun 系统和 MainframeMainframe和个人电脑之间的连接。 Internet Protocol (IP) 工作于网路层 它提供了一套标准让不同的网路有规则可循当然前提是您想使用

10、 IP 从一个网路将封包路由到另一个网路。IP 在设计上是用来在 LAN 和 LAN 及 P C 和 PC 之间进行传输 每一台 PC 或每一个 LAN都可以由一组 IP 位址来区分。一个 IP 位址的格式是四个用小数点( . ) 分隔开来的十进位数字 每各数值介乎于 0 到 255 之间。实实上,每一组数字 在 IP 位址中是以 “Octet”的格式承现的,也就是完整的 8 个 bit 。我们会在后面的网际网路层中详细讲解 IP 位址的所包含的信息和功用。 您可以把 IP 看成是游戏规则 而 TCP 则用来诠释这些规则的更准确来说 TCP 在 IP 的基础之上解释了参与通讯的双方是如何透过

11、IP 进行资料传送的。TCP 提供了一套协定能够将电脑之间使用的资料透过网路相互传送 同时也提供一套机制来确保资料传送的准确性和连续性。 虽然 TCP/IP 原先是专门为几所大学和机构的使用而设计的但现在 TCP/IP 已经成为最流行的通讯协定了我们使用的 Internet 就是用 TCP/IP 来传送封包的。4、 程序的总体设计服务器,使用 ServerSocket 监听指定的端口,端口可以随意指定(由于 1024 以下的端口通常属于保留端口,在一些操作系统中不可以随意使用,所以建议使用大于 1024的端口),等待客户连接请求,客户连接后,会话产生;在完成会话后,关闭连接。 客户端,使用 S

12、ocket 对网络上某一个服务器的某一个端口发出连接请求,一旦连接成功,打开会话;会话完成后,关闭 Socket。客户端不需要指定打开的端口,通常临时的、动态的分配一个 1024 以上的端口。Socket 接口是 TCP/IP 网络的 API,Socket 接口定义了许多函数或例程,程序员可以用它们来开发 TCP/IP 网络上的应用程序。要学 Internet 上的 TCP/IP 网络编程,必须理解Socket 接口。 Socket 接口设计者最先是将接口放在 Unix 操作系统里面的。如果了解Unix 系统的输入和输出的话,就很容易了解 Socket 了。网络的 Socket 数据传输是一种

13、特殊的 I/O,Socket 也是一种文件描述符。 Socket 也具有一个类似于打开文件的函数调用Socket(),该函数返回一个整型的 Socket 描述符,随后的连接建立、数据传输等操作都是通过该 Socket 实现的。常用的 Socket 类型有两种:流式 Socket(SOCK_STREAM)和数据报式Socket(SOCK_DGRAM)。流式是一种面向连接的 Socket,针对于面向连接的 TCP 服务应用;数据报式 Socket 是一种无连接的 Socket,对应于无连接的 UDP 服务应用。 Socket 建立为了建立 Socket,程序可以调用 Socket 函数,该函数返回

14、一个类似于文件描述符的句柄。socket 函数原型为: int socket(int domain, int type, int protocol);domain 指明所使用的协议族,通常为 PF_INET,表示互联网协议族(TCP/IP 协议族);type 参数指定 socket 的类型:SOCK_STREAM 或 SOCK_DGRAM,Socket 接口还定义了原始Socket(SOCK_RAW ),允许程序使用低层协议;protocol 通常赋值0。Socket()调用返回一个整型 socket 描述符,你可以在后面的调用使用它。 Socket 描述符是一个指向内部数据结构的指针,它指向

15、描述符表入口。调用 Socket 函数时,socket 执行体将建立一个 Socket,实际上 建立一个 Socket意味着为一个 Socket 数据结构分配存储空间。 Socket 执行体为你管理描述符表。两个网络程序之间的一个网络连接包括五种信息:通信协议、本地协议地址、本地主机端口、远端主机地址和远端协议端口。Socket 数据结构中包含这五种信息。 socket 在测量软件中的使用也很广泛5、 程序源代码及运行截图服务端:import java.awt.*;import java.awt.event.*;import javax.swing.*;import javax.swing.e

16、vent.*;import .*;import java.io.*;/* 聊天服务端的主框架类*/public class ChatServer extends JFrame implements ActionListenerpublic static int port = 8888;/服务端的侦听端口ServerSocket serverSocket;/服务端 SocketImage icon;/程序图标JComboBox combobox;/选择发送消息的接受者JTextArea messageShow;/服务端的信息显示JScrollPane messageScrollPane;/信息显示的滚动条JTextField showStatus;/显示用户连接状态JLabel sendToLabel,messageLabel

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 解决方案

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号