Как я могу рассчитать размер разделяемой памяти, доступной системе

Согласно документу rhel , общий объем доступной общей памяти в системе равен shmall * PAGE_SIZE . После завершения установки RHEL6 значение параметра ядра shmall по умолчанию составляет 4294967296, а это означает, что общее количество страниц общей памяти, которые могут использоваться в системе, составляет 4294967296, а размер страницы – 4096B. Таким образом, на основе формулы размер общей памяти равен

4294967296*4096/1024/1024/1024/1024=16TB 

который намного больше, чем размер оперативной памяти (8 ГБ). Как os может найти выделенную память 16 ТБ для распределения?

Итак, размер /dev/shm фактически равен размеру общей памяти? Если нет, как я могу получить фактический размер разделяемой памяти?

One Solution collect form web for “Как я могу рассчитать размер разделяемой памяти, доступной системе”

Ваш расчет правильный. shmall можно установить выше, чем доступная виртуальная память. Если вы попытаетесь использовать все это, это не сработает из-за превышения shmall, но из-за других причин.

Кстати, есть также команды, чтобы найти эти ограничения IPC:

 ipcs -l lsipc # util-linux>=2.27 

Обратите внимание, что даже виртуальная память по умолчанию по умолчанию ограничена по Linux, больше, чем RAM + swap. Видеть

https://serverfault.com/questions/606185/how-does-vm-overcommit-memory-work

Как убийца OOM решает, какой процесс убить первым?

С другой стороны, вы можете ограничить виртуальную память на один процесс, используя ulimt -v который не повлияет на ядро /proc/sys/kernel/shmall .

  • Как читать .vma-файлы?
  • могу ли я использовать папку udev для копирования моих файлов, чтобы я мог освободить свой / dev / sda1
  • Используемая память не учтена для Linux
  • Создание средней загрузки CPU / GPU / памяти
  • Ошибки сессии Bash в командах: «fork: не может выделить память»
  • Нужно пояснить размер резидентного размера / виртуальный размер
  • Есть ли способ освободить память?
  • Как я могу проверить, сколько оперативной памяти требуется моему приложению, и будет ли меньше ОЗУ достаточным?
  • Xvfb не освобождает память
  • Как получить размер памяти GPU для OpenCL?
  • В чем разница между 32-битными PAE и 64-битными ядрами?
  • Interesting Posts

    Как я могу создавать новые всплывающие окна для отображения на одном рабочем столе своего приложения?

    Файлы доступа к Samsung GT-S5230 (Avila)

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

    Почему команда «tree» игнорирует каталоги, но не файлы

    Почему я получаю ошибку «отсутствие учетных данных» при установке общего ресурса Kerberized NFS?

    В чем разница между ULOG и NFLog?

    Как отредактировать файл и сохранить его список управления доступом / контекст безопасности SELinux?

    Почему некоторые порты сообщаются с помощью nmap, а не других?

    Как удалить элементы контекстного меню или изменить поведение правого клика?

    XFCE, как показывать всплывающие окна при использовании функциональных клавиш

    Нет perf (linux-tools) для ядра 4.5.2

    Что такое пейджер?

    ATI дружественный дистрибутив?

    Добавить репозитории в Kali Linux 2.0

    Почему приложение Run (Alt-F2) очень слабое на новом компьютере?

    Linux и Unix - лучшая ОС в мире.