Как ОС определяет из какого устройства надо достать данные? Вот работает процессов и нужны ему данные из адреса 0x01(например). Смотрит он в MMU и видит фактический адрес. А дальше куда? Как он определяет находится ли это в RAM или это в swap? Спасибо за ответ.
Когда процесс запрашивает данные из определенного адреса памяти, операционная система использует Memory Management Unit (MMU) для перевода виртуального адреса в физический. После этого операционная система обращается к таблице страниц для определения, находится ли запрошенные данные в оперативной памяти (RAM) или же они были выгружены на жесткий диск в область подкачки (swap).
Если данные находятся в оперативной памяти, операционная система может считать их напрямую. Если же данные находятся в области подкачки, операционная система должна сначала загрузить их обратно в оперативную память перед тем, как предоставить доступ к данным процессу.
Таким образом, операционная система использует таблицу страниц и информацию о состоянии страниц (например, бит присутствия или отсутствия) для определения местоположения данных и их доступности.
Когда процесс запрашивает данные из определенного адреса памяти, операционная система использует Memory Management Unit (MMU) для перевода виртуального адреса в физический. После этого операционная система обращается к таблице страниц для определения, находится ли запрошенные данные в оперативной памяти (RAM) или же они были выгружены на жесткий диск в область подкачки (swap).
Если данные находятся в оперативной памяти, операционная система может считать их напрямую. Если же данные находятся в области подкачки, операционная система должна сначала загрузить их обратно в оперативную память перед тем, как предоставить доступ к данным процессу.
Таким образом, операционная система использует таблицу страниц и информацию о состоянии страниц (например, бит присутствия или отсутствия) для определения местоположения данных и их доступности.