Con l'archiviazione meccanica, il funzionamento a basso livello del disco seek()fa spostare le testine del disco rigido in una posizione in modo che siano pronte per la lettura da una determinata area del disco.
Con l'archiviazione a stato solido, come schede SD, unità flash e SSD, non ci sono parti mobili dell'hardware, solo segnali elettrici.
Supponendo che una tecnologia RAM non volatile NAND sia la base dell'hardware, quale funzione svolge seek()effettivamente a livello hardware per tale dispositivo?
Per essere chiari, so già che succede quanto segue:
Il programma Userspace chiama la
seek()chiamata di sistema o l'equivalente specifico del sistema operativoIl kernel interpreta la chiamata di sistema e invia un messaggio al controller SATA per cercare
Il controller SATA interpreta il comando e dice al dispositivo a disco collegato, che è a stato solido, di cercare (o forse è abbastanza intelligente da riconoscere che è a stato solido e non lo dice nemmeno ??)
Quello che non so è, dispositivo a stato solido fa ??? con il comando di "cercare".
Se ci sono dettagli che dipendono dal sistema operativo, si supponga una versione desktop relativamente standard di GNU / Linux con la versione 3.2 del kernel.