闪存原始数据根据读取工具而变化。为什么?

Flash memory raw data changes depending on the reading tool. Why?

我一直在玩弄 8GB 记忆棒中的原始数据,直接读取和写入特定扇区,但由于某些原因,更改并不保持一致。

我已经使用 Active @ Disk Editor 在特定扇区写入了一个字符串,当我通过 Active 读取它时它看起来是一致的(它在卸载、重新启动后仍然存在...),但是如果我尝试读取它使用 ddhexdump 的终端结果不同。

前段时间我正在研究完全有效地擦除磁盘的方法,我在某处读到固态驱动器(例如闪存驱动器或 SSD)的内存比它声明的要多,因此它的内部结构不断更换部分内存延长寿命之类的。

我不知道是因为那个还是它是否正确。你能告诉我我是否错了或者在哪里可以找到关于这个主题的好的文档吗?

好的,我刚刚弄明白了。

显然,当您在十六进制编辑器中打开磁盘时,您可以通过两种方式打开它,您可以将其作为物理磁盘(整个磁盘)或逻辑磁盘(也称为卷或分区)打开。

A​​ctive @ Disk Editor 将其作为物理磁盘打开,而使用 ddhexdump 将其转储为逻辑磁盘。换句话说,它正在转储物理磁盘内唯一分区的内容。这意味着我使用 Active 写入数据的实际物理扇区与我正在读取的物理扇区之间存在偏移量(相当大的偏移量,2048 个扇区,每个扇区 512 字节)。

所以正在进行更改,我只是看错了位置。希望这可以节省一些人的时间。