Необходима установка следующих пакетов: qemu-system, make, gcc, кросс-компилятор, build-essential, gcc-multilib, curl, libmpc-dev, python.
Получение кода Embox:
$ git clone https://github.com/embox/embox
Сборка:
$ make confload-'ARCH'/qemu
$ make
Запуск на QEMU:
$ ./scripts/qemu/auto_qemu
Пример вывода в консоль:
Embox kernel start
unit: initializing embox.kernel.task.task_resource: done
unit: initializing embox.mem.vmem_alloc: done
...
Если все unit-тесты прошли успешно, и система загружена, появится консоль, в которой можно выполнять команды. Начать можно с команды ‘help’
которая выведет список доступных команд для вашей конфигурации.
Для выхода из эмулятора qemu нажмите последовательно: ctrl+“A”
, затем “x”
.
Чтобы запустить собственную простейшую программу «Hello world», выполните следующее:
Создайте папку hello_world в 'src/cmds':
$ mkdir src/cmds/hello_world
Создайте файл с исходным кодом программы на языке 'C' 'src/cmds/hello_world/hello_world.c' со следующим содержанием:
#include "stdio.h"
int main(int argc, char **argv) {
printf("Hello, world!\n");
}
Создайте файл 'src/cmds/hello_world/Mybuild' с описанием нового модуля:
package embox.cmd
@AutoCmd
@Cmd(name = "hello_world", help="First Embox application")
module hello_world {
source "hello_world.c"
}
Добавьте новую программу (новый модуль) в файл конфигурации conf/mods.conf:
include embox.cmd.hello_world
Соберите Embox:
$ make
Запустите Embox:
$ ./scripts/qemu/auto_qemu
Запустите новую программу в консоли Embox:
root@embox:/#hello_world
Hello, world!
root@embox:/#
Информацию по установке и эксплутации ОС РВ Embox можно получить в "руководстве пользователя"
ОСРВ Embox является кросс-платформенным решением и установка зависит от аппаратной платформы.
р>
Система безопасности основана как на традиционных средствах защиты информации таких как:
дискретный/мандатный доступ, фаервол, очистка памяти,
так и на архитектурных особенностях системы: отсутствие избыточности кода и статической сборке образа,
что делает невозможным запуск вредоносного ПО. (невозможность запуска вредоносного ПО)
Архитектурно-зависимые части вынесены в виде отдельных модулей, что упрощает перенос на новые платформы. Embox поддерживает следующие процессорные архитектуры; SPARC, Microblaze, ARM, MIPS, PPC, x86
+Низкие требования к аппаратуре в купе с широкими функциональными возможностями делают Embox привлекательным при создании различных устройств для интернета вещей
+Embox поддерживает различные уровни приоритета, вытесняющую многозадачность, инверсию приоритета и различные способы синхронизации (сообщения, мьютексы, критические секции)
+Развитый сетевой стек позволяет использовать Embox для создания телекоммуникационного оборудования любого уровня сложности
+Технология гарантирующая наличие в конечном образе только заявленного функционала позволяет применять Embox для создания систем автоматического управления в том числе критически важной инфраструктурой
+Развитые функциональные возможности и богатые возможности для обеспечения детерминированной работы системы делают Embox идеально подходящими для создания различного рода приборов
+