Ubuntu系统:12.04
从github上下载代码,然后把final_lab-master.zip“解压到当前文件夹”并改名为final_lab,并把该文件夹copy到ubuntu系统某个地方,比如桌面上
打开一个shell,用命令找到文件夹final_lab,并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 127.0.0.1
作用:负责不断接收文件流并写入流
此时socket成功连接,程序会运行几分钟,读写流和发送接收流占用绝大部分时间
传送结束后,server端和client端会退出,它们在退出前都会打印传送时间。如果中间遇到问题,它们也会退出并打印错误报告
接收到的文件被保存在Output文件夹下
5、执行./md5
作用:打印输入文件和输出文件的md5值并进行比较,如果相等,就认为传送正确。反之亦然
6、执行./fclean
作用:删除输入文件夹,输出文件夹,以及它们中可能包含的1G.img文件
7、执行make clean
作用:删除所有.o文件和可执行文件,此时实验回到了初始状态,可以重新进行