|
Своппинг (SWAPPINQ - перекачка) - метод с использованием внешней памяти, когда производится "откачка" программы (задачи) из ОП и "подкачка" ее обратно. Совокупность действий по откачке и подкачке называется своппингом (перекачка).
Для организации своппинга требуется планировщик памяти, который следит за тем, где какая задача находится (в ОП или внешней памяти).
Причины, по которым может возникнуть потребность в своппинге:
- обслуживание высокоприоритетных работ, когда низкоприоритетная откачивается, предоставляя свой раздел высокоприоритетной. После окончания высокоприоритетной задачи производится подкачка низкоприоритетной на свое место;
- использование одного и того же раздела памяти для малоактивных работ, например, задач, обслуживающих терминалы, когда пользователи тратят на обдумывание очередного действия много времени, а на выполнение действия требуются миллисекунды, или работ, требующих вмешательства оператора (установка бумаги на устройстве печати);
- эффективное обслуживание устройств в/в за счет своппинга чисто вычислительных работ, которым нужен в основном ЦП и предоставление раздела другим работам с большим количеством операций в/в на время обмена, ибо пока идет обмен запускается вычислительная работа.
При своппинге возникают те же проблемы, что и при перемещении границ, если подкачка будет производиться в другой раздел памяти. В системах реального времени при многопользовательском режиме широко используется своппинг не программ, а области данных пользователя. Но для этого программы реализуются как повторновходимые. Такие программы не имеют изменяемых областей памяти, кроме регистров. Все изменяемые поля передаются в программу как некоторая совокупность параметров. Эти поля свои у каждого пользователя. Именно они и являются данными для откачки и подкачки.
Дата добавления: 2015-10-02; просмотров: 52 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Разделы с подвижными границами | | | Виртуальная память |