私は内部SSDが約128-256ページの「チャンク」にグループ化された4K以上の「ページ」で構成されていることをどこでも読みました(1、2)。 SSD は、これらのページとブロックを使用して「ブロックレベルでのみデータを消去できます」(したがって、ページブロックを「[NAND] 消去ブロック」と呼びます)。そのパーティションの512Bブロックをシミュレートします(これは従来の理由で行われました)。
Samsung 9 np900x3cノートブックでSandisk U100に書き込むと、奇妙な遅延/停止現象が発生するため、SSDについて学びます。 1つの便利なことは、私のSSDに正確にどのページ/ブロックがあるかを見つけることです。
/sys/...
LinuxにSSDページサイズを決定するためのユーティリティやファイルはありますか?
または、「ドライバが必要な場合や、GoogleがNANDチップの部品番号を検索することもできます。」コメント?
Sandisk SSDをインターネットで検索しましたが、適切なデータシート/仕様が見つかりませんでした。しかし、サンディスクそして人々「4Kランダム読み書き」に言及してください。これはディスクに4Kページがあるという意味ですか?
また、fdisk
セクタサイズ(物理的および論理的)とI / O 512バイトも表示されます。
Disk /dev/sda: 128.0 GB, 128035676160 bytes
255 heads, 63 sectors/track, 15566 cylinders, total 250069680 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x4b914713
Device Boot Start End Blocks Id System
/dev/sda1 * 2048 50331647 25164800 83 Linux
/dev/sda2 50331648 239583231 94625792 83 Linux
/dev/sda4 239583232 250068991 5242880 82 Linux swap / Solaris
ここで「物理的」セクタサイズはいくらですか?誰もがSSDページが4K +であると言うので、これはSSDドライブ自体のパラメータではないようです。ディスクのシミュレーションパラメータですか?パーティションのセクタサイズは「論理的」ですか?また、I/Oサイズはいくらですか?
ポリスチレン
この問題は、以下に関連する可能性があります。これはUSBフラッシュドライブ用です。- 回答が要点を逃しています。man fsstat
質問はfsstat displays the details associated with a file system
ディスク自体についてです。おそらく、より詳細な記事を含む投稿がより良い反応を引き起こす可能性がありますか?
答え1
報告される物理ブロックサイズは、
fdisk
要求時にディスクによって報告された物理ブロックサイズです。 SSDページやブロックの消去とはほとんど関係ありません。4KiB読み取り/書き込みはI / Oパフォーマンスの一般的な尺度であり、「小型」I / O操作を表します。
SSDには、ページサイズや削除ブロックサイズを報告する標準的な方法はありません。データシートにこれを報告するメーカーはほとんどありません。 (サプライヤーの変更などにより、SKUの寿命中に変更される可能性があるためです。)インテルホワイトペーパーこれは、4KiBソートで十分であることを示しています。
実際には、すべてのデータ構造(パーティション、LUKSコンテナのペイロード、LVM論理ボリューム)を1または2MiBの境界に合わせるだけです。結局SSDです。 NTFS(4KiB割り当て単位を使用)などの一般的なファイルシステムを処理するように設計されています。 Windowsがパーティションを1MiBに揃えるだけで十分であると判断した場合は、すべてのSSDメーカーがその製品がこの構成で正しく機能していることを確認できます。
パーティションの外に割り当てられていないスペースの約5%〜10%を残すことをお勧めします。予約済みスペースは、SSDがタイムリーにパフォーマンスを維持するのに非常に役立ちます。
答え2
SMART 属性 241 Total_LBA_Written をチェックし、偽陽性 SSD をテストしました。
警告:次のコマンドはデータを破壊します。
次にdd if=/dev/zero of=/dev/ssd_drive bs=1 count=1
(ファイルシステムのオーバーヘッドなしで実行する必要があります)
セクターサイズが512と報告されたSamsung 850 EVOの場合、わずか1バイトを使用すると数が8増加しました。
したがって、8×512=4096の場合、書き込みbs=4096
も8ずつ増加します。
つまり、ドライブは常に内部で4096バイトのセクタを書き込みます。
答え3
smartctl
(で利用可能smartmontools
)はこれを行う必要があります。