Linux

作業系統如何知道我們正在使用哪種類型的快閃記憶體

  • August 22, 2019

例如,如果我使用命令 dd if=/dev/zero of=/dev/sdX清除 SD 卡的內容,我猜這會完全擦除(設置為零)卡上的每個內容?分區、文件系統、數據等

現在我無法理解的是,當我之後將這個設備再次插入電腦,Linux 或 Windows 時,我能夠再次寫入它。如果一切都被擦除,作業系統如何知道這是什麼類型的設備?

有不同類型的快閃記憶體,我猜他們需要特定的驅動程序來寫入它們取決於什麼類型,那麼作業系統如何知道什麼類型?

是否有一小部分快閃記憶體未被覆蓋,其中包含解釋它是什麼類型的記憶體的數據?

您的 SD 卡不僅僅是像 DVD(或 CD 或磁片)那樣的無源儲存器。SD 卡包括一個控制器:

[ [ flash memory] <=> [ controller] ] <=> [ your computer]

有不同類型的快閃記憶體,我猜他們需要特定的驅動程序……

SD卡內的控制器處理細節。這使得開發新卡成為可能,其中快閃記憶體具有不同的細節,並且舊電腦/設備無需任何修改即可使用它們。

也許最重要的是,這使製造商更容易銷售使用新技術的卡:-)。

寫入全零/dev/sdX不會導致控制器自行銷毀。就像將全零寫入更傳統的硬碟驅動器一樣,不會破壞硬碟驅動器內的控制器。

引用自:https://unix.stackexchange.com/questions/492820