第一周作业:第一章、第七章,计算机系统漫游
第二周作业:复习C语言中关于二进制文件和文本文件读写的相关内容,模仿od完成myod
第三周作业:第二章《信息的表示和处理》
第四周作业:掌握两个重要命令: man -k key1 | grep key2| grep 2 : 根据关键字检索系统调用 grep -nr XXX /usr/include :查找宏定义,类型定义
第五周作业:第三章《程序的机器级表示》
第六周作业:第八章《异常控制流》,第十章《系统级I/O》
第七周作业:第四章《处理器体系结构》
第八周作业:第十一章《网络编程》,第十二章《并发编程》
第九周作业:第六章《存储器层次结构》
第十周作业:无
第十一周作业:第九章《虚拟存储器》
第十二作业:无
第十三周作业:找出全书你认为最重要的一章,深入重新学习一下
第十四周作业:找出全书你认为学得最差的一章,深入重新学习一下
实验报告链接汇总
实验一 开发环境的熟悉:
1.交叉编译环境
2.目标机宿主机联通
3.目标机运行程序
实验二 固件程序设计:
1.MDK
2.LED
3.UART
4.国密算法
实验三 实时系统:
1.并发程序-1:客户端传一个文本文件给服务器
2.并发程序-2:用多线程实现wc服务器并使用同步互斥机制保证计数正确
实验四 外设驱动程序设计:
1.学习资源中全课中的“hqyj.嵌入式Linux应用程序开发标准教程.pdf”中的第十一章
2.在Ubuntu完成资源中全课中的“hqyj.嵌入式Linux应用程序开发标准教程.pdf”中的第十一章的test试验
实验五 通讯协议设计:
1.研究OpenSSL算法,测试对称算法中的AES,非对称算法中的RSA,Hash算法中的MD5
2.在Ubuntu中实现对实验二中的“wc服务器”通过混合密码系统进行防护
代码托管链接和二维码:
截图 git log --pretty=format:"%h - %an, %ar : %s" 的结果,
代码量汇总提交statistics.sh的支持截图
代码驱动的学习做到没有?
通过几次实验以及利用的工具,学到了一些代码驱动的知识。
加点代码,改点代码是理解的最好方式,参考编程的智慧,谈谈你的心得?
加代码和改代码都是在已经理解了程序的基础上进行的,所以我们必须先要读懂程序,才可以进行下一步的添加或者改进。
实践上有什么经验教训?
需要先理解和读懂代码的意思,再进行实验,否则步骤会混乱非常消耗时间。
你有什么项目被加分,谈谈你的经验
优秀作业(给出链接和二维码)
总结(给出链接和二维码)
项目(给出链接和二维码)
教程(给出链接和二维码)
你有什么项目被扣分,谈谈你的教训
不动手实践
迟交作业
不验收代码
...
课程收获与不足
自己的收获(投入,效率,效果等)
对于计算机系统有了更全面更细致的了解,并且在代码方面有了更深的理解。
自己需要改进的地方
希望自己可能更加精益求精一些,不要满足于完成了一些基础知识。
如果有结对,写一下你提供的帮助或接受了什么帮助,并对老师提供参考建议
结对的过程主要是课后习题的讨论,结对同伴学习能力很强,对于题目的理解更加深刻,在相互交流之后学习到了更好的方法。
给开学初的你和学弟学妹们的学习建议
还是要理论和实践结合,不要满足于基本的知识。
如果重新学习这门课,怎么做才可以学的更好
多实践一些代码吧。
问卷调查
你平均每周投入到本课程多长时间?
大概有10个小时吧
每周的学习效率有提高吗?
学习效率提高不明显。
学习效果自己满意吗?
还可以,不是很好,还有进步的空间。
课程结束后会继续一周至少一篇博客吗?(如果能做到,毕业时我把你的博客给你集结成一本书送给你作纪念)
大概不会
你觉得这门课老师应该继续做哪一件事情?
课外拓展方面应该继续。
-你觉得这门课老师应该停止做哪一件事情?
我觉得问题还是在讲的不是很有条理吧,感觉零零散散的全靠课上听讲没有办法把知识整合到一起。
你觉得这门课老师应该开始做什么新的事情?
做一个讲课的流程图与课本结合。
其他任意发挥