2018-2019-1 20165214 《信息安全系统设计基础》第六周学习总结
20165214 2018-2019-1 《信息安全系统设计基础》第六周学习总结
教材学习内容总结
- 1、输入操作是从I/O设备复制数据到主存,而输出操作是从主存复制数据到I/O设备
- 2、Unix I/O使得所有的输入和输出都能以一种统一且一致的方式来进行
- 3、普通文件包含任意数据。应用程序一般要区分文本文件和二进制文件。文本文件是只含有ASCII或Unicode字符的普通文件。
- 4、绝对路径名和相对路径名的概念。
- 5、open函数将filename转换为一个文件描述符。int open(char *filename,int flag,mode_t mode);其中flag参数有:O_RDONLY,O_WRONLY,O_RDWR,O_CREAT,O_TRUNC,O_APPEND。
- 6、关闭一个已关闭的描述符会出错。write函数从内存位置buf复制之多n个字节到描述符fd的当前文件位置。
- 7、size_t是无符号类型的,ssize_t是有符号类型的。
- 8、RIO提供了两类不同的函数:无缓冲的输入输出函数,带缓冲的输入函数。
- 9、rio_readn函数从描述符fd的当前文件位置最多传送n个字节到内存位置,no_writen函数是反过来的。rio_readlineb函数从文件rp独处下一个文本行,包括换行符号。
- 10、应用程序能够通过调用stat和fstat函数来检索文件的信息。其中两个比较重要的是st_size成员包含了文件的字节数大小。st_mode编码了文件访问许可位。
- 11、应用程序可以用readdir系列函数来读取目录的内容。
- 12、内核通过三个相关的数据结构来表示打开的文件:描述符表、文件表、v-node表。所有进程共享这张v-node表。
- 13、Linux shell提供了I/O重定向操作符,允许用户将磁盘文件和输入输出联系起来,键入foo.txt,可以直接标准输出重定向到磁盘文件foo.txt。
- 14、int dup2(int oldfd,int newfd);这个函数可以把文件描述符从前面的老的复制到后面的新的,使这两个文件描述符同时指向一个地方。
代码托管
学习进度条
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | |
---|---|---|---|
目标 | 5000行 | 30篇 | 400小时 |
第一周 | 63/63 | 1/1 | 7/7 |
第二周 | 100/163 | 1/2 | 15/22 |
第三周 | 2/4 | 16/38 | |
第四周 | 2/6 | 15/53 | |
第五周 | 1/7 | 17/70 | |
第五周 | 2/9 | 18/88 |
-
计划学习时间:18小时
-
实际学习时间:18小时