Необходимая функциональность

Со стороны разработчика ПО

1. Возможность разработки и сборки ПО для разрабатываемой ОС при помощи GNU GCC, и GNU Binutils; должна быть предоставлена стандартная библиотека С, реализующая требуемое подмножество системных функций POSIX.1.

2. Возможность запуска скомпилированного ПО в формате ELF64 на разрабатываемой ОС.

Функции ядра ОС

1. Реализация базовых принципов из разделов стандарта IEEE 1003.1:

- XBD 4.1 – Concurrent Execution

- ОС должна поддерживать одновременное выполнение нескольких процессов, запускаемых пользователем либо системой

- XBD 4.5 – File Hierarchy

- ОС должна реализовывать иерархическую файловую систему (ФС) с возможностью соединения нескольких ФС путем точек монтирования

- XBD 4.6 – Filenames

- XBD 4.11 - Pathname Resolution

- XBD 4.12 - Process ID Reuse

- XBD 4.13 - Scheduling Policy

- метод планирования задач – вытесняющая многозадачность с блокировками и ожиданием процессов

- XBD 8.1 - Environment Variable Definition

- XBD 10.1 - Directory Structure and Files

- ОС должна предоставлять запущенным программам доступ к файловой системе, включая специальные устройства POSIX (block devices) и терминалы (character devices; режим доступа к терминалу – неканонический).

- XBD 10.2 - Output Devices and Terminal Types

- при выводе на экран ОС должна эмулировать поведение терминала VT-102, включая различные атрибуты символов и управление курсором

- XBD 11. - General Terminal Interface

- XSH 2.3 - Error Numbers

- XSH 2.4 - Signal Concepts

- XSH 2.5 - Standard I/O Streams

Комплект поставки

- ОС должна включать в себя оболочку командной строки и набор утилит, аналогичных GNU Coreutils, совместимых со стандартном IEEE 1003.1 XCU.