分布式系统实验报告————————————————————————————————作者:————————————————————————————————日期: 中南大学分布式系统实验报告目录(我选做4题,按住ctrl点击目录条可直达,wps下有效)实验一数据包socket应用 3一、实验目的 3二、预习与实验要求 3三、实验环境 3四、实验原理 4五、实验内容 5六、实验报告 5七、思考题 7实验二流式socket应用 8一、实验目的 8二、预习与实验要求 8三、实验环境 8四、实验原理 8五、实验内容 8六、实验报告 9七、思考题 12实验三客户/服务器应用开发 12一、实验目的 12二、预习与实验要求 12三、实验环境 12四、实验原理 12五、实验内容 13六、实验报告 13实验九虚拟机的使用与Linux系统的安装 30一、实验目的 30二、实验内容和步骤 30三、实验结果 32实验一数据包socket应用一、、,了解数据包socket的通信原理;;:Thread、Runnable;。三、实验环境a)独立计算机或计算机网络;b)Windows操作系统。c)Jdk工具包d)JCreatororothers四、。操作系统、网卡驱动程序等应用从不同抽象层面提供了对进程通信的支持,例如Winsock、.*。SocketAPI是一种作为IPC提供对系统低层抽象的机制。尽管应用人员很少需要在该层编写代码,但理解socketAPI非常重要,因为:1,高层设施是构建于socketAPI之上的,即他们是利用socketAPI提供的操作来实现;2,对于以响应时间要求较高或运行于有限资源平台上的应用来说,socketAPI可能是最适合的。网络协议体系结构中,传输层上有UDP和TCP两种主要协议,UDP允许在传送层使用无连接通信传送,被传输报文称为数据包。(是否存在面向连接的数据包socket?)因此数据包socket是基于UDP的不可靠IPC。Java为数据包socketAPI提供两个类:(1)针对socket的datagramSocket类(2)针对数据包交换的datagramPacket类希望使用该API发送和接收数据的进程须实例化一个datagramSocket对象,每个socekt被绑定到该进程所在及其的某个UDP端口上。为了向其他进程发送数据包,进程必须创建一个代表数据包本身的对象。该对象通过实例化一个datagramsocket对象创建。在接收者进程中,datagramPacket对象也必须被实例化并绑定到一个本地端口上,该端口必须与发送者数据包的定义一致。接收进程创建一个指向字节数组的DatagramPacket,并调用datagramSocket对象的receive方法,将DatagramPacket对象指针作为参数定义。(以Java为例1)一个线程是比进程更小的执行粒度。Java虚拟机允许应用程序有多个执行线程同时运行。有两种方法来创建一个新线程的执行。一个是声明一个类是一个线程的子类。这个子类应重写Thread类的run方法。一个子类的实例可以被分配和启动。另一种方法创建一个线程,并同时声明一个类实现了Runnable接口(这个类要实现run方法)。一个类的实例可以被分配并作为参数传递给创建的线程,并启动线程。例如:u创建一个类是Thread的子类:classSomeThreadextendsThread{SomeThread(){}publicvoidrun(){...}}SomeThreadp=newSomeThread();();u创建一个实现Runnable接口的类并传递给线程:classSomeRunimplementsRunnable{SomeRun(){}publicvoidrun(){...}}SomeRunp=newSomeRun(143);newThread(p).start();当一个实现Runnable接口的类被执行时,可以没有子类。实例化一个Thread实例,并通过自身作为目标线程。在大多数情况下,如果你只打算重写的run()方法,并没有其它的线程方法,应使用Runnable接口。因为类不应该被继承,除非程序员有意修改或增强类的基本行为。五、(1)构建datagramSocket对象实例(2)构建DatagramPacket对象实例,并包含接收者主机地址、接收端口号
分布式系统实验报告 来自淘豆网m.daumloan.com转载请标明出处.