В марте 2026 года появилась новость — легендарный DR-DOS, который когда-то конкурировал с MS-DOS и даже был основой для Windows 3.x, вернулся в виде версии 9.0, полностью переписанной с нуля на чистом ассемблере. Это не просто релиз: это вызов всему, что мы считаем «устаревшим». Новая версия работает только на процессорах 386 и выше — то есть, она не претендует на совместимость с современными CPU, но зато демонстрирует, как можно строить минимальную, надёжную ОС без библиотек, без ядра, без абстракций. Для выпускников ИТ-направлений это — идеальный кейс: он позволяет глубоко погрузиться в базовые принципы работы ОС, архитектуру загрузки, управление памятью и безопасность в условиях отсутствия современных средств защиты.
Даже если вы не планируете писать операционную систему, анализ DR-DOS 9.0 даёт уникальную возможность продемонстрировать понимание фундаментальных принципов: от загрузчика до управления прерываниями, от мультизадачности в реальном режиме до того, как работают стеки и регистры. Это — живой пример, где модульность, минимализм и предсказуемость важнее удобства разработчика. Такие темы отлично подходят под требования ГОСТ 34.602-89 («Организация и проведение научных исследований») и ISO/IEC 25010 (качество программных продуктов), особенно при оценке надёжности, соответствия спецификациям и эффективности использования ресурсов.
| Тема | Актуальность (по статье) | Цель | Задачи | Структура |
|---|---|---|---|---|
| Анализ архитектуры устаревших ОС для проектирования встраиваемых систем | DR-DOS 9.0 — первый релиз за 20 лет, написан на ассемблере, без зависимостей. Показывает, как можно избежать «загрязнения» кода современными фреймворками. | Обосновать выбор архитектуры для встраиваемого решения с учётом ограничений памяти и производительности. | 1. Сравнить структуру DR-DOS с Linux/FreeRTOS. 2. Проанализировать, какие компоненты можно перенести в современный проект. 3. Разработать модель «минимального ядра» для IoT-устройства. 4. Оценить RTO/RPO для отказоустойчивости. |
Гл.1 — Теория: сравнение архитектур Гл.2 — Проектирование: схема модулей, интерфейсы Гл.3 — Тестирование: нагрузочные сценарии, восстановление после сбоя |
| Методология «zero-dependency» в контексте CI/CD-пайплайнов | Новая версия DR-DOS не использует ни одну стороннюю библиотеку. Это — идеальный кейс для проверки, как работает сборка без внешних зависимостей. | Показать, как применить методологию «zero-dependency» в современной практике разработки ПО. | 1. Собрать DR-DOS 9.0 через Docker-образ с чистым toolchain. 2. Интегрировать сборку в GitHub Actions. 3. Протестировать локальную зависимость (например, `ld` и `nasm`). 4. Сформировать отчёт по метрикам: время сборки, размер образа, количество строк. |
Гл.1 — Анализ стека CI/CD Гл.2 — Проектирование пайплайна Гл.3 — Метрики и оптимизация |
| Эволюция безопасности в ОС: от DR-DOS к современным гипервизорам | В DR-DOS 9.0 нет встроенных средств защиты от прямого доступа к памяти или от выполнения кода в пользовательском режиме — всё решается на уровне архитектуры. | Изучить, как эволюция архитектурных решений повлияла на уровень безопасности. | 1. Выявить уязвимости в классической модели «код + данные = один пространство». 2. Сопоставить с современными механизмами: NX-bit, ASLR, SELinux. 3. Предложить гибридное решение для встраиваемой системы с ограниченным ресурсом. 4. Оценить TCO (Total Cost of Ownership) для разных уровней защиты. |
Гл.1 — Исторический обзор Гл.2 — Архитектура безопасности Гл.3 — Экономическая оценка |
В дипломе часто возникает вопрос: «Почему не C? Почему не Rust?». DR-DOS 9.0 — отличный ответ: потому что в некоторых случаях прямое управление аппаратными ресурсами требует знания, которое невозможно получить, не видя, как работает каждая инструкция. Например, загрузчик DR-DOS начинается с 16-битного режима, использует INT 13h для чтения с диска, а затем переключает процессор в 32-битный режим — и всё это без операционной системы. В аналитической части можно:
size vs. complexity между DR-DOS 9.0 и современными микросервисами;Вторая часть диплома может быть посвящена реализации «ядра» на основе DR-DOS. Вот конкретные шаги:
bootsect.asm вызывает kernel.asm через jmp far;EMS (Expanded Memory Specification);-cpu 386 и проверить, что система не падает при int 0x21.
; bootsect.asm
org 0x7c00
mov ax, 0x07c0
mov ds, ax
mov es, ax
mov ss, ax
mov sp, 0x7c00
; Загружаем kernel.bin
mov bx, 0x0000
mov cx, 1
mov dx, 0x0000
mov ax, 0x0201
int 0x13
; Переключаемся в 32-битный режим
call switch_to_32bit
jmp 0x0000:0x0000 ; Не достигнем — это «dead end» для тестирования
switch_to_32bit:
cli
lgdt [gdt_descriptor]
mov eax, cr0
or eax, 1
mov cr0, eax
jmp 0x0008:load_32bit
В дипломе обязательно нужно указать, как будет проверяться работа системы. DR-DOS 9.0 — отличный объект для:
taskswitch;int 0x21 / ah=0x30 для получения информации о свободной памяти;Все эти метрики можно оформить в виде диаграммы, как в статье, где указано, что DR-DOS 9.0 имеет RTO < 5 секунд при сбое диска.
Не очень — если вы не собираетесь писать полноценную ОС. Главное — не перегружать работу. Можно взять готовый исходник DR-DOS 9.0 (есть в репозитории на GitHub), изменить его под свои нужды, и сделать акцент на анализе и адаптации. Важно: не копировать, а переосмыслить.
Нет. Вы можете использовать готовый код, но в тексте должны быть комментарии к ключевым участкам (например, «строка 42 — переключение в 32-битный режим»). Если вы пишете на C, то можно показать, как компилятор генерирует ассемблерный код для этого участка.
Создайте три диаграммы: классов (для модулей), состояний (для загрузчика), последовательности (для обработки прерывания). Используйте PlantUML или draw.io. В тексте укажите: «На рис. 3 представлена последовательность вызовов при загрузке».
Для нагрузочного тестирования — qemu-system-i386 -drive file=drdos.img,if=ide. Для метрик — dd if=/dev/zero of=testfile bs=1M count=100 и измерение времени. В статье указано, что тесты проводились на старом IBM PS/2.
Если вы не уверены в выборе темы или не знаете, как начать — мы можем помочь. Бесплатная 120-минутная консультация по любой теме ВКР. Просто напишите нам — и мы подготовим план, который точно соответствует вашим целям.
Источник: Легендарный DR-DOS вернулся: версия 9.0 написана с нуля на чистом ассемблере (опубликовано 2026-03-12)