как работает виртуальная память и кэш страниц?

Por lo general, para depurar estos problemas, puede ser útil agregar algo de registro, posible para cada línea. Así:

source activate python36 >> /tmp/1.log 2>&1

python opt/project1/Table_Control.py opt/project1/connection.yaml >> /tmp/2.log 2>&1

También puede configurar la tarea cron para que se inicie cada minuto para que no tenga que esperar. Debería ayudar.

0
20.07.2019, 13:36
1 ответ

Кэш страниц хранится в оперативной памяти. В принципе, он может заполнить всю физическую память. Причина, по которой это не так, заключается в том, что память также используется для других целей.

«Анонимный» (своп -резервное )выделение памяти конкурирует с файловым -резервным выделением страничного кэша. Они уравновешиваются кодом управления памятью. Точное поведение управления памятью невероятно сложно. Когда нет свободной оперативной памяти для нового выделения страницы, Linux выберет, удалить ли старую резервную страницу подкачки -или старую резервную страницу файла -. Баланс этого выбора можно настроить с помощью значения конфигурации vm.swappiness.

Некоторым архитектурам, поддерживаемым Linux, не хватает виртуального адресного пространства (всего 32 или даже 31 бита :-). Это не ограничивает размер кэша страниц. Кэш страниц явно написан для поддержки использования временных виртуальных сопоставлений. Посмотрите на первоисточник:https://www.kernel.org/doc/html/latest/vm/highmem.html

Другими способами использования памяти являются

  1. невозможность выделения кэша, отличного от -. Например. код ядра. Эти выделения также включают в себя -выделения ядра, сделанные с помощью kmalloc(), которые в основном являются (? )показаны как распределения "slab". Есть и другие типы.

    Примером необратимых выделений памяти, которые в целом могут стать очень большими, являются сетевые буферы ядра.

  2. память «водяной знак». Это зарезервировано,добиться прогресса в управлении памятью, находясь под давлением. Например, я считаю, что эти резервы могут быть использованы при достижении водяного знака, и требуется некоторая память, чтобы записать старую анонимную страницу для обмена, чтобы освободить место для чего-то еще. Обычно резервы могут составлять 1 -3% памяти (и меньше в больших системах ). Насколько велика резервируемая память для водяных знаков в моей системе? Причина, по которой это значение может достигать 3% на небольшой системе, связана с «прозрачными огромными страницами».

2
28.01.2020, 02:29

Теги

Похожие вопросы