Исследовательское ядро Windows Research Kernel
Цели уникального проекта по предоставлению академическому сообществу исходных кодов ядра Windows состоят в следующем:
· Облегчить преподавателям и учащимся сравнение и нахождение различий в отношении Windows и других операционных систем;
· Предоставить учащимся возможность изучать исходный код, вносить изменения и создавать проекты;
· Обеспечить действенную поддержку исследованиям и публикациям по ОС;
· Способствовать изданию большего числа учебников по ОС и предназначенных для университетов книг по внутренней организации ядра Windows;
· Упростить лицензирование, чтобы разрешить использование исходных кодов Windows на классных занятиях и в лабораторных работах.
Исследовательское ядро WRK основано на исходных кодах ОС NT Windows Server 2003 SP1 и Windows x64. Объем - более 800 тысяч строк исходного кода ядра Windows. Код несколько упрощен, добавлены и упорядочены комментарии, исправлены опечатки. Еще раз отметим, что код WRK представляет собой подлинные спецификации и проектную документацию по Windows типа NT.
Использование WRK.Комплекс WRK может быть использован прежде всего для лабораторных работ по программированию – например, для внесения изменений или создание проектов в целях преподавания и проведения экспериментов. Пример возможного проекта: планирование в ОС на основе round-robin (справедливого раздела).
WRK может быть использован также для детального изучения исходного кода, что особенно удобно, если для обучения используется пакет CRK.
WRK может быть использован для студенческих проектов для выпускного курса (дипломов, магистерских диссертаций).
WRK также является хорошей основой для перспективных исследований в рамках кандидатских диссертаций.
Проект ProjectOZ
Цель ProjectOZ — создание экспериментальной среды для проектов по операционным системам. Студентам и преподавателям предоставляется среда для проектов ОС с использованием API-интерфейса NT. Обеспечиваются в пользовательском режиме простые абстракции. Применяются реальные функциональные возможности ОС, а не "игрушечное" моделирование. В целях преподавания и проведения экспериментов понижен уровень сложности. В простой среде разработки применяются стандартные средства для сборки, отладки и создания инструментария. Поддерживаются эксперименты, связанные с исследованием принципов работы ОС. Поощряется образ мыслей учащихся, направленный на создание готовых к использованию программных продуктов.
Архитектура ProjectOZ:
· Нагрузки, тесты, инструментарий
· Проекты и эксперименты учащихся
· Первоначальная реализация ОС (небольшой объем кода, побуждает учащихся добиваться более высокого результата);
· Продвинутый уровень - обеспечиваемые SPACE* абстракции ЦП, диспетчера памяти, ловушек. Разработан на основе проекта SPACE Калифорнийского университета (Санта-Барбара, США).
В области лабораторных работ по программированию ОС UNIX на сегодняшний день представлена лишь в виде "игрушечной" ОС (Minix) или симуляторов Nachos и XINU.
Для сравнения, ProjectOZ – часть программы WAP - предоставляет среду для разработки учебных и исследовательских проектов по операционным системам с использованием ядра Windows - API-интерфейсов NT.
ProjectOZ достаточно прост, но, тем не менее, обеспечивает реальные функциональные возможности ОС и простую среду разработки с инструментами для сборки, отладки и разработки инструментария.
ProjectOZ выполняется в пользовательском режиме в стандартной системе Windows, благодаря использованию возможностей архитектуры подсистем Windows.
Уровень SPACE проекта ProjectOZ поддерживает более сложные абстракции оборудования. Базовый уровень проекта, BasicOZ, предоставляет основные примитивы функций операционной системы. Поэтому времени на обучение требуется совсем немного, и учащиеся смогут очень быстро перейти к созданию собственных проектов, расширяя BasicOZ.