zoukankan      html  css  js  c++  java
  • 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

  • 相关阅读:
    对象池使用时要注意几点
    Flash3D学习计划(一)——3D渲染的一般管线流程
    714. Best Time to Buy and Sell Stock with Transaction Fee
    712. Minimum ASCII Delete Sum for Two Strings
    647. Palindromic Substrings(马拉车算法)
    413. Arithmetic Slices
    877. Stone Game
    338. Counting Bits
    303. Range Sum Query
    198. House Robber
  • 原文地址:https://www.cnblogs.com/zyqzyq/p/7823544.html
Copyright © 2011-2022 走看看