“块”、“块”、“偏移”、“缓冲区”和“扇区”是啥意思?
Posted
技术标签:
【中文标题】“块”、“块”、“偏移”、“缓冲区”和“扇区”是啥意思?【英文标题】:What do "chunk", "block", "offset", "buffer", and "sector" mean?“块”、“块”、“偏移”、“缓冲区”和“扇区”是什么意思? 【发布时间】:2014-03-27 07:50:00 【问题描述】:我见过一些处理存档或二进制数据或复制文件(不使用 python 默认函数)的脚本使用 chunk 或 block 或 偏移量或缓冲区或扇区。
我创建了一个 Python 应用程序,外部库(存档/提取数据)或二进制文件满足了很少的要求。我现在想通过编写自己的模块来更深入地了解这些第三方库功能到我的应用程序中。现在我想知道这些术语的含义以及我可以从哪里开始。上面的主题是否有任何文档?
任何与 Python 编程语言中的这些词相关的文档也将不胜感激。
【问题讨论】:
这些词的解释在每个实现中会略有不同......但为什么不使用在线技术计算词典来了解大致概念呢? 所有导致一行解释。但我想要详细的解释。 但这就是我的意思......每个实现的详细解释都会有所不同。根据您查看的是tar
、cpio
还是cab
存档、Microsoft CBF 或其他任何东西,块/块/扇区可能意味着不同。 offset
应该(希望)表示相同的意思,但它是相对于某些东西(offset from what)。
【参考方案1】:
Chunk 用于任何(通常相当大)数量的数据,这些数据仍然只是整体 any 大小的一部分,例如。 G。文件的前 1000 个字节。接下来的 3000 字节可能是下一个 chunk。
块用于固定数量的数据(通常由技术确定),通常只是整体的一部分,例如。 G。文件的前 1024 个字节。下一个块也将是 1024 字节长。此外,有时并非所有块都被使用; 1034 字节文件的第二个也是最后一个块仍然是 1024 字节大,但只有 10 个字节会被使用。
Offset 是位置距离,通常在某物的开始位置和感兴趣的位置之间; e. G。如果天气数据文件中的第 23 个字节存储温度,则温度的偏移量为 23 个字节。它也可以是数据位置的 shift,例如。 G。如果出现问题并且现在文件已损坏,这可能是因为所有字节都向后移动了 32 个字节(在开头或类似位置插入 32 个零之后),然后整个文件有一个 偏移量 32 字节。
缓冲区是一块内存,当缓冲区已满(或几乎已满)时,会在其中收集事物以便将它们作为一个整体进行处理。一个典型的例子是缓冲输出;这里单个字符被缓冲,直到一行完成,然后在一次写入操作中将整行打印到终端。有时缓冲区的大小是固定的,有时只是有一个上限。
扇区就像一个块,一个整体的固定大小的部分,但更多地与技术渊源相关。在这种情况下,整体通常是一块硬件(如硬盘驱动器或 CD),并且通常 sectors 包含 blocks。
【讨论】:
感谢您的详细解答。有没有与此相关的文件? 我不知道有关这些条款的官方文档。不要忘记计算机科学是一个相当新的专业领域;许多术语和词或多或少地在传统基础上使用,源自 50 年代、60 年代和 70 年代的程序员发明的东西。几个世纪以来(就像在大多数其他科学中一样),理论家们从来没有一次又一次地咀嚼每一个设想的想法,直到达到一个pabulum并且这些术语被固化。搜索“官方”引用有点像用青年俚语询问参考。以上是关于“块”、“块”、“偏移”、“缓冲区”和“扇区”是啥意思?的主要内容,如果未能解决你的问题,请参考以下文章