Skip to content

jiumozhi123/sendrecv

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Ubuntu系统:12.04

从github上下载代码,然后把sendrecv-master.zip“解压到当前文件夹”并改名为sendrecv,并把该文件夹copy到ubuntu系统某个地方,比如桌面上

打开一个shell,用命令找到文件夹sendrecv,并cd进入该文件夹

然后直接make编译,生成一大堆.o文件和可执行文件,接下来

1、执行./fcreate

作用:在final_lab的同级目录下生成两个文件夹Input和Output

2、执行dd if=/dev/zero of=../Input/1G.img bs=1M count=1024

作用:在Input文件夹下建立用二进制数字0填充的1G大小文件用于被传送,这个过程需要几分钟。注意文件名绝对不能错

您也可以用您的文件来代替,或者用其它方法来生成文件,理论上大小随意,但必须保证该文件在文件夹Input下,并且文件名为1G.img

此时输入文件夹,输入文件,输出文件夹已经成功建立

4、执行./server

作用:负责不断读取文件流并发送流

再开一个shell,执行./client

作用:负责不断接收文件流并写入流

此时socket成功连接,程序会运行几分钟,读写流和发送接收流占用绝大部分时间

传送结束后,server端和client端会退出,它们在退出前都会打印运行时间。如果中间遇到问题,它们也会退出并打印错误报告

接收到的文件被保存在Output文件夹下

5、执行./md5

作用:计算输入文件和输出文件的md5值并进行比较,如果相等,就认为传送正确。反之亦然

6、执行./fclean

作用:删除输入文件夹,输出文件夹,以及它们中可能包含的1G.img文件

7、执行make clean

作用:删除所有.o文件和可执行文件,此时实验回到了初始状态,可以重新进行

About

a project of Multi Thread Transfer

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published