Нет IP-адреса в случае сбоя других возможных средств поиска IP-адреса по имени хоста. Другие возможные средства могут быть перечислены в /etc/nsswitch.conf
для некоторых разновидностей unix и включают простой старый DNS, службы многоадресного поиска DNS с нулевой конфигурацией (например, через avahi), кэшированные записи из некоторых предыдущих поисков. (положительный или отрицательный) и т. д.
Обмен действителен только во время данной загрузки,поэтому вся информация об отслеживании хранится в памяти. Перестановка страниц полностью обрабатывается ядром и прозрачна для процессов. По сути, память разбита на страницы, отслеживаемые в таблицах страниц; это структуры, определяемые каждой архитектурой ЦП. Когда страница выгружается, ядро помечает ее как недействительную; таким образом, в следующий раз, когда что-либо попытается получить доступ к странице, произойдет сбой ЦП, что вызовет вызов обработчика в ядре; этот обработчик отвечает за восстановление содержимого страницы.
В Linux существует структура swap_info
, которая описывает каждое устройство подкачки или файл. Внутри этой структуры swap_map
сопоставляет страницы памяти с блоками в устройстве подкачки или файле. Когда страницы выгружаются, ядро сохраняет индекс swap_info
и смещение swap_map
в соответствующей записи таблицы страниц, что позволяет при необходимости найти страницу на диске. (Все поддерживаемые архитектуры предоставляют достаточно места для этого в своих таблицах страниц, но есть ограничения — например. Доступное пространство означает, что Linux может управлять не более чем 64 ГБ подкачки на x86.)
Более подробное описание всего этого вы найдете в главе «Управление подкачкой» книги Мела Гормана Understanding the Linux Virtual Memory Manager .