Di Linux (dan era 1980-an Unixes), perangkat penyimpanan (cukup sering partisi disk pada beberapa hard disk , atau pada beberapa SSD ) adalah perangkat blok (lihat ini ) sehingga urutan [sub-] blok (yang merupakan unit dasar I / O fisik ). Ukuran blok fisik tergantung pada perangkat keras (disk IDE lama memiliki ukuran blok 512 byte, disk SATA besar baru memiliki ukuran blok 4Kbytes, baca wikipage Format Lanjutan ), dan ketika Anda membuat sistem file (dengan misalnya mkfs
, lihat mke2fs (8)) Anda dapat menentukan ukuran blok logis yang merupakan kelipatan (seringkali kekuatan kecil dua, termasuk 1) dari ukuran blok fisik itu. Baca juga tentang pengalamatan blok logis .
Di masa lalu (pikirkan workstation Sun3 tahun 1990-an) disk itu terbuat dari silinder dengan kepala diatur dalam sektor (baca CHS wikipage), dengan sektor yang berisi blok. Hari ini, ini masih tetap tetapi merupakan artefak buatan yang disediakan oleh pengontrol hard disk (sirkuit pada disk itu sendiri). Dalam beberapa OS driver perangkat blok menjadwal ulang dan memesan ulang permintaan IO untuk meminimalkan pergerakan kepala disk dan latensi rotasi .
Dengan cara ini sistem file dapat bekerja dengan semua jenis perangkat penyimpanan (hard disk tradisional, SSD, USB flash drive, dll.), Dan hanya driver perangkat untuk perangkat penyimpanan yang diubah.
Ya, tetapi kejahatan ada dalam perinciannya (mis. Membaca tentang TRIM dan Tulis Amplifikasi , khusus untuk SSD). Dan detailnya penting, sehingga implementasi sebenarnya tidak sesederhana gambar Anda. Baca lebih lanjut tentang sistem file (dan pikirkan sistem file berkerumun & jauh termasuk SMB & NFS ; baca juga tentang Logical Volume Manager ).
Baca Sistem Operasi: Tiga Potong Mudah (dan bagiannya yang bertahan lama ).
Perhatikan bahwa perangkat blok hilang dalam FreeBSD (sebenarnya menyediakan abstraksi umum untuk perangkat karakter dan blok). Saya menduga bahwa bahkan di Windows OS tahu tentang partisi, ukuran blok, dll (tetapi Anda harus memeriksa).