Инициализация процессов и постановка их в очередь готовых к выполнению
Порождение процесса планировщиком при инициализации обязательно. При этом планировщиком формируется идентификатор процесса, по которому планировщик опознает процесс. В контекст заносятся стартовые параметры процесса. Дескриптор процесса ставится в конец списка, имитирующего очередь готовых процессов.
Выбор первого процесса из очереди готовых
Выбирается первый элемент из списка готовых процессов. Выбранный процесс помечается как текущий (исполняющийся в данный момент).
Сдвиг очереди может осуществляться сразу, а может уже после того, как запущенный процесс вновь передает управление планировщику.
Обращение к контексту процесса и запуск процесса
Обнуление счетчика тиков, обращение к контексту по дескриптору выбранного процесса и передача управления процессу.
Обработка счетчика тиков и проверка истечения кванта
Для работы с квантом используются прерывания DOS.
Сохранение контекста прерванного процесса
Если процесс не завершил работу, состояние текущего процесса сохраняется в стеке соответствующего процесса, процесс добавляется в список готовых процессов.
Переход к следующему процессу
Если очередь готовых не пуста – возврат к 3 пункту, иначе завершение работы планировщика.
Контрольные вопросы по теме
«Принципы организации системы планирования мультизадачной ОС»:
1. Суть и необходимость многозадачности в однопроцессорной системе.
2. Концепция процесса. БУП, диаграмма состояний процесса, варианты и условия изменения состояний. Особенности организации информационных структур, используемых ОС для управления процессом.
3. Планировщик. Назначение планировщика. Приоритетность по отношению к пользовательским процессам (зачем и за счет каких механизмов организуется). Схема работы планировщика с процессами.
4. Механизм прерываний. Назначение механизма прерываний. Алгоритм обработки прерываний. Смена контекста. Классификация прерываний. Сравнение с планировщиком по приоритетности, обоснование.
5. Дисциплины планирования, особенности организации отдельных дисциплин планирования. Вытесняющая и невытесняющая многозадачность. Дисциплины обслуживания с точки зрения многозадачности.
Лабораторная работа 11
«Управление памятью» Часть1.
Цель работы:получение практических навыков управления памятью и самостоятельной работы с документацией команд.
Поясняющая информация
Команды POSIX для работы с памятью(должны быть во всех операционных системах)
ps - выводит информацию о процессах и памяти
Команды для работы с Windows
Большую часть информации о памяти можно получить через диспетчер задач.
Tasklist - выводит информацию о работающих процессах и памяти
Задание
1. Запустите Windows
2. Составьте справочник для выше приведенных команд (на русском языке), расписав какие параметры для чего нужны.
3. Разберитесь как работать с диспетчером задач, и что означает информация в столбцах (все что относится к памяти).
4. Поработайте с этими командами.
5. Что нужно уметь:
- показывать рабочий набор для каждого процесса и в целом для системы
- изменение рабочего набора с момента последнего обновления для каждого процесса
- невыгружаемую память для каждого процесса и в целом для системы
- выгружаемую память для каждого процесса и в целом для системы
- число обращений к диску для загрузки страниц, не найденных в ОЗУ для каждого процесса
- изменение числа обращений к диску для загрузки страниц, не найденных в ОЗУ, с момента последнего обновления.
- показывать максимальный рабочий набор для каждого процесса
- размер адресного пространства, переданной процессу
К сдаче лабораторной предоставляются: справочник команд предоставляющих информацию о памяти.
Лабораторная работа №12
«Управление памятью» Часть2.
Цель работы:получение практических навыков управления памятью и самостоятельной работы с документацией команд.
Поясняющая информация
Команды для работы с LINUX
free - выводит информацию об использовании оперативной памяти
top -выводит динамическую информацию о процессах и памяти
ps - выводит информацию о процессах и памяти
Задание
1. Запустите Linux.
2. Составьте справочник для выше приведенных команд (на русском языке), расписав какие параметры для чего нужны.
3. Поработайте с этими командами.
4. Что нужно уметь:
выводить информацию об использовании оперативной памяти, периодически и с разными единицами измерения.
выводить информацию о памяти процессов, и понимать, что означает тот или иной столбец.
К сдаче лабораторной предоставляются: справочник команд предоставляющих информацию о памяти.
Лабораторная работа 13
«Управление файлами»
Цель работы: получение практических навыков работы с файлами и самостоятельной работы с документацией команд.
Поясняющая информация
Команды POSIX для работы с файлами(должны быть во всех операционных системах)
cd- смена каталога
chgrp - смена группы пользователей для каталога или файла
chmod - смена уровня доступа пользователей для каталога или файла
chown - смена пользователя для каталога или файла
cp - копирование файлов
ls - выводит список файлов и каталогов текущей директории
file - указывает тип указанного файла
find- поиск файлов
ln- создание ссылок
mkdir - создание каталога
mv - перемещение файла или каталога
pwd- имя текущего каталога
rm - удаления файла
rmdir- удаление каталога
du - сводка использования дискового пространства
cat - слияние и вывод файлов