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

Согласно документу 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 .

  • Что такое параллельное распределение памяти?
  • Содержание области стека процесса
  • Как проверить аппаратные ошибки с помощью программных методов?
  • Определение максимального использования памяти для чрезвычайно короткого процесса
  • использование tstime и памяти
  • Невосприимчивая память, выделенная для сляба, считающегося используемым или доступным кешем?
  • Как вы отслеживаете использование памяти в сценарии ksh93
  • Как убийца OOM решает, какой процесс убить первым?
  • Является ли таблица файлов в файловой системе или в памяти?
  • Что произойдет, если количество свободной памяти (vm.min_free_kbytes) будет слишком низким?
  • Какая доля памяти использует ядро ​​Linux для установленной ОЗУ?
  • Interesting Posts

    Является ли rsync самым быстрым и надежным способом проверки идентичности каталогов?

    Что означает TCPRcvCoalesce, TCPAutoCorking и TCPHystartTrainCwnd в netstat?

    Как обеспечить файловую систему с включенным «atime»?

    Установка Expect и TCL

    Ошибка монтирования при автоопределении USB-флэш-накопителя с шиной LUKS

    Как определить, где исполняемый файл выполняет поиск общей библиотеки?

    Загрузка образа необработанного диска в QEMU

    Использование вывода mpv ASCII с w3m

    Отфильтруйте пути из текстового файла, который глубже, чем их непосредственный предшественник

    Для развертывания общедоступного webapp, который между Testing и Stable используется за несколько недель до выпуска?

    нет записей arp для vnet

    В отчетах SAR% commit включает использование кеша страницы?

    Невозможно сделать .zhistory символической ссылкой

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

    как объединить два файла на основе одного столбца

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