Board.KolibriOS.org

Официальный форум KolibriOS
Текущее время: Вт ноя 20, 2018 10:56 am

Часовой пояс: UTC+03:00




Начать новую тему  Ответить на тему  [ 102 сообщения ]  На страницу Пред. 1 2 3 4 57 След.
Автор Сообщение
 Заголовок сообщения: Re: Opera в BIOSе
СообщениеДобавлено: Сб май 15, 2010 4:09 pm 
Не в сети
Аватара пользователя

Зарегистрирован: Вт авг 25, 2009 4:45 pm
Сообщения: 792
Вот теперь мы вместе с coreboot более или менее официально: Possible future payloads


Вернуться к началу
 Заголовок сообщения: Re: KolibriOS в BIOS
СообщениеДобавлено: Чт май 20, 2010 12:33 pm 
Не в сети
Kernel Developer
Аватара пользователя

Зарегистрирован: Пт авг 14, 2009 1:46 am
Сообщения: 1292
XVilka
Ещё раз: CoreBoot+Колибри как конечная цель - это замечательно.

Но есть три серьезных соображения против:

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

2) не каждый потенциальный заказчик решится пожертвовать своим BIOSом ради тест-драйва шустрой, но никому не известной и (прямо скажем) сыроватой новой EOS.

3) Есть ещё цинично-коммерческая сторона вопроса. Лицензия не позволяет закрывать код, но явно разрешает брать плату за консультации и техническую поддержку конечного продукта.
Прошивку PCI Extension ROM можно привязать к конкретной фишке в железе, и консультировать только легальных владельцев этого железа.
А с CoreBoot_payload такой фикс не пройдет. Пробивные дармоеды успеют хапнуть первыми, а тебе оставят только строчку в коллективном копирайте.


Вернуться к началу
 Заголовок сообщения: Re: KolibriOS в BIOS
СообщениеДобавлено: Чт май 20, 2010 1:48 pm 
Не в сети

Зарегистрирован: Ср дек 26, 2007 5:09 am
Сообщения: 214
Ещё забыли про то, что проблематично самостоятельно сделать полноценную поддержку оборудования. Например, на современных матерях Gigabyte и других фирм используются хитрые системы управления электропитанием процессора, которыми управляет код SMM, зашитый в BIOS. В частности, он отвечает за переключение числа активных фаз преобразователя в зависимости от потребляемого тока. Ну и попробуй это сделать сам, если спецификации закрыты, а сама реализация может меняться от одной модели к другой (не говоря уже о том, что у разных производителей одна и та же идея реализуется по-разному, если говорить о тонкостях). В общем, BIOS -- зло, но на ПК это зло неизбежно.


Вернуться к началу
 Заголовок сообщения: Re: KolibriOS в BIOS
СообщениеДобавлено: Чт май 20, 2010 1:57 pm 
Вот потому я люблю лицензию BSD - в любой момент можно закрыть и продолжать разработку. Старые версии, конечно будут доступны всем, но новые никто не сможет потребовать открыть.


Вернуться к началу
   
 Заголовок сообщения: Re: KolibriOS в BIOS
СообщениеДобавлено: Пт май 21, 2010 1:49 pm 
Не в сети
Kernel Developer
Аватара пользователя

Зарегистрирован: Пн ноя 28, 2005 8:00 pm
Сообщения: 1601
art_zh писал(а):
сейчас ядро опирается на многочисленные BIOS-костыли

"Многочисленные" - это поддержка не-ATA дисков и переключение в графический режим при запуске, что ли? 2 - это "много", что ли?

_________________
Ушёл к умным, знающим и культурным людям.


Вернуться к началу
 Заголовок сообщения: Re: KolibriOS в BIOS
СообщениеДобавлено: Пт май 21, 2010 4:24 pm 
Не в сети
Kernel Developer
Аватара пользователя

Зарегистрирован: Пт авг 14, 2009 1:46 am
Сообщения: 1292
diamond писал(а):
art_zh писал(а):
сейчас ядро опирается на многочисленные BIOS-костыли

"Многочисленные" - это поддержка не-ATA дисков и переключение в графический режим при запуске, что ли? 2 - это "много", что ли?

Я имею в виду не только эти явные опоры,- про них все знают.
И даже не разную мелочевку вроде E820, про которую, похоже, уже даже автор запамятовал.
PCI BIOS, init_mtrr в memory.inc и еще кое-что, сейчас навскидку всего не перечислить. Но опять-таки, это явно вызываемые ядром элементы BIOS-сервиса. При большом желании их все можно вычислить и профиксить. К тому же, открытый код CoreBoot-аналогов этих функций только пойдет ядру на пользу.

А вот чего нельзя профиксить на 100% на всех платформах - неявные заморочки, которые обязательно выползут при замене BIOS на CoreBoot всвязи со спецификой оборудования и нетождественной инициализацией холодной системы. Только на хорошо документированном железе есть шанс когда-нибудь вычесать всех багов.

Ув. SII привел лишь один частный пример. Общая же картина такова:

- в принципе, на связке CoreBoot + KOS можно построить мощную встраиваемую систему с уникальными характеристками.
- но сложно.
- и работать она будет не на всех аппаратных платформах.
- гораздо меньшими усилиями можно добиться практически тех же результатов на базе BIOS - для любых чипсетов и материнок.
- почти теми же усилиями можно построить ещё более крутую ROM-KOS без BIOS и CoreBoot, с "холодной" инициализацией одной, отдельно взятой платформы.

Большим плюсом этих двух альтернативных решений была бы их независимость от "чужой" GPL-лицензии...

_________________
Узкий специалист подобен флюсу: полнота его - односторонняя.
Козьма Прутков


Вернуться к началу
 Заголовок сообщения: Re: KolibriOS в BIOS
СообщениеДобавлено: Пт май 21, 2010 5:04 pm 
Не в сети
Kernel Developer
Аватара пользователя

Зарегистрирован: Пн ноя 28, 2005 8:00 pm
Сообщения: 1601
art_zh писал(а):
И даже не разную мелочевку вроде E820, про которую, похоже, уже даже автор запамятовал.
PCI BIOS, init_mtrr в memory.inc и еще кое-что, сейчас навскидку всего не перечислить.

PCI BIOS по существу используется только для определения номера последней PCI-шины (и, естественно, для инициализации (в процессе POST) всего хозяйства PCI-мостов), но не в процессе работы. Для init_mtrr прямо в транке есть запасной вариант на случай, когда BIOS не инициализировала регистры MTRR. Аналогичный обход есть и вместо E820 (хотя там он несколько неэквивалентен, сканируя только до первой возможной "дыры"). Фразу "всего не перечислить" считаю отговоркой.
Собственно, наличие кучи действий BIOSа в SMM посреди работы основной системы есть неоспоримый факт. Меня возмущает, что вышеупомянутые вещи приписываются к "костылям" основного ядра, хотя это совершенно не так (за исключением, естественно, не-ATAшного int 13h и, возможно, ненативного int 10h). А то почитаешь разные темы на форуме - и складывается ощущение, что ядро просто целиком состоит из самых разнообразных костылей.

_________________
Ушёл к умным, знающим и культурным людям.


Вернуться к началу
 Заголовок сообщения: Re: KolibriOS в BIOS
СообщениеДобавлено: Пт май 21, 2010 10:47 pm 
Не в сети
Аватара пользователя

Зарегистрирован: Вт авг 25, 2009 4:45 pm
Сообщения: 792
Цитата:
- почти теми же усилиями можно построить ещё более крутую ROM-KOS без BIOS и CoreBoot, с "холодной" инициализацией одной, отдельно взятой платформы.


Мне почему-то кажется что многих этот вариант более заинтересует чем просто BIOS+KOS :)
Кстати libpayload из coreboot - BSD-лицензирован.

Но как упоминалось AMD по-максимуму старается открывать работу на низком уровне и присылает патчи для coreboot.
Intel предоставляет достаточно хорошую документацию (правда часто с ошибками, но лучше чем ничего).

Самая большая проблема с NVIDIA железом.


Вернуться к началу
 Заголовок сообщения: Re: KolibriOS в BIOS
СообщениеДобавлено: Пн май 24, 2010 7:56 pm 
Не в сети
Kernel Developer
Аватара пользователя

Зарегистрирован: Пн мар 20, 2006 10:44 am
Сообщения: 557
Зря вы BIOS к костылям относите, как будто ACPI не костыль ))) это такой костыль что система превращается в марионетку. ИМХО сделать систему не зависимую от вспомогательных сервисов утопично (ну конечно если вы не собираетесь изобретать новую платформу).


Вернуться к началу
 Заголовок сообщения: Re: KolibriOS в BIOS
СообщениеДобавлено: Пн июн 28, 2010 1:25 am 
Не в сети
Аватара пользователя

Зарегистрирован: Вт авг 25, 2009 4:45 pm
Сообщения: 792
Вот еще полезная для изучения работы BIOS и работы без BIOS штука - http://git.linuxtogo.org/?p=kevin/seabios.git;a=summary

То есть open-source реализация стандартных сервисов BIOS


Вернуться к началу
 Заголовок сообщения: Re: KolibriOS в BIOS
СообщениеДобавлено: Ср апр 27, 2011 4:44 am 
Не в сети
Аватара пользователя

Зарегистрирован: Вт авг 25, 2009 4:45 pm
Сообщения: 792
Вот инструкция по загрузке kolibri с coreboot (Писалось с учетом linux-системы)
Также ссылка на готовый образ для ленивых:

1. Скачать и собрать coreboot:
Код:
svn co svn://coreboot.org/coreboot/trunk coreboot
cd coreboot
make menuconfig

В меню выбираем Target -> QEMU, payload -> SeaBIOS (master) (пока только SeaBIOS)
меняем что хотим, и собираем командой
Код:
make

1a. Как вариант, возможно собрать SeaBIOS отдельно:
Код:
git clone git://git.seabios.org/seabios.git seabios
cd seabios
make menuconfig
make

только в menuconfig надо выбрать опцию build for coreboot
Потом скопируем файл out/bios.bin.elf в каталог, где собираем coreboot, и в опции Payload в make menuconfig выбираем elf - указываем путь к файл bios.bin.elf

Вот что у меня получилось на выходе (я собирал образ для 4мбитной флешки)
Код:
coreboot.rom: 4096 kB, bootblocksize 1504, romsize 4194304, offset 0x0
Alignment: 64 bytes

Name                           Offset     Type         Size
cmos_layout.bin                0x0        unknown      1159
fallback/romstage              0x4c0      stage        12720
fallback/coreboot_ram          0x36c0     stage        27797
fallback/payload               0xa3c0     payload      40596
(empty)                        0x142c0    null         4110104

То есть есть место для KolibrioOS :) Даже более чем достаточно!

2. Собираем QEMU, желательно последний, из гита
3. Загружаем образ видеобиоса: http://www.coreboot.org/images/0/0d/Vgabios-cirrus.zip
4. В каталог, где будем работать копируем файлы:
а) coreboot.rom из coreboot/build и переименовываем в bios.bin
б) vgabios-cirrus.bin из архива Vgabios-cirrus.zip
в) образ колибри (я проверял на исо, флоп тоже работает)
5. Запускаем:
Код:
qemu -L . -cdrom kolibri.iso -serial stdio

Опция -L указывает на каталог с нашими биосами и образом колибри.
6. PROFIT!

7. Также возможно включить образ колибри в образ биоса:
Скачиваем kolibri.img
Упаковываем:
Код:
lzma -zc kolibri.img > kolibri.img.lzma
./build/cbfstool coreboot.rom add kolibri.img.lzma floppyimg/Kolibri.lzma raw

cbfstool находиться в каталоге coreboot/build
Проверим результат командой:
Код:
./build/cbfstool coreboot.rom print

А потом так же переименовываем coreboot.rom в bios.bin и используем для загрузки

Точно так же возможно собрать все и для работы на реальном железе и прошить с помощью утилиты flashrom (http://www.flashrom.org) - справедливо только для поддерживаемого coreboot-ом железа, а также на свой страх и риск!

Готовые образы и конфиги, по которым собрано, прикрепляю - только добавить образ колибри и вуаля!
Дополнительно почитать про сборку можно здесь:

http://www.coreboot.org/Build_HOWTO
http://www.coreboot.org/SeaBIOS


Пишем отзывы, пожелания :)


Вложения:
Комментарий к файлу: coreboot image + config files
kolibri-coreboot.tar.gz [102.47 КБ]
288 скачиваний
Вернуться к началу
 Заголовок сообщения: Re: KolibriOS в BIOS
СообщениеДобавлено: Ср апр 27, 2011 7:06 am 
Не в сети
Аватара пользователя

Зарегистрирован: Вт авг 25, 2009 4:45 pm
Сообщения: 792
Щас ковыряюсь и пробую выкинуть 16-битный код и загрузчик из ядра, а также пробую сделать из него elf, чтобы из coreboot грузиться напрямую.


Вернуться к началу
 Заголовок сообщения: Re: KolibriOS в BIOS
СообщениеДобавлено: Ср апр 27, 2011 10:43 am 
Не в сети
Public Relations
Аватара пользователя

Зарегистрирован: Пн июн 07, 2010 12:01 pm
Сообщения: 1879
XVilka писал(а):
Вот инструкция по загрузке kolibri с coreboot (Писалось с учетом linux-системы)
Точно так же возможно собрать все и для работы на реальном железе и прошить с помощью утилиты flashrom (http://www.flashrom.org) - справедливо только для поддерживаемого coreboot-ом железа, а также на свой страх и риск!
Пишем отзывы, пожелания :)

Круто 8) А что нужно сделать, чтобы eBox стал поддерживаемым coreboot-ом железом? :wink:


Вернуться к началу
 Заголовок сообщения: Re: KolibriOS в BIOS
СообщениеДобавлено: Ср апр 27, 2011 11:00 am 
Не в сети
Аватара пользователя

Зарегистрирован: Вт авг 25, 2009 4:45 pm
Сообщения: 792
Найти человека, который будет готов портировать :)
И, желательно документы Memory Reference Code - как инициализировать память для Vortex


Вернуться к началу
 Заголовок сообщения: Re: KolibriOS в BIOS
СообщениеДобавлено: Ср апр 27, 2011 11:06 am 
Не в сети
Public Relations
Аватара пользователя

Зарегистрирован: Пн июн 07, 2010 12:01 pm
Сообщения: 1879
XVilka писал(а):
Найти человека, который будет готов портировать :)
И, желательно документы Memory Reference Code - как инициализировать память для Vortex

А ты не готов? :wink: Могу подарить железку для опытов 8)
С документами сложнее, как ты уже понял. Но есть документ на процессор RDC, который имеет много общего.


Вернуться к началу
Показать сообщения за:  Поле сортировки  
Начать новую тему  Ответить на тему  [ 102 сообщения ]  На страницу Пред. 1 2 3 4 57 След.

Часовой пояс: UTC+03:00


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Создано на основе phpBB® Forum Software © phpBB Limited
Русская поддержка phpBB