2017-2018-1 20155338 《信息安全系统设计基础》第八周课堂测试

2017-2018-1 20155338 《信息安全系统设计基础》第八周课堂测试

第八周测试-1

要求:

参考 http://www.cnblogs.com/rocedu/p/6766748.html#SECCLA

在Linux下完成“求命令行传入整数参数的和”

测试代码传入自己的8位学号

上方提交代码

附件提交运行测试截图

解决过程:

代码如下:

#include<stdio.h>

#include<stdlib.h>

int main(int argv,char*argc[])

{

int i,sum=0;

if(argv>1)

{

for(i=1;i<argv;i++)
      
sum += atoi(argc[i]);
      
}

printf("%d",sum);

printf("\n");

return 0;

}

运行截图:


第八周测试-2

要求

把第一个练习中的代码在X86-64(Ubuntu)中反汇编,给出汇编代码和机器码的截图

把X86-64汇编翻译成Y86-64汇编,并给出相应机器码的截图(使用附件中的Y86-64模拟器)

解决过程:

使用命令

gcc -S main.i -o main.s

转换成汇编代码

cat XXX.s查看汇编代码,objdump -d XXX命令查看机器码

截图如下:

由于上次的博客内容我已经安装了Y86-64模拟器,所以打开模拟器,在目录中选中所编写的第一个代码进行汇编翻译即可

截图如下:


第八周测试-3

要求

基于socket 使用教材的csapp.h csapp.c,实现daytime(13)服务器(端口我们使用13+后三位学号)和客户端
服务器响应消息格式是

客户端IP:XXXX

服务器实现者学号:XXXXXXXX

当前时间: XX:XX:XX

上方提交代码

提交一个客户端至少查询三次时间的截图测试截图

提交至少两个客户端查询时间的截图测试截图

解决过程:

分别编写服务器 server,客户端 client,将其分别编译为可执行文件后,打开两个终端,分别将其运行,就会显示服务器与客户端成功连接

运行截图:

多进程实现daytime

要求

把课上练习3的daytime服务器分别用多进程和多线程实现成并发服务器并测试

实现结果:

posted @ 2017-11-12 22:55  Csj-rup  阅读(238)  评论(0编辑  收藏  举报