Операционные системы 09.02.03 2 курс. Автономной некоммерческой образовательной организации профессионального образования
Скачать 0.57 Mb.
|
Cash-ирование данныхСодержимое cash-памяти представляет из себя совокупность записей обо всех загруженных в неё элементов данных. Каждая запись об элементе включает в себя адрес, который этот элемент данных имеет в АЗУ. Каждая загрузка к АЗУ в системе, где есть cash-память, выполняется в соответствии со следующим алгоритмом: Просматривается содержимое cash-памяти с целью определения, не находятся ли нужные данные в cash. Поскольку cash-память не адресуема, поэтому поиск данных осуществляется по значению поля адреса в АЗУ. Объективные свойства: Пространственная локальность: если производится обращение по некоторому адресу, то с высокой степенью вероятности можно сказать, что в ближайшее время произойдет обращение к соседним адресам. Временная локальность: если производится обращение по некоторому адресу, то с высокой степенью вероятности можно сказать, что следующее обращение по тому же адресу произойдет в ближайшее время. Понятие процесса. Управление процессами. Синхронизация процессов. Тупики и способы борьбы с ними.Процесс – это абстракция, описывающаяся и выполняющаяся программой. В каждой ОС есть система управления процессами, которая занимается созданием, распространением и удалением процессов, обеспечивает взаимодействие между процессами. В многозадачной системе процесс может находиться в одном из трех основных состояний: Выполнение – активное состояние процесса, во время которого процесс обладает всеми необходимыми ресурсами и непосредственно выполняется процессором. Ожидание – пассивное состояние процесса, процесс заблокирован и не может выполняться по своим внутренним причинам. В данном состоянии он ожидает каких-либо действий (завершение ввода-вывода, получение сообщения от другого процессора, в процессе отсутствует ресурс). Готовность – пассивное состояние процесса; процесс заблокирован в связи с внешними по отношению к нему условиями. У процесса есть все ресурсы, он готов к выполнению, но процессор занят выполнением другого процесса. В ходе жизненного цикла процесс может переходить из одного состояния в другое в связи с алгоритмом планирования выполнения процессов. Жизненный цикл процесса начинается с состояния готовности. При активизации переходит в состояние выполнения и находится там, пока либо сам не перейдет в ожидание, либо пока система сама не вытеснит его, и он будет в состоянии готовности. На протяжении существования процесса его выполнения может быть многократно прервано и продолжено. Чтобы возобновить выполнение процесса, необходимо восстановить его состояние: Восстановить содержимое регистров и программного счетчика. Указатели на открытые файлы. Состояние об ошибках и т.д. Соответствующая информация называется контекстом. Кроме того, системе для организации планирования процесса требуется определенная дополнительная информация: Идентификатор Состояние Данные о степени привилегированности Место нахождения кодового сегмента Данная информация называется дескриптором процесса. Т.е. дескриптор содержит более оперативную информацию, которая доступна системе планирования процесса, по сравнению с контекстом. После того, как система решила, какой выполнять процесс, используется контекст. Очередь процесса представляет из себя дескрипторы отдельных процессов, организованных в списке. Программный код начинает выполняться только после того, как создается процесс. Создать процесс – это значит создать информационную структуру, которая описывает данный контекст (дескриптор и контекст); включить дескриптор нового процесса в очередь готовых процессов; загрузить кодовый сегмент процесса в оперативную память. Лекция №4Алгоритмы планирования процессовЗадачи: Определение момента времени для смены процесса (решается программным способом) Выбор процесса на выполнение из очереди готовых процессов (решается программным способом). Переключение контекстов для старого и нового процессов (решается операторным способом). Алгоритмы, основанные на: Квантовании: смена активного процесса происходит в случае, если: Процесс завершился Произошла ошибка Процесс перешел в состояние ожидания Исчерпан квант времени, отведенный данному процессу. Процесс тогда переходит в состояние ожидания, ждет квант времени от системы. Квант может быть произвольным. Приоритете: число, характеризующее степень привилегированности процессов при использовании ресурсов – приоритетное число. Может быть положительным, отрицательным и т.д. Приоритет может быть и постоянным, и изменяющимся. Алгоритмы, использующие: Абсолютный приоритет (ОС может прервать выполнение процесса, выбрав другой) Относительный приоритет (процесс будет выполняться до конца) На выполнение будет выбираться процесс с наивысшим приоритетом. Планирование: невытесняющая многозадачность – процесс выполняется до тех пор, пока не отдаст свое управление. вытесняющее многозадачность – способ, когда решение о переключении процессора с одного процесса на другой выполняется разработчиком, а не системой; механизм выполнения задач целиком зависит от системы, в то время, как при невытесняющей многозадачности решение принимает программист. |