The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

Для ядра Linux представлен планировщик ввода-вывода FIOPS дл..., opennews (?), 10-Янв-12, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


67. "Для ядра Linux представлен планировщик ввода-вывода FIOPS дл..."  +2 +/
Сообщение от uniman (?), 11-Янв-12, 16:22 
> Еще файловая система может
> подыгрывать SSD высылая ему команду trim, указывающую что "мы больше вон
> те блоки не юзаем, можешь их подгрести GC'ом когда делать нечего".
> Сие улучшает скорость записи, т.к. контроллеру ssd приходится не решать проблемы
> по мере их возникновения, стопоря запись, а появляется шанс заранее дорогу
> расчистить, чтобы потом по ней "с ветерком" шпарить.

Гм, матчасть...

Вообще-то посылать TRIM - не дело слоя FS с бородатого года. В коде FS это вообще командо для контролеро как бы не обязано фигурировать.
Дело FS - файло по блокам абстрактного массива распихивать. Вот другой вопрос - как, учитывая пару л-тройке логических слоев до реального физического массива.

Насчет реализации TRIM ункутри FBSD. Да есть оно.
Насчет как работает - сам не тестировал, все как-то накопители без этого попадаются.

К примеру, кусочек кода, где меняется поведение очереди в зависимости от трям/не-трям контролера.
http://svnweb.FreeBSD.org/base/release/9.0.0/sys/cam/ata/ata...

/*
* Actually translate the requested transfer into one the physical driver
* can understand.  The transfer is described by a buf and will include
* only one physical transfer.
*/
static void
adastrategy(struct bio *bp)
{
.......    
        /*
         * Place it in the queue of disk activities for this disk
         */
        if (bp->bio_cmd == BIO_DELETE &&

            (softc->flags & ADA_FLAG_CAN_TRIM))
                bioq_disksort(&softc->trim_queue, bp);
        else
                bioq_disksort(&softc->bio_queue, bp);
........
}

Ответить | Правка | Наверх | Cообщить модератору

83. "Для ядра Linux представлен планировщик ввода-вывода FIOPS дл..."  +/
Сообщение от Аноним (-), 11-Янв-12, 18:27 
>> по мере их возникновения, стопоря запись, а появляется шанс заранее дорогу
>> расчистить, чтобы потом по ней "с ветерком" шпарить.
> Гм, матчасть...

Что - матчасть?

> Вообще-то посылать TRIM - не дело слоя FS с бородатого года.

ФС лучше всех остальных знает когда вон те данные на ФС уже никому не нужны. Стало быть, ей и инициировать это дело.

> В коде FS это вообще командо для контролеро как бы не обязано фигурировать.

Если честно - я не смотрел сорцы как это организовано. Я знаю что как минимум ext4 и btrfs это умеют, как и мое оборудование, и это работает. Если мне попадет шлея под хвост - ну ок, я сунусь и посмотрю как это сделано.

> Дело FS - файло по блокам абстрактного массива распихивать.

Ну так в этом процессе как раз и обнаружится что блоки по адресу от X до Y нам и не требуются уже. Логично захинтить накопитель о том фактк что их можно почистить. Как именно сделана отсылка trim я честно говоря не смотрел. Я только поигрался с этой механикой и заметил что это работает (есть вполне доступные методы проверки).

> Вот другой вопрос - как, учитывая пару л-тройке логических слоев
> до реального физического массива.

Если через эти слои можно адресно записывать блоки то почему нельзя их же и чистить?

> Насчет реализации TRIM ункутри FBSD. Да есть оно.

А я то думал что у ней внутри неонка :)

> Насчет как работает - сам не тестировал, все как-то накопители без этого
> попадаются.

Практически любой современный ssd например просто обязан trim уметь - фича уже довольно баянистая. А на механическом диске оно как-то и не надо - нет физического смысла. Это всего лишь хинт контроллеру накопителя что он может если хочет заранее стереть эти блоки. Чтобы не пришлось это делать в те моменты когда приперло по причине отсутствия чистых блоков, внепланово просрав скорость записи (erase блока флеша - довольно медленная операция).

Ответить | Правка | Наверх | Cообщить модератору

86. "Для ядра Linux представлен планировщик ввода-вывода FIOPS дл..."  –1 +/
Сообщение от uniman (ok), 11-Янв-12, 19:01 
>>> по мере их возникновения, стопоря запись, а появляется шанс заранее дорогу
>>> расчистить, чтобы потом по ней "с ветерком" шпарить.
>> Гм, матчасть...
> Что - матчасть?
>> Вообще-то посылать TRIM - не дело слоя FS с бородатого года.
> ФС лучше всех остальных знает когда вон те данные на ФС уже
> никому не нужны. Стало быть, ей и инициировать это дело.

Иницировать - это да. Может быть.

>> В коде FS это вообще командо для контролеро как бы не обязано фигурировать.
> Если честно - я не смотрел сорцы как это организовано.
> Если через эти слои можно адресно записывать блоки то почему нельзя их
> же и чистить?

Блин :) Матчасть. Никто не "чистит блоки". В них есть функ запись, из них есть функ чтения.
Как бэ все.
В метаблоках он может быть помечен как занятый, может как свободный.
Прочитал метаблоки в память, пометил как свободные, синхронизировал метаблоки из памяти на диск - все.

Командой TRIM дополнительно информируется SSD при обновлении метаблоков, что, мол, воооон в те блоки с фуфлом в них - можно писать, ну и SSD весело в них пишет, если считает необходимым.
Говорят, это SSD облегчает его нелегкую кремниевую жизнь.

Традиционно FS логика Unix кроме чтения и записи особо никак не коммутировала с слоем драйверов. То есть пипл старался так делать.
Ну вот теперь традиции меняются :)

> Насчет реализации TRIM ункутри FBSD. Да есть оно.
> А я то думал что у ней внутри неонка :)

Некоторые так и думают, в своем мире. Судя по комментариям.

>> Насчет как работает - сам не тестировал, все как-то накопители без этого
>> попадаются.
> Практически любой современный ssd например просто обязан trim уметь - фича уже
> довольно баянистая.

Да хрен там. Может я такой невезучий. Или может прогресивное человечество ушло вперед, и унесло триманутое SSD с собой.

Ответить | Правка | Наверх | Cообщить модератору

110. "Для ядра Linux представлен планировщик ввода-вывода FIOPS дл..."  +/
Сообщение от Аноним (-), 11-Янв-12, 21:42 
> Иницировать - это да. Может быть.

Ну я при случае залезу в сорц и посмотрю как они это делают. Все-таки любопытно. Что-то не думаю что они там прямо из драйвера ФС напрямую накопителю команды кидают. Это было бы как-то совсем уж по хакерски. Они конечно любят что-то такое отмочить, но не настолько же? :)

>> Если через эти слои можно адресно записывать блоки то почему нельзя их
>> же и чистить?
> Блин :) Матчасть. Никто не "чистит блоки". В них есть функ запись,
> из них есть функ чтения.

Неправильно. У флеша есть три различных процедуры. Чтение - ну там все просто и понятно. А вот запись на самом деле является сочетанием 2 взаимодополняющих операций, гоняющих биты ячеек в разные стороны, как то program, когда желаемые данные пишутся в 1 чистую страницу, и erase, когда все страницы erase-блока очищаются одним чихом. CoW логика и уровень трансляции соответственно утрясают такие вот странные свойства своего физического уровня с желанием представить это как якобы диск с какими-то там якобы секторами, которых на самом деле нифига нет. Trim позволяет сборщику мусора контроллера флеша понять что блоки уже не используются и почистить их заранее. В противном случае у сборщика мусора в контроллере есть одна довольно тупая проблема: а он не знает, нужны вам еще вон те данные или уже нет. На них не написано! Как я понимаю, он может сделать выводы лишь на основе логики "если они вот это переписали, оно уже точно было не нужно". Что как-то не слишком оптимально. Trim позволяет реализовывать более удачную упреждащую логику сбора мусора заранее, до того как реально припрет что-то записать и обнаружить что надо оказывается чего-то там перелопатить.

> Как бэ все.

Как бэ щаззз.

> В метаблоках он может быть помечен как занятый, может как свободный.
> Прочитал метаблоки в память, пометил как свободные, синхронизировал метаблоки из памяти
> на диск - все.

Я не знаю кто такие метаблоки, но флеш оперирует двумя понятиями - относительно мелкие страницы на 1..4 кило и относительно большие erase block на 64...512 кило.

> Командой TRIM дополнительно информируется SSD при обновлении метаблоков,
> что, мол, воооон в те блоки с фуфлом в них - можно писать,

Еще один неандерталец, который явно не в курсе что у флеша нет понятия записи как таковой, а есть расщепление этой операции на две взаимодополняющие - erase и program.

>  ну и SSD весело в них пишет, если считает необходимым.
> Говорят, это SSD облегчает его нелегкую кремниевую жизнь.

Говорят, что это позволяет контроллеру на ssd понять что вон те блоки уже никому нафиг не нужны и можно заранее их erase'ануть. Это бы все-равно пришлось сделать потом для их использования, но если это делать когда приперло записать туда что-то - так сперва придется дождаться конца erase а только потом делать program. А это медленее чем немедленно вфигачить желаемое (program) в заранее очищенные страницы. С соответствующим результатом для скорости операции "записи" (которая по факту сочетание erase и program).

> Традиционно FS логика Unix кроме чтения и записи особо никак не коммутировала
> с слоем драйверов. То есть пипл старался так делать.
> Ну вот теперь традиции меняются :)

SSD вообще на диски не похожи. Какой козел придумал что он должен выглядеть как диск я не знаю но он заслуживает прогулки на эшафот. За создание геморроя остальным в "благих" целях обратной совместимости.

>> Насчет реализации TRIM ункутри FBSD. Да есть оно.
>> А я то думал что у ней внутри неонка :)
> Некоторые так и думают, в своем мире. Судя по комментариям.

Ну просто мало меня интересуют кишки этой вашей FBSD, просто потому что я не собираюсь ей пользоваться в обозримом будущем. Кишки флешатины или там пингвина - а почему бы и нет, собственно? Я и тем и другим пользуюсь и буду пользоваться в обозримом будущем. Такой я вот редиска.

>> Практически любой современный ssd например просто обязан trim уметь - фича уже
>> довольно баянистая.
> Да хрен там. Может я такой невезучий. Или может прогресивное человечество ушло
> вперед, и унесло триманутое SSD с собой.

У упомянутых арчеводов есть довольно простой и забавный метод проверки работы trim через смотрение в каком секторе лежит файл, его стирание и смотрение с тем что стало с этим сектором после sync. Правда у них разумеется применительно к линуксу и ext4, насколько их инструкции прокатят для bsd и тамошних ФС я не знаю.

Ответить | Правка | Наверх | Cообщить модератору

115. "Для ядра Linux представлен планировщик ввода-вывода FIOPS дл..."  –1 +/
Сообщение от uniman (ok), 11-Янв-12, 21:59 
> Еще один неандерталец, который явно не в курсе что у флеша нет
> понятия записи как таковой, а есть расщепление этой операции на две
> взаимодополняющие - erase и program.

Ну спасибо. Теперь буду жить по другому. Стану бриться и перестану ругаться матом.

Ваще то я писал с точки зрения того самого интерфейса ATAPI/SCSI.
Если вы найдете в спецификации SCSI команду РАСЩЕПИТЬ и ЗАЩИМИТЬ, то даже стану носить галстук.

Ответить | Правка | Наверх | Cообщить модератору

116. "Для ядра Linux представлен планировщик ввода-вывода FIOPS дл..."  +/
Сообщение от Аноним (-), 11-Янв-12, 22:25 
> Ваще то я писал с точки зрения того самого интерфейса ATAPI/SCSI.
> Если вы найдете в спецификации SCSI команду РАСЩЕПИТЬ и ЗАЩИМИТЬ, то даже
> стану носить галстук.

Подляна состоит в том что нативную механику флеша вывешивать как некий интерфейс зассали и вместо этого сделали какие-то кривые костыли для представления этого как якобы какой-то там диск, похожий на то с чем привыкли работать ОСы. Осознав что в результате этих потуг получилась очень субоптимальная бнопня, сделали еще костылик в виде trim, позволяющий хоть как-то захинтить то что там на самом деле через тот интерфейс что есть. Теперь гланды через зад автогеном стало удалять в два раза забористее, приколитесь? :))

Ответить | Правка | Наверх | Cообщить модератору

120. "Для ядра Linux представлен планировщик ввода-вывода FIOPS дл..."  +/
Сообщение от uniman (ok), 11-Янв-12, 23:06 
>> Ваще то я писал с точки зрения того самого интерфейса ATAPI/SCSI.
>> Если вы найдете в спецификации SCSI команду РАСЩЕПИТЬ и ЗАЩИМИТЬ, то даже
>> стану носить галстук.
> Подляна состоит в том что нативную механику флеша вывешивать как некий интерфейс
> зассали и вместо этого сделали какие-то кривые костыли для представления этого
> как якобы какой-то там диск, похожий на то с чем привыкли
> работать ОСы.

Ну так. Мир несовершенен.
И я бы так сделал. Или вы хотите лет пяток подождать до внедрения SSD c жутко корректным интерфейсом? Писать системный код и отлаживать - проектные затраты, поэтому внедрение идет по пути наименьших стеднепрогнозных потерь на изменения.

Для многих встраиваемых систем смена HDD на SSD - уже благое дело, ибо резко повышает надежность по механике.
И значит, благое дело для всех нас, их пользователей.

Ответить | Правка | Наверх | Cообщить модератору

126. "Для ядра Linux представлен планировщик ввода-вывода FIOPS дл..."  +/
Сообщение от Аноним (-), 12-Янв-12, 07:25 
> Ну так. Мир несовершенен.

Ну так. А наша цель - этой механике подыграть. Тому что по факту есть, а не тому маразму через который это вывешено. Ну вот SCSI всего лишь средство, не более.

> И я бы так сделал. Или вы хотите лет пяток подождать до
> внедрения SSD c жутко корректным интерфейсом?

Да на самом деле у MS был бы чудный повод продать новую винду лохам с кульной новой фичой, а остальные могли бы быстро и эффективно работать с дисками, удачно раскладывая файловую систему по флешовым сущностям без большого онанизма. Просто тормозные корпорасты как обычно не понимают своего счастья и изобретают вместо этого костыли и подпорки.

> Писать системный код и отлаживать - проектные затраты, поэтому внедрение идет
> по пути наименьших стеднепрогнозных потерь на изменения.

Это делается так: берется 2 компа, ставится на один старая винда, на второй новая, на супермодный SSD. Показывается разница во времени загрузки в рекламе. Хомяки фигеют и строятся в очередь. Ну а остальные и сами разберутся. И уж наверное всякие линуксы бы без проблем бы подхватили. Ну во всяком случае поддержку флех прицепленных к процам напрямую они что-то делают вполне оперативно. Хотя если уж на то пошло, редизайнить надо и интерфейс передачи данных - для ssd его может быть мало. Вон некоторые делают ssd на pci-e шину. Потому что sata им не хватает.

> Для многих встраиваемых систем смена HDD на SSD - уже благое дело,
> ибо резко повышает надежность по механике.

Зато вносит препротивный лимит на объем записи на носитель. Если на винч можно писать хоть круглосуточно, то вот флехи от этого довольно быстро протираются и вскоре придется заменять флешку, хоть она и угроблена не механически а электрически. А еще они дорогие. Мало того что ssd объема сравнимого с топовыми винчами просто не делают, так еще и что-то хоть издали похожее на таковые стоит как половина самолета.

> И значит, благое дело для всех нас, их пользователей.

Да просто глупо тут то что сначала создали себе проблем а теперь вот героически их решают всякими неочевидными и кривыми костылями типа TRIM. Хотя могли бы и сделать некий набор команд типа ATAPI, но для флех, например. Ну подумаешь, в хучшем случае потребовался бы еще 1 драйвер под +1 тип накопителей. В лучшем таковой драйвер стал бы стандартной частью систем.

Ответить | Правка | Наверх | Cообщить модератору

142. "Для ядра Linux представлен планировщик ввода-вывода FIOPS дл..."  +/
Сообщение от uniman (ok), 12-Янв-12, 18:51 
> Да просто глупо тут то что сначала создали себе проблем а теперь
> вот героически их решают всякими неочевидными и кривыми костылями типа TRIM.
> Хотя могли бы и сделать некий набор команд типа ATAPI, но

Тебя ждали.

Ответить | Правка | Наверх | Cообщить модератору

144. "Для ядра Linux представлен планировщик ввода-вывода FIOPS дл..."  +/
Сообщение от Аноним (-), 12-Янв-12, 20:14 
> Тебя ждали.

Круто!

Ответить | Правка | Наверх | Cообщить модератору

117. "Для ядра Linux представлен планировщик ввода-вывода FIOPS дл..."  +/
Сообщение от uniman (ok), 11-Янв-12, 22:26 

> Говорят, что это позволяет контроллеру на ssd понять что вон те блоки
> уже никому нафиг не нужны и можно заранее их erase'ануть. Это ...

Да неужто? А зачем? Наверное, для того что бы в них можно было что-то записать?

Мне еще рассказывали, в магнитных накопителях такой вот шпиндель заранее раскручивают.
Что диск жужжал, и человек мог понять, что он работает.

> SSD вообще на диски не похожи. Какой козел придумал что он должен
> выглядеть как диск я не знаю но он заслуживает прогулки на
> эшафот. За создание геморроя остальным в "благих" целях обратной совместимости.

Не, товарищи производители должны были подождать, пока все разработчики напишут новый код под новую спецификацию интефейса SD00001BETA. А потом продавать. Через три-четыре года.

> Ну просто мало меня интересуют кишки этой вашей FBSD

Во первых, она такая же моя, как и товарища Петрова. Или ваша. Обчественное достояние.
Во вторых, ваше право чем-то не интересоваться. Чего писать об этом так уж?
В третьих, какая нахрен разница, код есть код.


> У упомянутых арчеводов есть довольно простой и забавный метод проверки работы trim

"Ну просто мало меня интересуют кишки этоих ваших арчеводов" :)

> через смотрение в каком секторе лежит файл, его стирание и смотрение
> с тем что стало с этим сектором после sync.

Угу. Через ATAPI интерфейс прям обращаясь к чипу EEPROM. В каком секторе лежит файл. Сильная методика. Жажду ссылки.

Ответить | Правка | К родителю #110 | Наверх | Cообщить модератору

127. "Для ядра Linux представлен планировщик ввода-вывода FIOPS дл..."  +/
Сообщение от Аноним (-), 12-Янв-12, 08:20 
>> Говорят, что это позволяет контроллеру на ssd понять что вон те блоки
>> уже никому нафиг не нужны и можно заранее их erase'ануть. Это ...
> Да неужто? А зачем? Наверное, для того что бы в них можно было что-то записать?

Да. Потому что в отличие от магнитного диска на флеше нельзя просто взять и перезаписать уже занятый данными произвольно выбранный сектор. У хардов все просто. Сказали перезаписать сектор? Ну он пошел, переместил головы в это место, нашел и перезаписал его. Правила игры флеша совсем иные. И если seek time у флеша близко к нулю и его можно вообще почти проигнорировать, то вот время erase обычно лежит в пределах скольких-то там миллисекунд и попасть на эту операцию в процессе записи данных - довольно нехорошо и ведет к сильной просадке скорости записи. Потому что сколько-то там миллисекунд вместо записи курили бамбук, ожидая пока блок сотрется и станет можно в него что-то записать. У арчеводов с их весьма дельной викой кстати на вике есть весьма доходчивые графики как все это выглядит не только в теории но и на практике - сравнение того что получается с trim и без оного ;)

> Мне еще рассказывали, в магнитных накопителях такой вот шпиндель заранее раскручивают.

Некорректная аналогия. В магнитном накопителе сектор можно записывать сразу, без какой-то выделенной процедуры предварительной подготовки оного, выполняемой как некая отдельная сущность в отдельный момент времени. И к тому же винчу не проблема перезаписать только вот эти 512 (или накрайняк 4096) байтов не трогая соседние. А вот ssd в силу своего устройства так не может чисто физически и эмулирует такое поведение крайне извращенскими и неоптимальными действиями. Провокации оного на эти действия следует максимально избегать, если волнует эффективность процесса. А поскольку истинной геометрии нам неизвестно - это избегание превращается в некую черную магию.

> Что диск жужжал, и человек мог понять, что он работает.

Какая чудная логика неандертальца ффтыкающего на микроволновку :)

[...]
> Не, товарищи производители должны были подождать, пока все разработчики напишут новый код
> под новую спецификацию интефейса SD00001BETA. А потом продавать. Через три-четыре года.

А что, MS как раз с удовольствием бы пошел барыжить новой системой с суперфичой :). Вообще, ATAPI же как-то внедрили, да? Ну потаскали некоторые системы некоторое время с собой кастомные драйвера cd-rom. А потом драйвера внедрили в все основные ОС и нужда в этом отпала. Не вижу никакой трагедии.

>> Ну просто мало меня интересуют кишки этой вашей FBSD
> Во первых, она такая же моя, как и товарища Петрова. Или ваша. Обчественное достояние.

Сами как-нибудь это ваше достояние юзайте. А для меня - поскольку я не собираюсь это использовать, то и детали его внутренней механики волнуют крайне слабо. Разве что как какое-то обобщенное знание, не более.

> Во вторых, ваше право чем-то не интересоваться. Чего писать об этом так уж?

Скорее, не совсем понятно на кой перец лезть с вашей bsd к линухоидам с их планировщиком. Хотя тут скорее больше в огород изена, этот вообще абстрактный теоретик. Флехи он судя по всему только на картинках в книжках видел :)

> В третьих, какая нахрен разница, код есть код.

Да просто не понятно какую самоценность он несет и что это по вашему мнению должно проиллюстрировать.

>> У упомянутых арчеводов есть довольно простой и забавный метод проверки работы trim
> "Ну просто мало меня интересуют кишки этоих ваших арчеводов" :)

Я это подозреваю, поэтому специально уточняю этот факт, предупреждая о том что эксперимент был опробован под вполне конкретную конфигурацию и работать в других так же не обязан а действия могут отличаться. Вам скорее всего придется напрячь мозг и как-то самому придумать эквивалентный по физическому смыслу набор действий для FBSD, если вдруг захочется повторить такой эксперимент.

>> через смотрение в каком секторе лежит файл, его стирание и смотрение
>> с тем что стало с этим сектором после sync.
> Угу. Через ATAPI интерфейс прям обращаясь к чипу EEPROM.

Во первых в флешовых носителях чипы не EEPROM а NAND-флеша. EEPROM где-то на совсем базовом уровне похож на "соседний" NOR-флеш, но в отличие от - может писаться хоть отдельными байтами в людском виде. Почему не юзают? Потому что плотность хранения данных никакая. Не надо никому носитель на несколько метров и по цене самолета.
Во вторых, набор команд у SSD вроде как ATA, а не ATAPI.
В третьих, нет, к сожалению напрямую обратиться в чип нельзя. Поэтому методика довольно хакерская и косвенная, продирающаяся через все эти костыли и слои абстракций к реальной физике.

> В каком секторе лежит файл. Сильная методика. Жажду ссылки.

Ага, сильная. Я тоже аж удивился. Правда извиняюсь, немного прогнал: ссылка на это у арчеводов, но сам эксперимент все-таки описан на другом сайте.

Арчеводовская вика по теме - https://wiki.archlinux.org/index.php/Solid_State_Drives и я бы сказал что это довольно дельный ресурс, независимо от используемой системы. В том плане что из него понятно в какую сторону и что можно крутить, а как это сделать в вашей системе - сами уже как-нибудь допирайте.

Статья на проверку поддержки TRIM в пингвине - http://techgage.com/article/enabling_and_testing_ssd_trim_su.../

(самое интересное, а именно проверка - на второй странице)

В меру моего понимания, эта проверка довольно сильно закладывается на механику работы файловых систем типа ext4 (как минимум, такой метод проверки имхо не прокатит для CoW файловых систем, а для остальных - в зависимости от того как они стирают файлы и требуют ли почистить при этом область занятую файлом через trim так или иначе) и допускает довольно характерную логику поведения контроллера в ssd, чего разумеется для произвольно взятого ssd никто не гарантирует. Тем не менее, упомянутая там механика и тест вполне работает на конфигурации отдаленно напоминающей авторскую. Ну то-есть, если все отработало как описано у авторов - TRIM определенно есть и работает "по факту", реально расчищая блоки когда об этом попросили.

Ответить | Правка | Наверх | Cообщить модератору

141. "Для ядра Linux представлен планировщик ввода-вывода FIOPS дл..."  +/
Сообщение от uniman (ok), 12-Янв-12, 18:43 

>> Мне еще рассказывали, в магнитных накопителях такой вот шпиндель заранее раскручивают.
>> Что диск жужжал, и человек мог понять, что он работает.
> Некорректная аналогия. В магнитном накопителе сектор можно записывать сразу, без какой-то ...

Батенька, вы еще не поняли что это издевка над вашим поучительством?

>> Не, товарищи производители должны были подождать, пока все разработчики напишут новый код
>> под новую спецификацию интефейса SD00001BETA. А потом продавать. Через три-четыре года.
> А что, MS как раз с удовольствием бы пошел барыжить новой системой
> с суперфичой :). Вообще, ATAPI же как-то внедрили, да? Ну потаскали
> некоторые системы некоторое время с собой кастомные драйвера cd-rom.

Стандарт CDROM IEC-19* хрен уже не помню, который потом ISO 9669 - 1986 года.
Стандарт ATAPI, АTA-4/ATAPI, включающий интерфейc к мультимедия CDROM - 1998 год.

12 лет. А таки потом сделали их интерфейс АТА и SCSI.

>А потом драйвера внедрили в все основные ОС и нужда в этом отпала.

Гениально!

> Не вижу никакой трагедии.

Точно. Тебе контакт генерального директора Тошибы али Самсунга подсказать, или сам найдешь?
Там такие как ты гении нужны. Не, вдруг на самом все в производстве-индустрии гораздо проще?

>>> Ну просто мало меня интересуют кишки этой вашей FBSD
>> Во первых, она такая же моя, как и товарища Петрова. Или ваша. Обчественное достояние.
> Сами как-нибудь это ваше достояние юзайте. А для меня

Меня мало волнуют и твои кишки. :)

> придется напрячь мозг и как-то самому придумать эквивалентный по физическому смыслу
> набор действий для FBSD, если вдруг захочется повторить такой эксперимент.

Не, теперь очередь этих, как его арчеводов.

>> через смотрение в каком секторе лежит файл, его стирание и смотрение
>>> с тем что стало с этим сектором после sync.
>> Угу. Через ATAPI интерфейс прям обращаясь к чипу EEPROM.
> Во первых в флешовых носителях чипы не EEPROM а NAND-флеша.

Он знал! Он знал! О великий магистр Йода! :)

Парень, тебя так самодовольно прет от твоих открытый после программирования флеш-чипов, что остальному человечесту просто остается грется в лучах твоего сияния.

Ответить | Правка | Наверх | Cообщить модератору

160. "Для ядра Linux представлен планировщик ввода-вывода FIOPS дл..."  +/
Сообщение от Аноним (-), 13-Янв-12, 20:26 
[...]
> Батенька, вы еще не поняли что это издевка над вашим поучительством?

Да ладно вам, не стесняйтесь, я тоже покушать люблю и вы оказались вполне пригодны, извините уж за честность :)

> Стандарт CDROM IEC-19* хрен уже не помню, который потом ISO 9669 -
> 1986 года.Стандарт ATAPI, АTA-4/ATAPI, включающий интерфейc к мультимедия CDROM - 1998 год.

Ага. Правда до этого сидиромы цепляли к звуковухам и было несколько несовместимых интерфейсов. До такого маразма как эмулировать из сидюка винч тогда к счастью не додумались и в результате оно доэволюционировало до чего-то вменяемого.

> 12 лет. А таки потом сделали их интерфейс АТА и SCSI.

Так флеш тоже появился в 80-х годах, если не в конце 70-х.

>>А потом драйвера внедрили в все основные ОС и нужда в этом отпала.
> Гениально!

Конечно!

[...]
> Там такие как ты гении нужны. Не, вдруг на самом все в
> производстве-индустрии гораздо проще?

Разумеется. Хотя честно говоря я не понимаю чего ои упустили возможность слупить бабла на ровном месте. Мелкомякоть могли бы продавать винду с поддержкой нового интрфейса лузерам за суперцену, производители флещатины тоже в минусе бы не остались, ну и так далее :). Видимо влом им что-то разрабатывать уже. Проще купоны стричь на патентной грызне.

> Меня мало волнуют и твои кишки. :)

Так я и не предлагаю их изучать :P.

>> придется напрячь мозг и как-то самому придумать эквивалентный по физическому смыслу
>> набор действий для FBSD, если вдруг захочется повторить такой эксперимент.
> Не, теперь очередь этих, как его арчеводов.

Угу, арчеводы в отличие от некоторых как ни странно оказались парнями ориентирующимися на фактический результат, а не теоретические бсдения о скази-интерфейсах. Поэтому они будучи дотошными парнями нашли и статейку с описальником как проверить что trim реально работает в некоей конфигурации.

> Он знал! Он знал! О великий магистр Йода! :)
> Парень, тебя так самодовольно прет от твоих открытый после программирования флеш-чипов,
> что остальному человечесту просто остается грется в лучах твоего сияния.

Кто ж виноват что такие как вы видели флеш только на картинке, зато потеоретизировать насчет скази и книжек 1999 года - горазды.

Ответить | Правка | Наверх | Cообщить модератору

165. "Для ядра Linux представлен планировщик ввода-вывода FIOPS дл..."  +/
Сообщение от uniman (ok), 13-Янв-12, 21:32 
>> Стандарт CDROM IEC-19* хрен уже не помню, который потом ISO 9669 -
>> 1986 года.Стандарт ATAPI, АTA-4/ATAPI, включающий интерфейc к мультимедия CDROM - 1998 год.
> Ага. Правда до этого сидиромы цепляли к звуковухам и было несколько несовместимых
> интерфейсов. До такого маразма как эмулировать из сидюка винч тогда к
> счастью не додумались и в результате оно доэволюционировало до чего-то вменяемого.

А пока, вы, батенька, предлагагате прицепить флешь-накопители на soundblaster.
Ок. Хорошее предложение, у меня для этого и sb16 остался, вполне еще рабочий.

Боюсь только, разработчики и покупатели встраиваемого оборудования ваших мысленных флаек не поймут.

>> 12 лет. А таки потом сделали их интерфейс АТА и SCSI.
> Так флеш тоже появился в 80-х годах, если не в конце 70-х.

А спустя 20 лет появился анонимус в форуме на опеннете.

Процесс разработки расширений на стандарты интефейсов идет постоянно.
Открой для себя комитет T13
http://www.t13.org

Фперед, с предложениями туда. Там отпушут, куда тебе идти дальше.

>>>А потом драйвера внедрили в все основные ОС и нужда в этом отпала.
>> Гениально!
> Конечно!

Вам осталось убедить всего пару-тройку корпораций в вашей гениальности.
Ну хотя бы свою кошку.

> Кто ж виноват что такие как вы видели флеш только на картинке,
> зато потеоретизировать насчет скази и книжек 1999 года - горазды.

Вы сам-то поняли, батенька анонимус, что написали?

Ответить | Правка | Наверх | Cообщить модератору

178. "Для ядра Linux представлен планировщик ввода-вывода FIOPS дл..."  +/
Сообщение от Аноним (-), 17-Янв-12, 20:45 
>> Ага. Правда до этого сидиромы цепляли к звуковухам и было несколько несовместимых
>> интерфейсов. До такого маразма как эмулировать из сидюка винч тогда к
>> счастью не додумались и в результате оно доэволюционировало до чего-то вменяемого.
> А пока, вы, батенька, предлагагате прицепить флешь-накопители на soundblaster.

Прикольный вывод! Дерзайте! :)

> Ок. Хорошее предложение, у меня для этого и sb16 остался, вполне еще рабочий.

А, круто. Теперь дизайньте контроллер под этот интерфейс, чтоли :)

> не поймут.

А их вообще никто не будет спрашивать, независимо ни от чего.

> Фперед, с предложениями туда. Там отпушут, куда тебе идти дальше.

А что, есть опыт взаимодействия с оными?

> Вам осталось убедить всего пару-тройку корпораций в вашей гениальности.
> Ну хотя бы свою кошку.

Прикольно наверное когда у вас кошка - корпорация :)

> Вы сам-то поняли, батенька анонимус, что написали?

Что-то написал. Правда среди этого не было книжек.

Ответить | Правка | Наверх | Cообщить модератору

179. "Для ядра Linux представлен планировщик ввода-вывода FIOPS дл..."  +/
Сообщение от uniman (ok), 17-Янв-12, 20:53 
>Что-то написал. Правда среди этого не было книжек.

Так вы обратились к кому-либо со своими перспективными идеями создать новый интерфейс для флеш-накопителей, или только на опеннет анонимусом горазды?

Результат когда будет?

Ответить | Правка | Наверх | Cообщить модератору

184. "Для ядра Linux представлен планировщик ввода-вывода FIOPS дл..."  +/
Сообщение от netch (ok), 23-Янв-12, 21:56 
>>> через смотрение в каком секторе лежит файл, его стирание и смотрение
>>> с тем что стало с этим сектором после sync.
>> Угу. Через ATAPI интерфейс прям обращаясь к чипу EEPROM.
> Во первых в флешовых носителях чипы не EEPROM а NAND-флеша. EEPROM где-то
> на совсем базовом уровне похож на "соседний" NOR-флеш, но в отличие
> от - может писаться хоть отдельными байтами в людском виде.

Вообще-то про NOR все пишут, что оно тоже может байтами писаться. Та же википедия пишет.
Врут?

> Почему
> не юзают? Потому что плотность хранения данных никакая. Не надо никому
> носитель на несколько метров и по цене самолета.
> Во вторых, набор команд у SSD вроде как ATA, а не ATAPI.

Ну имелось в виду, как я понял, с кастомным обращением не с блочными операциями, а значит - ATAPI.

> (самое интересное, а именно проверка - на второй странице)

Проверили, что нули... ничего интересного. Кстати, в случае SCSI спецификации не требуют нули, хотя и рекомендуют.


Ответить | Правка | К родителю #127 | Наверх | Cообщить модератору

188. "Для ядра Linux представлен планировщик ввода-вывода FIOPS дл..."  +/
Сообщение от Аноним (-), 01-Фев-12, 17:07 
> Вообще-то про NOR все пишут, что оно тоже может байтами писаться. Та
> же википедия пишет.
> Врут?

Зависит от чипа. Зачастую - натурально может (под записью я имею в виду PROGRAM). А иногда только страницами, зависит от конкретиики реализации. Исторически, страничные режимы (для ускорения чтения-записи) появились позже побайтовых (а точнее, пословных, поскольку байт на, допустим, 16-битной шине - нечто довольно странное и не существующее физически). Но даже если запись и можно делать индивидуально, это будет с противной оговоркой: в NOR можно индивидуально спустить битики из 1 в 0 но вот обратно в 1 их загнать можно только ERASE'ом всего огромного блока. Кстати этот фокус позволял штукам типа JFFS писать в NOR 1 байт без стирания несколько раз: если нужное значение делается из того что уже записано только спуском битов - стирать не требуется. В современном мире однако ж чипы чаще всего NAND, а обмен чаще всего только страницами (по поводу чего указанный хак в jffs работать перестал и им пришлось немного переделать эту логику).

У "настоящего" EEPROM наиболее заметное отличие от флеша - отсутствие блоков. Оно адресуется влоб по ячейкам. Стирание и запись ячеек индивидуальны, в отличие от. Туда всегда можно записать любой байт в любую ячейку и это будет сделано без стирания больших блоков. Так намного удобнее для программ, но за это воздается очень низкой емкостью чипа т.к. на кристалле получается намного больше проводников к ячейкам, etc. Поэтому емкость чипов EEPROM не может конкурировать с NOR и тем более NAND, так что они используются там где не надо большой емкости а индивидуальная запись ячеек - удобна.

>> (самое интересное, а именно проверка - на второй странице)
> Проверили, что нули... ничего интересного.

Контроллер SSD отпедалил даденый ему хинт и потер блок. Вот так вот через такой хакЪ это и проверили :)

> Кстати, в случае SCSI спецификации не требуют нули, хотя и рекомендуют.

А это вытекает из физики работы флеша, а вовсе не. Это просто стертый блок. Контроллер SSD получив хинт через TRIM, выдал чипу флеша где ранее лежал тот сектор команду на ERASE блока, оттуда и нули (в случае NOR блок стирается наоборот во все единицы, а в NAND вот так вот). На запрос чтения сектора контроллер честно слазил в сектор и доложил что там нули, что и доказывает что упомянутая механика по цепочке отработала :)

Ответить | Правка | Наверх | Cообщить модератору

183. "Для ядра Linux представлен планировщик ввода-вывода FIOPS дл..."  +/
Сообщение от netch (ok), 23-Янв-12, 21:48 
>>  ну и SSD весело в них пишет, если считает необходимым.
>> Говорят, это SSD облегчает его нелегкую кремниевую жизнь.
> Говорят, что это позволяет контроллеру на ssd понять что вон те блоки
> уже никому нафиг не нужны и можно заранее их erase'ануть. Это
> бы все-равно пришлось сделать потом для их использования, но если это
> делать когда приперло записать туда что-то - так сперва придется дождаться
> конца erase а только потом делать program.

Кроме того, это показывает, что если пересобирается новый комплект блоков, то можно указанные блоки не спасать из очищаемого диапазона.

>> Традиционно FS логика Unix кроме чтения и записи особо никак не коммутировала
>> с слоем драйверов. То есть пипл старался так делать.
>> Ну вот теперь традиции меняются :)
> SSD вообще на диски не похожи. Какой козел придумал что он должен
> выглядеть как диск я не знаю но он заслуживает прогулки на
> эшафот. За создание геморроя остальным в "благих" целях обратной совместимости.

А какая альтернатива? Опишите, пожалуйста, как выглядели бы они при другом подходе.

Ответить | Правка | К родителю #110 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру