LINUX.ORG.RU

Был какой-то проект SSD без прошивки, где вся логика реализуется на хосте. В Linux должна быть поддержка. Не помню название, но это серверный сегмент, вероятно с ценами «свяжитесь с нами, чтобы узнать». Если оно ещё вообще живое.

anonymous
()
Ответ на: комментарий от ox55ff

А как проверить что в sd карте нет недокументированного кода? Я вот лично склоняюсь к тому что лично видел реализацию usb с 64гб памяти и толщиной не больше sd. Если никак не проверить - вариант не подходит.

bondv
() автор топика
Ответ на: комментарий от vbcnthfkmnth123

Не подходит. Я изучил данный проект и не обнаружил исходников на некоторые чипы. Если будут открыты исходники всей мат части - я с уверенностью буду использовать OpenSSD.

bondv
() автор топика

Микросхемы NAND флеш-памяти продаются отдельно, про них всё написано в даташите. Можно напаять их на платку и напрямую натянуть UBIFS или аналог и использовать прямо с хоста под GNU/Linux.

realloc ★★★★
()
Ответ на: комментарий от realloc

Насколько обьемным и быстрым можно реализовать подобный накопитель? Потянет ли данная конструкция запуск основной и виртуальной операционной системы одновременно?

bondv
() автор топика
Ответ на: комментарий от sparkie

Если только выполнить прошивку самому. Я в универе на асме выполнял когда-то курсач, что-то подобное, но для дискеты. Можно в принципе вспомнить.

sparkie ★★★★★
()
Ответ на: комментарий от sparkie

Не важно насколько сложная задача. Меня интересует реализация полноценного накопителя, хотелось бы хотя бы на 512 гб минимум, поскольку моя задача требует больше 480гб памяти.

bondv
() автор топика
Ответ на: комментарий от anonymous

АрВид 1051/1052 — выпущена в 1995 году. В этих моделях появилась высокая скорость обмена (325 КБ/с) и аппаратный буфер размером в 128/512 кБ EDO RAM, соответственно. Повышенная скорость обмена позволила записывать 3,25 Гб данных на 180 минутную видеокассету. В остальном похожи на 1031. Модель 1051 широкого распространения не имела.

Медленная реализация не справляющаяся с поставленной задачей.

bondv
() автор топика
Ответ на: комментарий от realloc

Изучил детально идею, предполагается персональный компьютер на котором нету никаких накопителей. То есть данное изобретение будет использоваться в качестве запуска основной операционной системы и дальнейшей работы, оперативная память и прочие чипы используются по назначению не постоянной записи и не применяются в качестве ПЗУ. Реализация CF предполагает в таком виде контроллер, которые все используют проприетарную прошивку. Каким образом я реализую NAND без контроллера, чтобы запускалась с него основная операционная система? Если же нужно использовать контроллер, где достать контроллер подобный CF-IDE с открытым исходным кодом? Реализация этого накопителя не будет поддерживать запуск операционной системы на нем без контроллера.

bondv
() автор топика
Ответ на: комментарий от vbcnthfkmnth123

Попробовал реализовать. Биос отказался запускать накопитель с подобной реализацией. Есть ли варианты подогнать Coreboot или подобные загрузчики под вариант реализации накопителя без контроллера - пиши, обсудим. Проприетарный bios AMI так же наотрез отказался запускаться.

bondv
() автор топика
Ответ на: комментарий от bondv

методы поиска детальной инструкци по реализации идеи

Гуглить пробовал? Даю подсказку, контролеры в SSD - это ARM, соотвественно ищи как это использовать под ARM, где нет никакого биоса.

vbcnthfkmnth123 ★★★★★
()
Ответ на: комментарий от vbcnthfkmnth123

Конечно пробовал, что за глупый вопрос! Отправь мне ссылку из гугла где расписана детальная инструкция по реализаци данной идеи. Ты сам то хоть гуглить пробовал? Даю подсказку - ARM ни разу не открытый код. Биос есть - на материнской плате персонального компьютера, о котором и идет речь. Уйди отсюда если не можешь помочь!

bondv
() автор топика

А под USB сам сделать можешь

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

Если скорость не беспокоит, можно начать с STM32/GigaDevices и медленно-премедленно работать низкоуровнево работать с NAND по GPIO, а STM32 прикинется mass strorage device, где все исходники этого доступны

Если надо быстрее можно взять FPGA (даже отечественные) и прикинуться SD-карточкой, хотя конечно тут должен быть БИОС который умеет работать с SD картами так что чуть ли не загружается с них. Такие не такая уж и редкость в embedded. Прошивка SD-картридера я так понял тоже смущает

Компьютер x86? Вот для ARM правильно подсказали что там нет биоса и есть лишь u-boot с исходниками, и всё работает, правда первые действия с накопителями для старта ОС идут низкоуровнево. А далее драйвера сделают из SPI флэшки какой нибудь mmcblk

I-Love-Microsoft ★★★★★
()
Последнее исправление: I-Love-Microsoft (всего исправлений: 1)
Ответ на: комментарий от I-Love-Microsoft

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

ARM я пользоваться не буду, на моем компьютере реализованна полностью открытая аппаратная прошивка. Процессор POWER9, комп - Talos II.

Пока приходится запускать Menuet OS и загружать ее в оперативную память.

Я сегодня рассмотрю все предложенные варианты. Спасибо.

bondv
() автор топика
Ответ на: комментарий от bondv

Каким образом я реализую NAND без контроллера, чтобы запускалась с него основная операционная система?

Как на роутерах, например. Никаких контроллеров, FTL в софте, настоящий хардкор для настоящих пацанов.

anonymous
()
Ответ на: комментарий от bondv

Тогда нужно перед чипами поставить контроллер и на нём реализовать какой-то понятный ПК протокол. Проще всего взять STM32 и притвориться USB Mass Storage, для Blue/BlackPill готовые примеры.

Если нужно быстро, то придётся NVMe реализовать, но это уже совсем другой уровень, другой контроллер и платку уже будет сложнее «на коленке» собрать из готовых кубиков с алиэкспресса.

Внутри уже будет не Linux точно =)

realloc ★★★★
()
Ответ на: комментарий от I-Love-Microsoft

Не нашел исходников на остальные файловые системы в первом варианте. Предполагается используемая файловая структура FatFs. Не уверен что это будет работать с тем же ext4. Второй вариант не подходит, картридера с открытым исходным кодом не нашел. Реализация ARM так же предполагает использование однозначной структуры FatFs. не нашел реализации под другие файловые системы.

bondv
() автор топика
Ответ на: комментарий от anonymous

Изучил детально данную идею. взял рандомный роутер, обнаружил чип ПЗУ EtronTech, разобрал примерную реализацию и понял, что она не подходит для чипов NAND. Для реализаци данной идеи нужно разрабатывать чип с нуля. Эта разработка в домашних условиях невозможна.

bondv
() автор топика
Ответ на: комментарий от realloc

Рабочая идея, но есть существенный минус - контроллер можно настроить на основе инструкций с интернета и исходников на работу с файловой структурой FatFs. Подходит для реализаци однотипных задач. Не подошел данный вариант. Есть ли вариант под универсальную реализацию типа «вставил как жесткий диск и без проблем запускаешь все что совместимо с x86-64; POWER9»? Если такого не существует - полагаю все варианты «сидя на коленке» предполагают вариант «создай с нуля». Тогда накопителей кроме NAND в стиле «создай с нуля» не существует.

bondv
() автор топика
Ответ на: комментарий от bondv

Предполагается используемая файловая структура FatFs

В примерах да, часто FAT32 используют, потому что он прост. Но как известно, загрузочные флэшки далеко не с FAT32, вероятно mass storage не ограничивает лишь этой ФС и даже стародавней таблицей разделов времен DOS

I-Love-Microsoft ★★★★★
()
Ответ на: комментарий от bondv

Тебе нужно взять подходящий контроллер с высокоскоростным usb, взять rtos и написать фирмварь которая будет с одной стороны работать по MSC или лучше UAS а с другой с тем типом флеш-памяти которую ты возьмешь.

anonymous
()
Ответ на: комментарий от anonymous

Это уже вариант «с нуля». Проще всего было с самого начала написать мне в ответе «изобрети с нуля свой накопитель». Значит готовых или полуготовых решений для сборки не существует? Или хотя бы конструктор состоящий из исходного кода и компонентов для самостоятельной сборки полуготового решения. Если нету - вопрос решен.

bondv
() автор топика
Ответ на: комментарий от tiinn

Это универсальный вариант накопителя, способный запустить виртуальную машину и тяжеловесную, ресурсоемкую операционную систему, способную уместиться прямо на 1.44мб. Идея хорошая, но не универсальная.

bondv
() автор топика
Ответ на: комментарий от bondv

Ни в USB Mass Storage, ни во фшлешках напрямую нет файловой системы, доступ идёт на уровне блоков (и erase блоков для флэша). ФС натягивается уже уровнем выше, из ОС. Внутри устройства накопителя ФС реализовывать не обязательно.

realloc ★★★★
()
Ответ на: комментарий от bondv

на моем компьютере реализованна полностью открытая аппаратная прошивка. Процессор POWER9, комп - Talos II

Может быть, стоит узнать у тех, кто пользуется таким «специфическим железом», как они решают подобный вопрос. Или рекоммендации производителя или советы пользователей. Там, на форуме поспрашивать. А потом и нам рассказть про полностью открытый накопитель.

anonymous
()
Ответ на: комментарий от realloc

Теперь я не понимаю какой какой конкретно исходный код шить в STM32. Можешь помочь с поиском подходящего исходного кода для реализаци универсального накопителя? Мои попытки найти заканчивались FatFs. Использовал навыки профессионального поиска, различные поисковики, ИИ и даже метапоисковики.

bondv
() автор топика