• 20155328 《信息安全系统设计基础》 第八周学习内容总结


    20155328 《信息安全系统设计基础》 第八周学习内容总结

    教材学习内容总结

    • 每个网络应用都是基于客户端-服务器模型的。在该模型中,一个应用是由一个服务器进程和一个或多个客户端进程组成的。客户端-服务器模型中的基本操作是事务,它由四步组成:1.客户端向服务器发送一个请求,发起一个事务;2.服务器收到请求后,解释之,并操作它的资源;3.服务器给客户端发送一个响应,例如将请求的文件发送回客户端;4客户端收到响应并处理它,例如Web浏览器在屏幕上显示网页。

    • 一个IP地址就是一个32位无符号整数,它存放在一个IP地址结构中。

    • 客户端和服务器通信时使用的是IP地址,然而对于人们而言大整数是很难记住的,因此因特网也定义了一组更加人性化的域名,以及一种将域名映射到IP地址的机制。域名是一串用点分隔的单词(字母、数字和破折号),它有自己的层级结构。

    • Web内容是与MIME(多用途网际邮件扩充协议)类型相关的字节序列,包括:HTML页面、无格式文本、Postscript文档、GIF图像、JPEG图像等。

    • HTTP响应和请求是类似的,它包括:一个响应行,后面跟随0个或多个响应报头,然后是终止报头的空行,再跟随一个响应主体。 一个响应行的格式为:<version> <status code> <status message>

    • 有以下四种方式终止线程:当顶层的线程例程返回时,线程会隐式终止;线程调用pthread_exit函数,线程会显示终止;如果主线程调用pthread_exit,它会等到所有其他对等线程终止,然后再终止主线程和整个线程,返回值为thread_return;某个对等线程调用exut函数,则函数终止进程和所有与该进程相关的线程;另一个对等线程调用以当前ID为参数的函数ptherad_cancel来终止当前线程。

    • 一个可结合的线程能够被其他线程回收其资源和杀死,在被其他线程回收之前,它的存储其资源是没有被释放的;相反,一个分离的线程是不能被其他线程回收或杀死的。

    • 修改对象的线程叫做写者;只读对象的线程叫做读者。写着必须拥有对对象的独占访问,而读者可以和无限多个其他读者共享对象。读者——写者问题基本分为两类:第一类,读者优先,要求不要让读者等待,除非已经把使用对象的权限赋予了一个写者。换句话说,读者不会因为有一个写者等待而等待;第二类,写者优先,要求一定能写者准备好可以写,它就会尽可能地完成它的写操作。同第一类问题不同,在一个写者后到达的读者必须等待,即使这个写者也是在等待。

    教材学习中的问题和解决过程

    暂无

    代码托管

    上周考试错题总结

    • Linux信号处理说法正确的是(ABDEF)

    A .
    可以用signal()处理信号

    B .
    一个信号最多只能被接收一次

    C .
    kill(1)用来杀死进程

    D .
    kill(1)用来发送信号

    E .
    可以通过键盘发送信号

    F .
    可以用sigaction()处理信号

    • 有关exec系列函数,下面说法正确的是(CE)

    A .
    可以用char[][] 来传递argv

    B .
    进程调用了exec系列函数后,pid会变

    C .
    进程调用了exec系列函数后,代码会改变。

    D .
    system()和exec系列等价。

    E .
    exec系列函数中带e的要传入环境变量参数

    F .
    exec系列函数中带v的要传入环境变量参数

    不能用char[][] 来传递argv,结尾的0(null)无法处理;system=fork+exec+wait;

    • 关于代码 int main(){} 说法正确的是()

    A .
    返回值是0

    B .
    返回值不确定

    C .
    会调用exit(0)

    D .
    返回值大于0

    E .
    上面代码运行完,在命令行中运行echo $? 的值是0

    main中不调用exit,会补上exit(0)。

    结对及互评

    点评模板:

    • 博客中值得学习的或问题:
      • xxx
      • xxx
      • ...
    • 代码中值得学习的或问题:
      • xxx
      • xxx
      • ...
    • 其他

    本周结对学习情况

    结对对象:20155325

    学习内容:第十一章

    学习进度条

    代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
    目标 5000行 30篇 400小时
    第一周 40/40 1/1 20/20
    第二周 40/40 1/2 18/38
    第四周 154/194 2/4 20/58
    第五周 48/242 2/6 20/78
    第六周 59/301 2/8 19/97
    第七周 354/655 2/9 18/115
    第八周 455/1100 1/10 15/130

    尝试一下记录「计划学习时间」和「实际学习时间」,到期末看看能不能改进自己的计划能力。这个工作学习中很重要,也很有用。
    耗时估计的公式
    :Y=X+X/N ,Y=X-X/N,训练次数多了,X、Y就接近了。

    参考:软件工程软件的估计为什么这么难软件工程 估计方法

    • 计划学习时间:18小时

    • 实际学习时间:15小时

    • 改进情况:

    (有空多看看现代软件工程 课件
    软件工程师能力自我评价表
    )

    参考资料

    课堂提交补充

    提交点2

    把第一个练习中的代码(sum)在X86-64(Ubuntu)中反汇编,给出汇编代码和机器码的截图。把X86-64汇编翻译成Y86-64汇编,并给出相应机器码的截图。

    #include<stdio.h>
    void main(int arggc,char *argv[])
    {
    	int sum=0;
    	int i;
    	for(i=0;i<argc;i++)
    	sum+=atoi(argv[i]);
    	printf("sum=%d
    ",sum);
    }
    

    汇编代码截图如下:

    机器代码截图如下:

    提交点3

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

    客户端IP:XXXX
    服务器实现者学号:XXXXXXXX
    当前时间: XX:XX:XX

  • 相关阅读:
    第十八篇:在SOUI中实现PreTranslateMessage
    第十七篇:使用窗口的cache属性加速SOUI的渲染
    通过驱动向打印机发送一段(ESC)控制指令
    转一个希尔排序
    关于Memo或者Edit之类控件, 直接设置Text无法撤销的解决方案
    关于创建无窗体程序的一点心得
    在Vista或更高版本Windows系统中, 获取超大图标的办法
    随笔里的标签为啥不能用空格分隔??
    一个ICMP单元
    Delphi XE5 与其他版本共存
  • 原文地址:https://www.cnblogs.com/zyqzyq/p/7823544.html
Copyright © 2020-2023  润新知