|
|
1
(1)采用TCP写一个远程文件拷贝应用(包括客户端和服务器)remotecp,并给出一个Makefile
用来Make。Remotecp支持从本地机(客户端)到远程机(服务器)之间的相互文件拷贝。假设/X/Y
是本地机L的一个目录,/x/y/是远程机R(地址为A.B.C.D)的目录,LocalFile是本地机L的一
个文件,RemoteFile是远程机R的一个文件,则remotecp支持以下形式的命令行:
A.remotecp LocalFile A.B.C.D:/x/y/ # 将本地文件LocalFile拷贝到R的/x/y/目录下;
B.remotecp LocalFile A.B.C.D:/x/y/NewName # 将本地文件LocalFile拷贝到R的/x/y/目
录下,名字为NewName
C.remotecp A.B.C.D:/x/y/RemoteFile # 将远程机的文件拷贝到本地当前目录下
D.remotecp A.B.C.D:/x/y/RemoteFile /X/Y/ # 将远程机的文件拷贝到本地/X/Y/目录下
(2)下载UNP软件包,仿照udpcli01的代码写一个udpcliTO,加入alarm() 形式的超时机制,
修改Makefile,make后,实验一下看能否工作。
(3)仿照udpcli01的代码写一个udpcliName,接受参数为一个名字或者IP地址,要求使用
gethostbyname()
来转换。其命令行例子:
$ ./udpcliName localhost
或者 $ ./udpcliName 127.0.0.1
修改Makefile,make后,实验一下看能否工作。
2
(1)采用select机制重写1中的远程文件拷贝应用服务器,实现并发服务。
(2)修改题目1中的服务器程序,使之以精灵程序运行。
(3)修改上面的服务器程序,使之能够在xinetd的监控下运行。 |
|