20145319 《信息安全系统设计基础》第十周学习总结
一 教材内容总结
本周感觉主要是学习与I/O相关的系统命令的代码,以及在不借助网络等外力等因素下如何自己编写这些代码的思路,这就要用到一下的linux命令
-
man
:查看帮助文档(一下均以编写who为例子)-
可以知道命令who其实是于
/var/run/utmp
这个文件相关的 -
我们可以再查看utmp的帮助文档,可以得知相关信息,who应该就是访问该文件,并输出相应信息
-
-
man -k xxx |grep key1|grep key2
:根据关键字检索- 知道了与文件相关之后,我们希望知道linux中有哪些函数是跟文件读取相关的,就可以用到上述命令
-
grep -nr xxx /usr/include
:查找宏定义
-
二 课后代码分析
-
cp1.c
:- 复制文件a至文件b,相当于另一种的文件重命名
-
echostate.c
:-
判断当前命令行中的提示符是否是可见的,可见返回1,否则返回0
-
tcgetattr函数
:用于获取和终端相关的参数 -
结构体termios
:是在POSIX规范中定义的标准接口,用于存储一些和终端接口相关的信息
-
-
fileinfo.c
:- 查看目标文件用户,链接数等具体信息
- 查看目标文件用户,链接数等具体信息
-
filesize.c
:- 查看目标文件大小
- 查看目标文件大小
-
ls1.c
:- 显示目标目录下的文件和文件夹
-
ls2.c
:- 显示目标路径下文件的详细信息,类似于
ls -l
和ll
- 显示目标路径下文件的详细信息,类似于
-
setecho.c
:- 设置echo的状态,可以改变符号显示状态,no是不显示符号,yes是显示
- 设置echo的状态,可以改变符号显示状态,no是不显示符号,yes是显示
-
testioctl.c
- 查看终端大小,将终端窗口最大化,会显示不同结果
- 查看终端大小,将终端窗口最大化,会显示不同结果
三 代码托管
学习进度条
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 5000行 | 30篇 | 400小时 | |
第一周 | 0/0 | 1/1 | 20/20 | 学习常用linux命令 |
第二周 | 100/100 | 1/2 | 20/40 | 学习vim,gdb等用法 |
第三周 | 100/200 | 1/3 | 15/55 | |
第四周 | 0/300 | 0/3 | 10/65 | |
第五周 | 100/400 | 1/4 | 15/80 | 重温了汇编相关知识 |
第六周 | 0/400 | 1/5 | 15/95 | 学习了Y86 |
第七周 | 100/500 | 1/6 | 15/110 | 学习了存储器相关知识 |
第八周 | 0/500 | 2/8 | 20/130 | 复习 |
第九周 | 150/650 | 2/10 | 15/145 | 学习了I/O相关知识 |
第十周 | 300/950 | 2/12 | 20/165 | 学习了linux命令代码 |