План работ по созданию "прошивки" для загрузки плеера
Первый этап создания плеера
Создание заготовки плеера в виде пустого плеера, без функциональности. Просто загружаемая система Данный пункт требуется для тестирования работы прошивки.
Состоит из:
- установить какой либо дистрибутив Альтлинукса, 8 часов
- запаковать это в образ, пригодный к загрузки, 8 часов
Требуемое время: 16 часов
Прошивка
Прошивка состоит из 2 частей:
- локальная
- сетевая
Создание локальной прошивки
За основу для локальной прошивки берётся Grub. Для него требуется подготовить конфиг grub.cfg который будет загружать прошивку по умолчанию и в случае экстренной сисуации позволять выбрать другую прошивку вручную.
Необходимо иметь возможность сгенерировать этот grub.cfg на сервере, где лежат аналогичные прошивки.
Список работ:
- Изучение документации по Grub и grub-mkconfig
- Написание работающего конфига руками для загрузки плеера
- Тестирование и отладка конфига написанного руками
10-14 часов
- Определение правильной конфигурации шаблона для загрузки образа плеера
- Дописывание модуля для поиска образов плеера в директории, где они должены располагаться
- Написание логики выбора плеера по умолчанию
16 часов
- Отладка данного скрипта
Требуемое время: 42 часа
Создание сетевой части прошивки
Состоит из:
- Изучение документации по pxegrub, и по pxe в целом. 20 часов
- Создание сервера dhcp+tftp для раздачи загружаемой конфигурации
- Установка системы. 4 часа
- Настройка загрузки. 4 часа
- Тестирование и отладка загрузки. 10 часов.
- Подготовить архив со скриптом для разворачивания такой загрузки. 4 часа
Требуемое время: 42 часов
Итого: 100 часов
Отчёт и демонстрация
Деятельность делится на 4 этапа по каждому из которых подразумевается отчёт:
- Заглушка для плеера
- Локальная прошивка
- Сетевая прошивка
- Тестирование системы и финальные демонстрационные испытания
Заглушка для плеера
По итогам данного этапа ожидается:
Заглушка для плеера. Система на основе AltLinux в виде 3 файлов: образ ядра, неизменяемая часть файловой системы, и файл с изменениями файловой системы.
- Стенд из компьютера(возможно виртуалки) на котором данная система загружается.
Локальная прошивка
По итогам данного этапа ожидается:
- Набор из трёх образов плееров-клонов первого плеера с измененными версиями.
- Локальный загрузчик, который позволяет с заходом в меню выбрать необходимый образ плеера.
- Скрипт, который по заданным параметрам(список образов плееров, получаемый из директории, и указание на плеер по умолчанию) создает конфигурационный файл для локального загрузчика.
- Стенд из компьютера(возможно виртуалки) на котором данная система работает и позволяет выбирать загружаемый образ плеера и после его загрузки менять конфигурацию загрузчика.
Сетевая прошивка
По итогам данного этапа ожидается:
- Сетевой загрузчик который позволяет загрузить любой из образов плеера с диска, с выставленным по умолчанию другим плеером.
- Скрипт, который по заданным параметрам(список образов плееров, получаемый из директории, и указание на плеер по умолчанию) создает конфигурационный файл для локального загрузчика, адаптированный для сетевого загрузчика и выполнения на сервере.
- Сервер раздающий сетевой загрузчик(возможно виртуализированный).
- Стенд из компьютера(возможно виртуалки) на котором сетевой загрузчик работает и загружает требуемый образ плеера.
- (Опционально) Будет реализована загрузка образа плеера по сети и запуск его в случае использования сетевого загрузчика.
Тестирование системы и финальные демонстрационные испытания
По итогам данного этапа ожидается:
- Набор из трёх образов плееров-клонов первого плеера с измененными версиями.
- Локальный загрузчик, который позволяет с заходом в меню выбрать необходимый образ плеера.
- Сетевой загрузчик который позволяет загрузить любой из образов плеера с диска, с выставленным по умолчанию другим плеером.
- Скрипт, который по заданным параметрам(список образов плееров, получаемый из директории, и указание на плеер по умолчанию) создает конфигурационный файл для сетевого и локального загрузчика.
- Сервер раздающий сетевой загрузчик(возможно виртуализированный).
- Стенд из компьютера(возможно виртуалки) на котором локальный и сетевой загрузчики работают и загружают требуемый образ плеера и после позволяют поменять плеер по умолчанию в локальном загрузчике.
- (Опционально) Будет реализована загрузка образа плеера по сети и запуск его в случае использования сетевого загрузчика.