BOOS Core представлено во второй ревизии
В рамках проекта Baigudin Software, была представлена вторая ревизия операционного ядра BOOS Core, которая, по сравнению с первой, претерпев значительные изменения, сохранила её лучшие свойства и получила новое логическое продолжение.
BOOS Core представлено во второй ревизии
Дата: 10.06.2016
В рамках проекта Baigudin Software, была представлена вторая ревизия операционного ядра BOOS Core, которая, по сравнению с первой, претерпев значительные изменения, сохранила её лучшие свойства и получила новое логическое продолжение. Так, все компоненты ядра были реорганизованы и переработаны, была улучшена внутренняя архитектура и определены чёткие логические связи между программными модулями. Это дало возможность для его дальнейшего эффективного сопровождения и расширения, а самое главное – это то, что мы снизили влияние внутренней реализации, как программной, так аппаратной части, на внешние пользовательские интерфейсы.
Значимые изменения второй ревизии:
- Все высокоуровневые алгоритмы реализованы на языке C++ (стандарт ISO/IEC 14882:1998) с применением объектно-ориентированного подхода;
- Использованы законные языковые конструкции и взаимосвязи между ними;
- Снижен объём исходного кода на языке Ассемблер, что позволяет сократить накладные расходы на доработку ядра при смене аппаратной платформы;
- Исходный код ядра не зависит от внешних библиотек и требует лишь наличие процедур для стандартных операторов языка C++;
- Все интерфейсные заголовочные файлы определены в общую директорию и имеют расширение .hpp;
- Все методы пользовательского интерфейса используют знаковые встроенные типы;
- Все настройки ядра определенны в едином конфигурационном файле;
- Ядро содержит внутренние механизмы работы с динамической памятью и никак не привязано к глобальным операторам new и delete;
- В ядре реализован шаблонный суперкласс Object, который определяет механизмы работы с памятью, а также состояние любого объекта системы;
- Ядро не использует механизмы исключений языка C++, а базируется на методах анализа состояний объектов системы;
- Библиотека утилит полностью переведена на шаблонные классы;
- Все интерфейсы описаны в собственном пространстве имён;
- Полностью переработан диспетчер задач;
- Время сохранения и восстановления контекста, по сравнению с первой ревизией, уменьшилось на 29 процентов;
- Запрет смены контекста задач реализован на аппаратном уровне;
- Время работы ядра рассчитывается на основании собственных аппаратных ресурсов и не зависит от диспетчера задач.
Мы серьёзно поработали, чтобы сделать наше ядро лучше, гибче и производительнее. Как и с первой ревизией, вторая была отработанна на сигнальном процессоре TMS320C6416T от компании Texas Instruments Incorporated c использованием компилятора «TMS320C6000 Optimizing C/C++ Compiler v 6.0» и средств разработки Code Composer Studio IDE.