Проверка настроек слайбов с помощью sysctl vm
На этом шаге вы изучите параметры ядра, связанные с виртуальной памятью и аллокатором слайбов (slab allocator), используя команду sysctl
. sysctl
- это утилита, которая позволяет просматривать и изменять параметры ядра во время выполнения.
Параметры ядра - это настройки, которые влияют на поведение ядра Linux. Многие из этих параметров находятся в файловой системе /proc/sys
. sysctl
предоставляет удобный способ доступа к этим параметрам и управления ими без прямого взаимодействия с файлами в /proc/sys
.
На нас интересуют параметры, связанные с виртуальной памятью, которые часто включают настройки, влияющие на управление памятью, в том числе аспекты работы аллокатора слайбов. Эти параметры обычно группируются в поддереве vm
.
Для просмотра всех параметров ядра, связанных с виртуальной памятью, используйте команду sysctl
с аргументом vm
:
sysctl vm
Введите команду в терминале и нажмите Enter. Вы увидите список параметров и их текущих значений, похожий на следующий:
vm.admin_reserve_kbytes = 8192
vm.block_dump = 0
vm.compact_memory = 0
vm.compact_unevictable_percentage = 1
vm.dirty_background_bytes = 0
vm.dirty_background_ratio = 10
vm.dirty_bytes = 0
vm.dirty_expire_centisecs = 3000
vm.dirty_ratio = 20
vm.dirtytime_expire_seconds = 43200
vm.drop_caches = 0
vm.extfrag_threshold = 500
vm.highmem_is_dirtyable = 0
vm.laptop_mode = 0
vm.lowmem_reserve_ratio = 256 256 32 0 0
vm.max_map_count = 65530
vm.min_free_kbytes = 67584
vm.min_slab_ratio = 5
vm.min_unmapped_ratio = 1
vm.mmap_min_addr = 65536
vm.nr_hugepages = 0
vm.nr_hugepages_mempolicy = 0
vm.nr_overcommit_hugepages = 0
vm.numa_balancing = 1
vm.numa_balancing_scan_delay_ms = 1000
vm.numa_balancing_scan_period_min_ms = 20
vm.numa_balancing_scan_period_max_ms = 10000
vm.numa_balancing_scan_size_mb = 32
vm.overcommit_memory = 0
vm.overcommit_ratio = 50
vm.page-cluster = 3
vm.panic_on_oom = 0
vm.percpu_pagelist_fraction = 0
vm.stat_interval = 1
vm.swappiness = 60
vm.user_reserve_kbytes = 131072
vm.vfs_cache_pressure = 100
Найдите параметры, которые могут быть связаны с кэшированием или давлением на память, например vm.vfs_cache_pressure
или vm.min_slab_ratio
. Эти параметры могут влиять на то, как ядро управляет различными типами кэшей, включая кэши слайбов.
Вы также можете просмотреть конкретный параметр, указав его полное имя. Например, чтобы увидеть значение параметра vm.vfs_cache_pressure
:
sysctl vm.vfs_cache_pressure
Эта команда выведет:
vm.vfs_cache_pressure = 100
Параметр vm.vfs_cache_pressure
контролирует склонность ядра освобождать память, используемую для кэширования объектов каталогов и inode. Более высокое значение означает, что ядро более активно освобождает эту память.
Понимание этих параметров поможет вам настроить поведение памяти вашей системы.
Нажмите Continue, чтобы перейти к следующему шагу.