EmbeddedKOS/ru: Difference between revisions
No edit summary |
mNo edit summary |
||
Line 22: | Line 22: | ||
* Бездрайверный [[SubFn62-DA/ru|ПДП]] и контроль нестандартной аппаратуры через доступный из пользовательского пространства статический системный буфер. | * Бездрайверный [[SubFn62-DA/ru|ПДП]] и контроль нестандартной аппаратуры через доступный из пользовательского пространства статический системный буфер. | ||
* Расширенная поддержка функций PCI-express с элементами тренинга шины, MSI и контроля режимов питания. <br /> | * Расширенная поддержка функций PCI-express с элементами тренинга шины, MSI и контроля режимов питания. <br /> | ||
* Новая графическая подсистема с динамической [[Window_Map| оконной картой]], оптимизированная на битмап-графику. | |||
* Размер ядра заметно сокращен - исключены многие избыточные, узкоспециальные и рудиментарные системные структуры и функции: | * Размер ядра заметно сокращен - исключены многие избыточные, узкоспециальные и рудиментарные системные структуры и функции: | ||
** исключены видеорежимы низкого разрешения (ниже 800х600); | ** исключены видеорежимы низкого разрешения (ниже 800х600); | ||
** оставлен единственный | ** оставлен единственный видеорежим (VESA2, глубина цвета 32bpp); | ||
** удаляются сисфункции 42, 43 и 44 (забавное наследие Менуэта); | ** удаляются сисфункции 42, 43 и 44 (забавное наследие Менуэта); | ||
** функция 46 отпадает за ненадобностью (ввод/вывод разрешён для всех портов). | ** функция 46 отпадает за ненадобностью (ввод/вывод разрешён для всех портов). | ||
'''На очереди:'''<br /> | '''На очереди:'''<br /> | ||
* Оптимизированный под RT-приложения менеджер памяти. | * Оптимизированный под RT-приложения менеджер памяти. | ||
* Минимальная поддержка APIC. | * Минимальная поддержка APIC. |
Revision as of 00:09, 23 March 2011
Embedded-KOS - Колибри для встроенных систем
Ряд практических работ, проведенных участниками проекта (см. например Колибри на производстве), показал принципиальную возможность внедрения КолибриОС в составе систем сбора/обработки информации и АСУП.
Компактное ядро с открытым кодом, минималистская простота и удобство графической подсистемы, достаточно развитый пользовательский интерфейс, приличный низкоуровневый системынй сервис, поддержка наиболее популярных сетевых протоколов и файловых систем - всё это уже сейчас позволяет говорить о Колибри как о перспективной ОС для встроенных систем.
В то же время, для превращения Колибри в полноценную embedded-OS требуется решить ряд серьёзных проблем: [1].
Опробование вариантов таких решений ведется в рамках проекта Колибри-А (литера "А" подчеркивает привязку кода к архитектуре AMD/HT).
Колибри-А — пока еще очень сырая и экспериментальная система, полезная только для квалифицированных системотехников, системных программистов, а также разработчиков и наладчиков компьютерного оборудования. Разработчики предупреждают, что многие стандартные механизмы системной защиты и контроля доступа к критическим системным ресурсам в Колибри-А отключены с целью облегчения максимально свободого и удобного доступа к оборудованию. Использование этой системы на домашних, офисных и серверных компьютерах категорически противопоказано и может повлечь невосстановимую потерю данных и полный выход из строя компьютера и/или подключенных к нему периферийных устройств.
Итак, мы Вас предупредили...
Некоторые особенности Колибри-А
- Повышенные требования к аппаратной платформе.
- Дополнительный API-сервис, предоставляющий пользователю расширенный доступ к низкоуровневому вводу/выводу.
- Бездрайверный ПДП и контроль нестандартной аппаратуры через доступный из пользовательского пространства статический системный буфер.
- Расширенная поддержка функций PCI-express с элементами тренинга шины, MSI и контроля режимов питания.
- Новая графическая подсистема с динамической оконной картой, оптимизированная на битмап-графику.
- Размер ядра заметно сокращен - исключены многие избыточные, узкоспециальные и рудиментарные системные структуры и функции:
- исключены видеорежимы низкого разрешения (ниже 800х600);
- оставлен единственный видеорежим (VESA2, глубина цвета 32bpp);
- удаляются сисфункции 42, 43 и 44 (забавное наследие Менуэта);
- функция 46 отпадает за ненадобностью (ввод/вывод разрешён для всех портов).
На очереди:
- Оптимизированный под RT-приложения менеджер памяти.
- Минимальная поддержка APIC.
- Полная поддержка PCIe, включая хотплаг и управление виртуальными каналами.
- Реализация быстрой и безопасной загрузки ядра из ПЗУ.
- Поддержка SATA-дисков (пока только для SB700 и только в IDE-режиме).
- Поддержка некоторых классов USB-устройств (только SB700).
- Дальнейшее уплотнение ядра с целью сокращения кода kernel.mnt до 64Кбайт:
- удалить сифункцию 64;
- удалить статические карты страниц и портов в/в;
- удалить V86-режим;
- поддержку FAT12, NTFS и ext2/3 сделать опциональной.
Конечная цель:
а) 100% монолитное бездрайверное ядро,
б) жестко привязанное к выбранной платформе,
в) легко конфигурируемое под конкретную задачу, и
г) прошитое в бортовое ПЗУ.
Вариант реализации:
Как payload для проекта coreboot. Работа над этим ведется [2] Для успешного осуществления требуется удаление зависимости ядра KolibriOS от вызовов BIOS. Ссылки по теме [3] [4] [5]