Распределение памяти для процессов - PullRequest
0 голосов
/ 20 февраля 2012

У меня есть вопрос относительно выполнения процесса в отношении выделенной памяти.Допустим, у меня есть два процесса, P1 и P2.Если P1 выделяет огромные порции памяти, оставляя мало свободной памяти для P2, а теперь, если я запускаю P2, будет ли P2 работать без каких-либо изменений в памяти P1?или операционная система выдает некоторую память из P1, чтобы освободить место для P2?Прошу вас ответить на эти вопросы для моей ясности.

Спасибо, Ракеш.

1 Ответ

1 голос
/ 21 октября 2012

Существует два случая: -

Если подкачка не поддерживается, и мы выделяем память для всего процесса сразу:

Предположим, что есть два процесса и используется циклическое планирование.Затем, когда квант P1 заканчивается и если для P2 недостаточно памяти, P1 выгружается в резервное хранилище и вводится P2.

Если поддерживается подкачка и виртуальная память:

Теперь обоим процессам будут выделены кадры на основе их приоритета или размера.Если не хватает места, будут использоваться алгоритмы замены глобальной или локальной страницы.

...