"chunk","block","offset","buffer"和"sector"是什么意思?

sun*_*ima 8 python buffer block sector chunks

我已经看到一些脚本要么处理存档或二进制数据,要么复制文件(不使用python默认函数)使用偏移量缓冲区扇区.

我创建了一个Python应用程序,外部库(存档/提取数据)或二进制文件已经满足了一些要求.我想深入了解一下,通过编写我自己的模块,将这些第三方库功能纳入我的应用程序.现在我想知道这些术语的含义以及我可以从哪里开始.上面有关于这个主题的文件吗?

任何与Python编程语言相关的文档也将受到赞赏.

Alf*_*lfe 15

用于任何(通常相当大)数据量,其仍然只是整个任何大小的一部分,例如文件的前1000个字节.接下来的3000个字节可能是下一个.

用于固定数量的数据(通常在技术上确定),其通常仅是整体的一部分,例如文件的前1024字节.然后,下一个块也将是1024字节长.此外,有时并非所有块都被使用; 1034字节文件的第二个和最后一个块仍然是1024字节大,但只有10个字节将被使用.

偏移是位置距离,通常在某物的开始和感兴趣的位置之间; 例如,如果天气数据文件中的第23个字节存储温度,则温度的偏移量为23个字节.它也可以是数据位置的移位,例如,如果出现问题并且现在文件已损坏,这可能是因为所有字节都被移位32个字节到后面(在开头插入32个零或类似之后),然后整个文件的偏移量为32个字节.

缓冲区是一块内存,其中收集内容以便在缓冲区已满(或接近满)时将它们作为一个整体进行处理.一个典型的例子是缓冲输出 ; 这里单个字符被缓冲直到一行完成,然后在一次写操作中将整行打印到终端.有时缓冲区具有固定大小,有时它们只有一个上限.

扇区就像一个,一个整体的固定大小的一部分,但更多地与技术起源相关.在这种情况下,整体通常是一块硬件(如硬盘驱动器或CD),通常扇区包含.

  • 我不知道有关这些条款的官方文件。不要忘记计算机科学是一个相当新的专业领域;很多术语和词语或多或少都是基于 50 年代、60 年代和 70 年代的程序员发明的传统基础上使用的。没有几个世纪(就像在大多数其他科学中一样)理论家可以一遍又一遍地咀嚼每一个构想的想法,直到达到一个pabulum并且这些术语被固化。搜索“官方”引用有点像在青年俚语中要求参考。 (3认同)