博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
2017-2018-1 20155229 《信息安全系统设计基础》第八周学习总结
阅读量:6957 次
发布时间:2019-06-27

本文共 2209 字,大约阅读时间需要 7 分钟。

2017-2018-1 20155229 《信息安全系统设计基础》第八周学习总结

课上测试补充及课下作业

教材学习内容总结

第十一章

  • 套接字接口是一组函数,用以创建网络应用。
  • 套接字位于网络中的层次,位于传输层以上,应用层以下。套接字是对网络中应用层进程之间的通信进行了抽象,提供了应用层进程利用网络协议栈交换数据的机制。
    832288-20171111214439825-1727164020.jpg

第十二章

  • 多线程的优缺点
  • 优点:(1)程序可以并发执行;

(2)线程共享相同的内存地址空间(这就意味着它们可以访问相同的变量和对象,而且它们从同一堆中分配对象),故它们之间的通信是方便的。

  • 缺点:也是由于线程共享进程的地址空间,因此可能会导致竞争,因此对多个线程共同访问的数据需要一些同步和互斥技术。

  • 多线程服务模式:

    IO的多路复用,即多用户高并发访问服务端时的分发模式,当客户端的请求分发到后端服务线程对其处理时,多线程的服务模式主要有:半同步半异步模式、领导者/跟随者模式。这两种模式主要解决的是多线程各自运行的机制。

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

  • 问题一:进程死锁的危害?
  • 解决:
    832288-20171111224733731-2138599408.jpg
    参考

①使用协议以预防或避免死锁,确保系统不会进入死锁状态;

② 系统可进入死锁状态,但可检测死锁状态,然后进行恢复;

③ 忽视该问题,而认为死锁不可能在系统内发生。

代码调试中的问题和解决过程

  • 问题一:在编译p663的客户端代码时,出现以下问题

832288-20171112171356231-328430637.jpg

  • 我排查了代码的问题,认为是csapp的问题,但是两个文件都放在了/usr/include文件下,最后发现在csapp.h里面最后一行#end if之前添加:
    #include <csapp.c>时,将.c写成了.h,修改了后,运行成功

832288-20171112173015388-254353331.jpg

832288-20171112225832528-664072119.jpg

上周考试错题总结

第三章

  • 14.86-64 Linux中,%rbp的值为0x108, pushq %eax后,%rbp的值为()

A . 0x100

B . 0x108

C . 0x110

D . 0x118

正确答案: B

  • 解析:push不影响%rbp的值

  • 21.x86-64中指令长度是()字节

    A . 1

B . 2

C . 4

D . 1-4

E . 1-8

F . 1-15

G . 1-16

H . 以上都不对

正确答案: F

  • 解析:x86-64中指令的长度是1-15个字节不等

第八章

  • 3.有关exec系列函数,下面说法正确的是()
    A . 可以用char[][] 来传递argv

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

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

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

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

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

正确答案: C E

  • 解析:不能用char[][] 来传递argv,结尾的0(null)无法处理;system=fork+exec+wait;
  • exec函数族的函数执行成功后不会返回

    832288-20171111220513481-206249707.jpg

  • 9.Unix/Linux中通过调用( )可以获取子进程PID。

    A . getpid()

B . getppid()

C . getcpid()

D . fork()

正确答案: D

  • 解析:fork函数只能被调用一次,却会返回两次,一次在调用父进程中,一次是在新创建的子进程中。在父进程中,fork返回子进程的PID。

  • 11.进程调度由内核中的( )处理完成

    A . 上下文切换

B . 中断服务程序

C . 调度器

D . 异常处理程序

正确答案: C

  • 解析:在进程执行的某些时刻,内核可以决定抢占当前进程,并重新开始一个先前被抢占了的进程。这种决策叫做调度,是由内核调度了这个进程。

结对及互评

点评模板:

  • 博客中值得学习的或问题:
  • 代码中值得学习的或问题:

本周结对学习情况

- [20155225](博客链接)- 结对照片- 结对学习内容   - 学习书本十一章、十二章内容   - 学习课上测试及课下补做习题

其他(感悟、思考等,可选)

  • 本周主要学习的是网络编程、并发编程两章,这两章在分别在刘念老师和谢婷婷老师的课上学习了大部分内容,所以在学习时大多数知识都比较好理解,学习的时间也就比较少
  • 本周课上的测试只做出一道题,并且课下作业不是很简单,在接下来还需要对第三、四章的内容进行学习

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 15篇 400小时
第一周 20/20 1/ 12/12
第二周 42/62 1/2 8/20
第三周 62/124 1/3 14/34
第四周 61/185 1/4 10/44
第五周 / 2/6 13/57
第六周 / 2/8 17/74
第七周 / 2/10 15/89
第八周 / 2/12 12/101

尝试一下记录「计划学习时间」和「实际学习时间」,到期末看看能不能改进自己的计划能力。这个工作学习中很重要,也很有用。

耗时估计的公式
:Y=X+X/N ,Y=X-X/N,训练次数多了,X、Y就接近了。

参考:,

  • 计划学习时间:13小时

  • 实际学习时间:12小时

  • 改进情况:在学习十一、十二章上花费的时间较少,在课上作业补充和课下作业上花的较多。

(有空多看看)

参考资料

转载于:https://www.cnblogs.com/fyhtvxq/p/7823433.html

你可能感兴趣的文章
Foxify v0.10.7 发布,基于 TypeScript 的 Node 框架
查看>>
Python数据结构——双端队列
查看>>
GitHub 项目推荐:用深度学习让你的照片变得美丽 ...
查看>>
另类文件加密 图片当密码给文本加密
查看>>
MySQL cluster 7.2集群部署配置
查看>>
iptables开放端口的使用方法总结
查看>>
MySQL数据库如何解决大数据量存储问题
查看>>
CENTOS6.5 yum配置
查看>>
《自顶向下网络设计(第3版)》——1.6 复习题
查看>>
【转】微信小程序给程序员带来的可能是一个赚钱的机遇
查看>>
《Programming Ruby中文版:第2版》终于正式出版了
查看>>
【RSA专题】在RSA2017大会上你会看到什么?勒索软件、物联网、区块链(以及更多)!...
查看>>
使用Observium来监控你的网络和服务器
查看>>
蚂蚁区块链团队资讯简报20170514
查看>>
线性空间(向量空间)
查看>>
多媒体之录音
查看>>
何为程序员思维
查看>>
【导入导出】compress 值为y对导入对象所占空间的影响
查看>>
mysql 分区类型详解
查看>>
ORACLE同义词总结
查看>>