20211128《信息安全系统设计与实现》第12章学习笔记

发布时间 2023-11-18 11:02:19作者: 20211128李杰

一、任务内容

自学教材第12章,提交学习笔记(10分)

1. 知识点归纳以及自己最有收获的内容,选择至少2个知识点利用chatgpt等工具进行苏格拉底挑战,并提交过程截图,提示过程参考下面内容 (4分)

“我在学***X知识点,请你以苏格拉底的方式对我进行提问,一次一个问题”

核心是要求GPT:“请你以苏格拉底的方式对我进行提问”

然后GPT就会给你提问,如果不知道问题的答案,可以反问AI:“你的理解(回答)是什么?”

如果你觉得差不多了,可以先问问GPT:“针对我XXX知识点,我理解了吗?”

GPT会给出它的判断,如果你也觉得自己想清楚了,可以最后问GPT:“我的回答结束了,请对我的回答进行评价总结”,让它帮你总结一下。

2. 问题与解决思路,遇到问题最先使用chatgpt等AI工具解决,并提供过程截图(3分)

3.实践过程截图,代码链接(2分)

4.其他(知识的结构化,知识的完整性等,提交markdown文档,使用openeuler系统等)(1分)

 

二、知识点归纳以及自己最有收获的内容

(一)知识点归纳

1、块设备I/O缓冲区

块设备I/O缓冲区是用于在计算机系统中管理块设备(如硬盘驱动器或固态驱动器)读取和写入数据的重要数据结构。它包含了一系列信息来有效地处理块设备I/O操作。

数据块:缓冲区中最重要的部分是用来存储实际数据的数据块。这些数据块通常具有固定大小(如4KB或8KB),并且是从磁盘读取或写入磁盘的基本单位。操作系统使用这些数据块来暂时存储即将被写入到磁盘或者刚刚被读取出来的数据。

/写指针:缓冲区会跟踪下一个要进行读取或写入操作的数据块的位置。这些指针确保数据按照正确的顺序进行读取和写入,以避免数据混乱或丢失。

缓存元数据:除了实际的数据块,缓冲区中还可能包含一些额外的元数据信息,用来描述和管理数据块。这些元数据可能包括校验信息(例如校验和)、时间戳(记录数据块的创建或修改时间)、块编号(用于唯一标识数据块)等。

控制信息:最后,缓冲区还可能包含一些控制信息,用于管理I/O操作。这些信息可能包括读取或写入操作的状态(例如进行中、已完成、出错等)、错误处理信息(例如校验错误或设备故障)、以及其他与I/O操作相关的控制信息。

2、Unix I/O缓冲区管理算法

Unix系统中的I/O缓冲区管理算法涉及到三种不同的缓冲方式:

全缓冲(Fully Buffered I/O):在全缓冲模式下,文件的数据会被缓存在内存中的缓冲区中,直到缓冲区被填满或者执行了flush操作时才会进行实际的I/O操作。这种方式适用于顺序读写大文件的情况,可以减少频繁的系统调用,提高效率。

行缓冲(Line Buffered I/O):行缓冲模式会在遇到换行符时执行实际的I/O操作,也就是说,当一行数据被填满或者遇到换行符时才进行I/O操作。这种方式通常用于面向文本的I/O,例如标准输入输出设备,能够提供及时的交互反馈。

无缓冲(Unbuffered I/O):无缓冲模式下,数据会立即传输到内核并刷新到设备,每次I/O操作都会直接影响到底层设备。这种方式适用于特定的I/O需求,例如对实时性要求很高的情况或者特定的错误输出设备。

二)最有收获的内容

 

 

 

 

 

 

、问题与解决思路

 

、实践过程