20155236 《信息安全系统设计基础》第11周学习总结

20155236 《信息安全系统设计基础》第11周学习总结

教材学习内容总结

  • ls -l:可以显示当前目录下目录或文件的详细属性信息
  • 1
  • 详细属性说明:
    • 第一位表示类型,-代表文件,d代表目录;
    • 二至四位代表文件创建者权限,-代表无权限,r代表具有读权限,w代表具有写权限,x代表具有执行权限;
    • 五至七位代表同组用户权限;
    • 八至十位代表其他用户权限。
  • 第二列为文件硬链接数,或目录、子目录数。若为目录的,该字段至少是2,表示该目录下至少有两个子目录
  • 第三列为所有者
  • 第四列为所属用户组
  • 第五列为文件大小
  • 第六列为文件最后修改时间
  • 第七列为文件名
  • 编写ls三大问题
    • 1、如何列出目录内容
    • 2、如何读取文件属性
    • 3、如何判断目录名与文件名
  • 目录文件永远不会为空,因为每一个目录会表示当前文件夹,以及他的父文件夹,所以每个目录至少包含两个特殊项...,其中.表示当前目录,..表示上一级目录

echostate.c

  • 功能:查看在命令行中输入命令时是否可见,可见返回1,否则返回0
    • echo is on:命令可见
    • echo is off:命令不可见

setecho.c

  • 功能:设置echo的状态,用来改变输入指令是否可见。
    • 输入y(或是以y开头的一串字符),命令可见
    • 否则(即输入不以y开头的字符),命令不可见

fileinfo.c

  • 功能:查看文件信息
  • 其中各变量的含义是:(通过grep -nr XXX /usr/include可查询)
    • mode:st_mode 文件的类型和存取的权限
    • links:st_nlink 连到该文件的硬链接数目,刚建立的文件值为1
    • user:st_uid 用户ID
    • group:st_gid 组ID
    • size:st_size 文件字节数
    • modtime:st_mtime 最后一次修改时间

ls1.c

  • 功能:显示指定目录下的所有文件(默认为当前目录)

ls2.c

  • 显示指定目录下的文件详细信息(默认为当前目录)

spwd.c

  • 功能:显示当前目录路径

testioctl.c

  • 查看窗体大小信息

教材学习中遇到的问题

who.c

cp1.c

  • 第一遍的输入是错误的,第二遍的输入正常
  • 2
  • 通过错误提示,我们可以观察其报错部分的代码,调用了oops()自定义函数
void oops(char *s1, char *s2)
{
    fprintf(stderr, "Error: %s ", s1);
    perror(s2);
    exit(1);
}
  • 经查找相关资料可以得到,perror(s)用来将上一个函数发生错误的原因输出到标准设备(stderr)。参数 s 所指的字符串会先打印出,后面再加上错误原因字符串。此错误原因依照全局变量errno(这里的说法不准确,errno是一个宏,该宏返回左值) 的值来决定要输出的字符串。
  • 在库函数中有个errno变量,每个errno值对应着以字符串表示的错误类型。当你调用"某些"函数出错时,该函数已经重新设置了errno的值。perror函数只是将你输入的一些信息和现在的errno所对应的错误一起输出。
  • 这就是函数自动输出错误信息的原因。

结对学习

1、页表:是一个数据结构,存放在物理存储器中,将虚拟页映射到物理页,就是一个页表条目的数组。
页表就是一个页表条目PTE的数组。
PTE:由一个有效位和一个n位地址字段组成的,表明了该虚拟页是否被缓存在DRAM中。 页表的组成:有效位+n位地址字段
2、如果设置了有效位:
地址字段表示DRAM中相应的物理页的起始位置,这个物理页中缓存了该虚拟页。
如果没有设置有效位:
空地址:表示该虚拟页未被分配
不是空地址:这个地址指向该虚拟页在磁盘上的起始位置。

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

  • 本周主要是对上一周学习的精进,通过实验和代码实践,能帮助我们更好理解本章内容;并使我们通过亲身的编译链接执行,慢慢体会Linux的运作,强大的系统调用,可以帮助我们完成更多的事情,有一种通过C语言通过代码“操控”系统的感觉。但这种体验是要建立在熟悉使用各种Linux查询指令的基础上的,只有学会怎样搜索有用信息、学会思考分析,才能应对更多的陌生的指令。

学习进度条

代码行数(新增/累积)博客量(新增/累积)学习时间(新增/累积)重要成长
目标5000行30篇400小时
第一周200/2001/120/20
第二周79/2791/230/50
第三周182/4611/325/75
第四周36/4971/43/78
第五周194/6911/528/106
第六周520/12112/727/133
第七周85/12961/821/153
第八周0/12962/1020/173
第九周234/15301/1130/203
第十周453/19832/1320/223
第十一周200/21831/1410/234

参考资料

转载于:https://www.cnblogs.com/fcgfcgfcg/p/7966694.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值