Dengan penyimpanan mekanis, operasi disk level rendah seek()
menyebabkan kepala hard drive pindah ke lokasi sehingga mereka siap untuk membaca dari area disk tertentu.
Dengan penyimpanan solid state, seperti kartu SD, flash drive, dan SSD, tidak ada bagian perangkat keras yang bergerak, hanya sinyal listrik.
Dengan asumsi teknologi NAND non-volatile RAM adalah dasar dari perangkat keras, fungsi apa yang seek()
sebenarnya dilakukan pada tingkat perangkat keras untuk perangkat seperti itu?
Untuk lebih jelasnya, saya sudah tahu bahwa hal berikut terjadi:
Program Userspace memanggil panggilan
seek()
sistem atau yang setara dengan OS khususKernel menginterpretasikan panggilan sistem dan mengirim pesan ke pengontrol SATA untuk dicari
Pengontrol SATA menginterpretasikan perintah dan memberi tahu perangkat disk yang terpasang, yang merupakan keadaan padat, untuk mencari (atau mungkin itu cukup pintar untuk mengenali bahwa itu adalah keadaan padat dan bahkan tidak memberitahukannya ??)
Yang tidak saya ketahui adalah, perangkat solid state tidak ??? dengan perintah untuk "mencari".
Jika ada detail yang tergantung pada sistem operasi, asumsikan GNU / Linux versi desktop yang relatif standar dengan kernel versi 3.2.
Jawaban:
jika Anda merujuk ke linux, cari masih bergerak maju jumlah byte yang diperlukan. Sebagai contoh:
Akan mulai menyalin nol 1024 byte ke awal disk, tidak masalah jika sdb adalah kartu sd atau SSD, karena hal kecil yang disebut abstraksi , mekanisme sebenarnya dari hal ini dijaga pada level yang lebih rendah.
Memperbarui
Saya mengerti apa yang Anda katakan sekarang. Mengikuti contoh kartu sd saya, memori flash menggunakan sesuatu yang disebut halaman , dan halaman datang dalam ukuran tertentu. ketika pencarian datang, OS mengirimkan perintah ke kartu sd / pengendali kartu untuk pindah ke halaman tertentu untuk membaca dan menulis.
sumber
lseek()
panggilan sistem sebagai contoh spesifik jika diperlukan. Saya tahu bahwa pemanggilan sistem ini tidak hanya mencari secara logis tetapi juga menyebabkan kepala HDD bergerak ketika berhadapan dengan disk mekanis, jadi apa yang dilakukan SSD?