shadow_one schrieb:JA das Alignment muss durch einer 2 Potenz (oder genauer durch 1024) teilbar sein.
Falsch, das Allignment sollte ein ganzes Vielfaches von 8 sein. Warum? Weil die SSDs intern mit 4k Pages arbeiten so wies viele aktuelle HDDs intern 4k Sektoren (Pages neuerdings auch 8k Pages) haben. Nach außen werden aber 512Byte LBA angeboten (512B Sektor Simulation weil (S)ATA HDDs sehr lange immer nur 512Byte Sektoren hatten und manche SW deshalb fest von diesem Wert ausgeht). Üblicherweise nutzen die Filesysteme auch 4k Sektoren und wenn nun die Partition nicht an einer 4k Grenze beginnt, so liegen die Sektoren des Filesystems nicht genau auf einem internen 4k Sektor des Speichermediums und beim Schreiben eines ganzen Sektors werden dann immer zwei interne Sektoren beschrieben.
Der Nachteil der Emulation ist aber, dass trotzdem Unalligned Zugriffe entstehen können, denn auf SATA Ebene werden immer ganze LBA übertragen. Liest man z.B. 100 Byte ab der Adresse 600 einer Datei, so wird der zweite LBA im Sektor adressiert und dadurch ein unallignet Zugriff ausgelöst. Beim Lesen ist das weniger kritisch, es werden zwar intern dann immer die 4k des Sektors gelesen, aber beim Schreiben ist das unangenehmer. Bei HDD muß diese erst in einer Umdrehung den 4k Sektor lesen, die 512Byte des LBA ersetzen, die Checksumme neu berechnen und alles bei der nächsten Umdrehung dann überschreiben. Bei SSD ist es ähnlich, auch hier wird dann entweder der LBA als Teil einer Page oder sogar die ganze veränderte 4k Page in einer anderen Page geschrieben und neu gemappt. Wird also ein ganze 4k Sektor LBA weise neu geschrieben und geschied dies so langsam, das ein Schreibvorgang beendet ist bevor der Nächste beginnt (oder ohne NCQ), so kann im schlimmesten Fall ein WA von 8 entstehen. Normal ist das aber nicht und die Allignemt kann man leicht mit ASS prüfen: Steht oben linkt Ok in grün, passt es und wenn dort bad in rot steht, sollte man es anpassen.