Содержит модель файловой системы и наглядное представление алгоритма планировщика процессов
В эмуляторе должны быть реализованы следующие пункты:
- режим работы:
- многопользовательская защита;
- интерактивный;
- управление процессами:
- квантование времени;
- абсолютные приоритеты;
- относительные приоритеты;
- динамические приоритеты;
- организация файловой системы:
- многоуровневая;
- списки свободных/занятых кластеров;
- команды интерпретатора:
- вход и выход из системы;
- копирование;
- перемещение;
- переименование;
- создание и удаление;
- информация о процессах;
- изменение приоритета процесса;
- уничтожение процесса;
- эмуляция работы:
- эмуляция планировщика.
Для проектирования файловой системы в качестве прототипа была взята FAT16, были внесены некоторые изменения. Имеются такие функции как создание диска (файла с расширением mfs) с настраевыми параметрами (размер логического блока, размер корневого каталога, размер области данных), загрузка созданного ранее диска, управление пользователями и группами пользователей, создание, копирование, перемещение, удаление файлов и каталогов, редактирование их свойств, загрузка/выгрузка файлов в/из хостовой ОС.
Планировщик процессов организован таким образом, что поступающие на выполнение процессы распределяются по очередям в соответствии с их приоритетами — в каждой очереди находятся процессы только определённого приоритета. Всего очередей 4, как и приоритетов: низкий, обычный, высокий и абсолютный. Чем выше приоритет процесса, тем больше величина кванта: 4, 6, 8 и 24 единиц времени соответственно. Каждая из очередей работает по принципу Round-Robin. Кроме того, и сами очереди (назовём их малыми) организовывают большую очередь Round-Robin. В эмуляторе доступна генерация, изменение приоритета, и убийство процесса. В наглядном представлении состояние каждого процесса обозначается одним из трёх цветов:
- белый - процесс не существует (ещё не создан или уже завершён);
- серый - процесс находится в очереди, но в данный момент не выполняется;
- чёрный - процесс выполняется в данный момент.