È possibile determinare in modo abbastanza semplice la latenza di rotazione: l'ho fatto una volta come parte di un progetto universitario. È descritto in this report. Ti consigliamo di saltare a pagina 7 dove vedi alcuni grafici della latenza. Passa da circa 9,3 ms a 1,1 ms - una caduta di 8,2 ms. Ciò corrisponde direttamente a 60 s/8.2 ms = 7317 RPM
.
E 'stato fatto with simple C code - ecco la parte che misura le posizioni tra a
e in un file zero. L'abbiamo fatto con valori sempre più grandi fino b
abbiamo vagato tutto intorno un cilindro:
/* Measure the difference in access time between a and b. The result
* is measured in nanoseconds. */
int measure_latency(off_t a, off_t b) {
cycles_t ta, tb;
overflow_disk_buffer();
lseek(work_file, a, SEEK_SET);
read(work_file, buf, KiB/2);
ta = get_cycles();
lseek(work_file, b, SEEK_SET);
read(work_file, buf, KiB/2);
tb = get_cycles();
int diff = (tb - ta)/cycles_per_ns;
fprintf(stderr, "%i KiB to %i KiB: %i nsec\n", a/KiB, b/KiB, diff);
return diff;
}
fonte
2009-05-25 22:22:06
Questa domanda ha [una risposta su Unix e Linux] (http://unix.stackexchange.com/questions/65595/how-to-know-if-a-disk-is- un-SSD-o-an-HDD/65602 # 65602). – Totor
[Come verificare se la mia Ubuntu è posizionata su SSD?] (Http://askubuntu.com/q/792814/253474) –