Память в Linux. Cache, swap, dirty pages // Демо-занятие курса «Administrator Linux. Professional»

Поделиться
HTML-код
  • Опубликовано: 17 окт 2023
  • Приглашаем вас 17 октября, во вторник, в 20:00 мск на бесплатный открытый урок по теме: «Память в Linux. Cache, swap, dirty pages». Мы обсудим, как устроена память в Linux и как эффективно с ней работать.
    «Administrator Linux. Professional» - otus.pw/kb66/
    Преподаватель: Андрей Буранов - системный администратор в VK, работает с операционной системой Linux более 7 лет
    Подключайтесь к обсуждению в чате - otus.pw/KTUK/
    Пройдите опрос по итогам мероприятия - otus.pw/1Lfe/
    Следите за новостями проекта:
    - Telegram: t.me/Otusjava
    - ВКонтакте: otus.pw/850t
    - LinkedIn: otus.pw/yQwQ/
    - Хабр: otus.pw/S0nM/

Комментарии • 20

  • @pavel_radzevich
    @pavel_radzevich 3 месяца назад +6

    08:20 Agenda
    09:10 Вопросы
    13:00 Начало
    13:09 free, описание полей:
    13:52 - total
    14:32 - used
    14:45 - free
    15:46 - shared
    18:11 - buff/cache
    19:20 - Почему Linux съедает память?
    20:00 - Удаляется ли файл процесса после завершения из cache?
    21:37 - Итог про free память.
    21:50 - available
    22:54 - Можно ли ТОЧНО рассчитать доступную память при необходимости?
    23:18 Вопросы.
    23:52 /proc/meminfo
    25:09 /proc/sys/vm/drop_caches, очистка cache
    26:56 Страницы памяти
    29:14 Выделение памяти для процесса:
    32:56 - /proc/meminfo, VmallocTotal - максимально возможная адресация в рамках данной архитектуры
    33:34 - /proc/meminfo, Committed_AS
    35:05 - Редактирование файла, dirty pages
    35:48 - /proc/meminfo, Dirty
    37:25 Настройка dirty pages
    37:32 - sync - сброс dirty pages
    42:30 - /proc/sys/vm/dirty_*, настройка сброса dirty pages
    55:32 - /etc/sysctl.conf, конфигурация dirty pages
    55:46 - /etc/sysctl.d/*, файлы настройки sysctl
    57:09 Swap
    59:07 /proc/meminfo, Active(anon), Inactive(anon) - Анонимный кэш
    1:05:39 /proc/sys/vm/swappiness
    1:07:03 swappiness - что такое
    1:09:10 Когда нужно освобождать память системе?
    1:09:23 - /proc/zoneinfo
    1:25:19 inode
    1:30:05 /proc/1/maps - детализация памяти
    1:36:21 hardlink
    1:38:02 super block, tune2fs -l /dev/mapper/vg00-root
    1:38:30 - dd if=/dev/mapper/vg00-root bs=1 count=1024 skip=1024 | hexdump -C, bin super block

  • @user-pl9ec3ns6f
    @user-pl9ec3ns6f 8 месяцев назад +3

    Лекция реально полезная, наверняка это везде написано, но именно способ донесения очень понравился.

  • @fedordostoevskiy4209
    @fedordostoevskiy4209 3 месяца назад

    Лучшее обьяснение про swap.

  • @Tattoson
    @Tattoson 4 месяца назад

    Спасибо! Лучший лектор!

  • @xromzak
    @xromzak 7 месяцев назад +2

    Отличный доклад

  • @Victor58ist
    @Victor58ist 4 месяца назад

    Спасибо, Андрей!

  • @wildjoe6259
    @wildjoe6259 7 месяцев назад

    Очень круто! Спасибо!

  • @alexandersmirnov4274
    @alexandersmirnov4274 8 месяцев назад +4

    по вашим занятиям можно подготовится к собеседованию

  • @dba___
    @dba___ 6 месяцев назад +2

    В unix-like есть Direct I/O, т.е. чтение из файла минуя кэш. В oracle можно было настроить такой режим работы, до разработки и внедрения asm.

    • @dba___
      @dba___ 6 месяцев назад

      Во всех оракловых гайдах и MOS нотах swap упоминается для стабильной работы, чтобы это не значило. Возможно инсталлятор ругнется, если свопа не будет, но далее его можно спокойно отключить.

    • @dzen1234
      @dzen1234 5 месяцев назад

      Да конечно есть. Смотрю главу Direct I/O в доках Red Hat и вижу "Direct I/O is a feature of the file system whereby file reads and writes go directly from the applications to the storage device, bypassing the operating system read and write caches."
      Автор с уверенным голосом просто дезинформирует аудиторию. Либо в словах очень неаккуратен и косноязычен, либо есть вопросы к компетентности.

  • @user-xz6mo6wn4d
    @user-xz6mo6wn4d 7 месяцев назад

    Load average не может быть "количеством процессов в очереди на ожидание ресурсов" 1:35:14 Потому что в эти процессы входят и обрабатываемые процессором. О чем автор видео и сказал далее - процессы со статусом R.

  • @Victor58ist
    @Victor58ist 4 месяца назад

    Вижу и слышу про Линукс!

  • @happylion9732
    @happylion9732 6 месяцев назад

    Не совсем понятно про expire. А если я еще изменяемый файл в редакторе не сохранил?

  • @Victor58ist
    @Victor58ist 4 месяца назад

    Kali Linux будет освящаться?

  • @Victor58ist
    @Victor58ist 4 месяца назад

    Изучаю Linux. Хочу Kali Linux!

    • @nej1r336
      @nej1r336 2 месяца назад

      зачем тебе изуродованный debian?
      ставь debian тогда уж и собери из него свой КАЛи в котором ты будешь разбираться лучше.

    • @TestTest-fi2ok
      @TestTest-fi2ok Месяц назад

      Не слушай никого, решил - делай

  • @Victor58ist
    @Victor58ist 4 месяца назад

    Видно, но не слышно. Смотрю вглухую!!!

  • @dzen1234
    @dzen1234 5 месяцев назад

    16:27 Как это в Linux нет технологии, позволяющей лезть в память процессов? А файл /proc//mem ?
    Тут же задают вопрос про gdb, и ответ, что мол "этот доступ идет через системный вызов и дело не в процессе" вообще непонятен ("Сказать что этот вот туда" - это что-то на уровне Кличко).
    См статью Baeldung про этот файл.
    Кроме gdb - масса софта лезет в память других процессов. Например, антивирусы читают память других процессов, и хаки к играм спокойно меняют байты в памяти других процессов.