20145209 《信息安全系统设计基础》第7周学习总结
20145209 《信息安全系统设计基础》第7周学习总结
教材学习内容总结
git的安装测试
Ubuntu中在bash中输入git, 如果没有安装git,会有如下提示:
git的安装非常简单,根据上图中的提示,我们在bash中输入sudo apt-get install git就可以了,可以输入git --version来测试是否安装成功。如下图所示:
不管是使用自己电脑上的虚拟机还是使用实验楼上的虚拟机,新建一个体现自己学号姓名的文件夹很重要,让老师一眼能看出来这是谁做的。如下图,输入mkdir 20145300rocedu 新建一个20145300rocedu文件夹。通过输入cd 20145300rocedu 进入20145300rocedu文件夹:
我们的教材《深入理解计算机系统V2》的英文版名为《Computer Systems :A Programmer's Perspective》,和那本C语言名著《C程序设计语言 (The C Programming Language)》有个专有的缩写K&R一样,《深入理解计算机系统V2》的专用缩写为CSAPP,我们使用的是第二版,所以加上学号信息,通过在bash中输入mkdir 20145300CSAPP2E 建立教材的项目文件夹。根据C项目的规范,我们在20145300CSAPP2E文件夹下建立相应的文件夹:
src:存放源代码文件
include: 存放头文件
bin:存放编译后的目标文件、可执行文件等
lib:存放项目所需的静态库、动态(共享)库
res: 存放项目所需的图标、声音、图片等资源
docs: 存放项目相关的参考资料、帮助文档,比如大家的学习博客就可以放在这里
...
此外还可以建立dist文件夹存放打包,发布以后的代码;建立examples文件夹存放示例代码等。
项目文件夹下可以通过touch README Makefile新建README和Makefile两个文件:
README 是对项目的简要介绍:licence、功能、编译环境等,详细的要在docs下有帮助文档
Makefile 实现项目编译自动化
其他相关文件
我们的教材有12章,在src文件夹下为每章建立了一个文件夹。
建好的项目结构如下图所示:
我们的工作目录一般选择项目目录下,其他的使用相对路径。比如我们在src/01intro目录下输入教材第一章第一页的hello world程序hello.c, 我们使用vim src/01intro/hello.c命令:
代码如下图所示:
在Vim中通过:wq保存hello.c并退出Vim后,我们使用gcc src/01intro/hello.c -o bin/hello来编译程序,注意命令中相对路径的使用。可执行程序hello生成在bin目录下,我们可以使用./bin/hello来执行hello程序。此时目录结构如下图所示:
我们通过git config对git作一下简单配置,user.name尽量体现自己的学号信息。
教材学习中的问题和解决过程
一开始,我直接执行教程说的三步,在执行到git commit步骤时遇到了问题,显示没有配置用户,如图所示,然后在同学帮助下对用户进行了配置,就成功了。
本周代码托管截图
其他(感悟、思考等,可选)
在看了老师的博客教程之后,我按步骤一点一点学会了如何使用git,尝试了第一次使用git上传一次代码,但是很不熟练,有很多地方还是靠同学的帮助才能完成。
学习进度条
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 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 |