教材学习内容总结
- 客户端/服务器
- 网络
- 因特网
- 套接字接口
- Web服务器
- 并发编程
- 基于I/O多路复用的并发编程
- 基于线程的并发编程
- 多线程程序中的共享变量
- 用信号量同步线程
- 使用线程提高并行性
课堂实验3
把课上练习3的daytime服务器分别用多进程和多线程实现成并发服务器并测试
多进程
- 出现进程已经在用的提示
- 解决办法:操作系统没有立即释放端口,可通过setsockopt进行设置,关键代码如下:
- 在服务器代码文件中添加该代码后即可运行
多线程
教材学习中的问题和解决过程
代码调试中的问题和解决过程
- 问题1:单个服务器发送信息、客户端接收信息可以,但服务器发送接收多次信息、客户端发送接收多次就运行出错。
- 问题1解决方案:
代码托管
上周考试错题总结
-
1.假设用ADD指令完成C表达式t=a+b的功能,有关条件码寄存器的说法正确的是()
-
A. 若t==0 ,则ZF=1
-
B. 若t<0, 则CF=1
-
C. 若t<0, 则SF=1
-
D. 若(a<0==b<0)&&(t<0 != a<0), 则OF=1
-
E. 若(a<0==b<0)&&(t<0 != a<0), 则CF=1
-
F. leaq指令不影响条件码寄存器
-
G. cmp指令不影响条件码寄存器
-
答案: A D F 我的答案:A C D F
-
【解析】不一定,SF看的是最高位是0是1,而不是看是不是负数
-
2.x86-64 Linux中,用户模式进程无法访问内核数据结构的内容。
A. 正确
B. 错误
C. 不确定 -
答案:B 我的答案:A
-
【解析】用户模式进程下无法访问
-
3.进程提供给应用程序的关键抽象让我们的程序感觉独占了处理器和内存。()提供了独占处理器的假象。
-
A. 地址空间
-
B. 虚拟内存
-
C. 逻辑控制流
-
D. 指令控制流
-
答案:C 我的答案:B
-
【解析】原话
-
4.有关异常,下面说法正确的是()
-
A. 系统中的异常由异常名唯一确定
-
B. 异常表中存放的是异常处理程序
-
C. 异常表的起始地址存放在异常表基址寄存器中
-
D. 异常处理程序运行在内核模式下
-
答案:CD 我的答案:ACD
-
【解析】系统中的异常并不是由异常名唯一确定的
结对及互评
本周结对学习情况
- [20155308](博客链接)
学习进度条
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 5000行 | 30篇 | 400小时 | |
第一周 | 200/200 | 2/2 | 20/20 | |
第二周 | 300/500 | 2/4 | 18/38 | |
第三周 | 500/1000 | 3/7 | 22/60 | |
第四周 | 300/1300 | 2/9 | 30/90 |
尝试一下记录「计划学习时间」和「实际学习时间」,到期末看看能不能改进自己的计划能力。这个工作学习中很重要,也很有用。
耗时估计的公式
:Y=X+X/N ,Y=X-X/N,训练次数多了,X、Y就接近了。
-
计划学习时间:XX小时
-
实际学习时间:XX小时
-
改进情况:
(有空多看看现代软件工程 课件
软件工程师能力自我评价表)