| It seems pretty clear that PCIe-based solid-state drives using the NVMe protocol (and U.2 or M.2 connectors) will have much higher performance than AHCI/SATA over the next 5+ years (for both latency and throughput). Since coreboot (with TianoCore or SeaBIOS) and the impressive nouveau and radeon projects, there's fewer places binary blobs can hide on a modern computing system. One of the bigger exceptions is the drive controllers (which processes AHCI/NVMe messages and things like wear levelling). Besides restrict freedom and performance experimentation, it's also a security issue, given the scope for man-in-the-middle attacks [1] Now at the start of NVMe's reign, it's probably an especially good time to start a project to make an open-source replacement to the proprietary firmware blobs of SSDs/flash memory! :) [1] http://www.bunniestudios.com/blog/?p=3554 |
I mean, on the 'remapping bad sectors' bit, right now? to the OS, it looks like you are doing a sequential read, but if there was a remapped sector in there? you're doing a random read. We'd be much better off, at least on server systems with decent raid subsystems, just handling the bad sectors in software.
Right now, I pay almost double for my spinning disk because I want slightly better firmware that is designed to fail outright rather than retry, because all my disks are in raid. some consumer disks allow you to adjust the time-limited error recovery paramiters, but in my experience, it's super unreliable.