Главная
Случайная страница
Полезное:
Как сделать разговор полезным и приятным
Как сделать объемную звезду своими руками
Как сделать то, что делать не хочется?
Как сделать погремушку
Как сделать так чтобы женщины сами знакомились с вами
Как сделать идею коммерческой
Как сделать хорошую растяжку ног?
Как сделать наш разум здоровым?
Как сделать, чтобы люди обманывали меньше
Вопрос 4. Как сделать так, чтобы вас уважали и ценили?
Как сделать лучше себе и другим людям
Как сделать свидание интересным?
Категории:
АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника
|
Подсистема управления памятью
Подсистема управления памятью в современной операционной системе решает следующие основные задачи: - бесконфликтное распределение памяти между исполняющимися программами; - защита памяти от несанкционированного доступа. В любой современной операционной системе эти задачи полностью решаются средствами виртуальной памяти, механизмы работы которой будут весьма подробно рассмотрены в данном курсе через некоторое время. Подсистема управления процессами Выполнение любой программы в рамках любой современной операционной системы начинается с создания процесса – специального объекта операционной системы, обеспечивающего выполнение программы, таким образом, подсистема управления процессами в конечном итоге отвечает за выполнение программ. Подсистема управления процессами в современной операционной системе решает довольно обширный набор задач, которые удобно представить в виде диаграммы:
Рисунок 2 Задачи подсистемы управления процессами
Таким образом, подсистема управления процессами решает два класса задач: создание и удаление процессов, и управление существующими процессами. Задача создания процесса сводится к размещению в памяти и инициализации структур данных, описывающих процесс. Задача удаления процесса зачастую сводится к освобождению памяти и ресурсов, удерживаемых процессом. Более интересными представляются задачи, связанные с управлением процессами. Дадим краткую характеристику этим задачам. Управление процессами требует решения двух классов задач: задач планирования процессов и задач межпроцессного взаимодействия.
Планирование процессов
Подсистема планирования процессов решает две независимые задачи: 1. определяет, какой из готовых к выполнению процессов, когда, и на какой интервал времени следует передать процессору для выполнения, т.е. выполняет собственно планирование процессов; 2. выполняет переключение процессов, т.е. снимает с исполнения текущий процесс и ставит на исполнение запланированный процесс. Такое переключение процессов называют диспетчеризацией. Заметим, что задача планирования является аппаратно независимой. Планирование процессов осуществляется исходя из степени важности процессов для системы или пользователя и временной статистики их исполнения, т.е. без учета каких-либо аппаратных особенностей компьютера. Задача диспетчеризации, наоборот, является аппаратно зависимой, т.к. переключение процессов связано с сохранением и загрузкой регистров конкретного процессора. Межпроцессное взаимодействие В рамках межпроцессного взаимодействия необходимо решать две задачи: задачу синхронизации процессов и задачу межпроцессной коммуникации. Синхронизация процессов является одним из важнейших аспектов функционирования многозадачной операционной системы. Действительно, в многозадачной операционной системе часто возникает ситуация, когда некоторый процесс не может выполняться дальше, пока не будут завершены определенные действия другого процесса. Например, один процесс, назовем его процесс-писатель, помещает данные в некоторый буфер, а другой процесс – процесс-читатель, считывает данные из этого буфера. Очевидно, что процесс-писатель не должен помещать в буфер новые данные, пока процесс-читатель не считает ранее записанные данные. Как будет показано в нашем курсе далее, осуществить необходимую синхронизацию на уровне пользовательских процессов, без специальных средств операционной системы, не представляется возможным. Что касается межпроцессной коммуникации, то каждый процесс выполняется в рамках собственного виртуального адресного пространства, закрытого для других процессов, поэтому межпроцессные коммуникации могут быть реализованы только при наличии специальной поддержки со стороны операционной системы. Конкретные механизмы межпроцессного взаимодействия будут подробно изучаться в нашем курсе в дальнейшем.
Date: 2015-07-01; view: 1173; Нарушение авторских прав Понравилась страница? Лайкни для друзей: |
|
|