>> образом, а изен почему-то решил что это - фича. Бывает :)
> SSD Crucial в dmesg пишет о 512 байтных секторах. Хотя известно, что
> внутри флэша контроллер работает с 4k-блоками. Каким образом известить файловую систему
> о том, чтобы она использовала другое физическое представление секторов и отличала
> SSD от стандартного HDD? Подумай на досуге.Ну лично я вообше захинтил ext4'му в опциях что "это у нас, типа, stripe, с блоком 512К" при этом ФС будет стараться вести обмен с накопителем блоками по размеру erase-block'а. Что для SSD лучше чем россыпь из кучи мелочи на вход. Есть у ext4 такие твикинги. Оно исходно под RAID-ы заточено, но, собственно, я не вижу почему бы не применить этот фокус и к SSD, которому крупноблочный формат обмена явно лучше россыпи, которая почем зря заставит изгаляться FTL-уровень по распихиванию "куда-нибудь". Так что оно будет пытаться по возможности оперировать даже не страницами а erase block за раз. Что по идее должно быть достаточно удобным для накопителя.
Алсо, у ФС типа ext4 по сути нет понятия "сектор". Есть "блок ФС". Это минимально адресуемый за раз юнит. То что он по дефолту 4К - очень кстати. И остается разложить ФС так чтобы блоки не попадали на пересечение страниц. Сдается мне что если я выравнивал размещение ФС на целые 512К (по erase block'у), на страницы оно при этом "само" выровняется, просто потому что 4K * 128 == 512K. Т.е. я разложил ext4 с отступом кратным erase block от начала диска. Ну и ясен пень включил trim. В целом вроде неплохо работает - за почти год SSD протерся на 1% судя по SMART.