Linux: низкоуровневое управление виртуальной памятью - сотрудничество между процессамиLinux

Ответить Пред. темаСлед. тема
Anonymous
 Linux: низкоуровневое управление виртуальной памятью - сотрудничество между процессами

Сообщение Anonymous »

Если бы я был в MMAP (), очень большой файл (для доступа только для чтения) был бы чтение ядром после того, как ошибка страницы указывает на то, что страница еще не кэширована в оперативной памяти. Страницы будут оставаться кэшированными в памяти - до тех пор, пока, по всейшени, все остальные страницы доступной оперативной памяти не содержат недавно кэшированной страницы некоторых других данных - когда требуется новая страница ОЗУ. Страницы в большом файле могут быть рассчитаны (при умеренных вычислительных затратах - скажем, 10 мс каждый) - Итак ... нет строгого требования иметь большой файл предварительных данных. Поскольку каждая страница сначала требуется, будет использована страница оперативной памяти для удержания вычисленного контента. На слегка загруженном хосте это обеспечит производительность кэширования, сравнимые с использованием mmap () против файла. На сильно загруженном хосте (или хосте с меньшим количеством страниц ОЗУ, чем на карту страниц виртуальной памяти), я бы столкнулся с проблемами - с голодом с оперативной памятью. Очевидно, что процесс пространства пользователя потребует уведомления, когда это произойдет ... для того, чтобы он мог переписывать содержимое страницы, если/когда/когда потребуется снова в будущем. Я знаю о Madvise (2) - но это, похоже, не поддерживает этот вариант использования. Я мог бы исправить произвольное (относительно небольшое) количество страниц виртуальной памяти-и управлять этикетками LRU на уровне приложения-но я бы предпочел, чтобы ядро определить количество оперативной памяти, которое можно предоставить для моего процесса для целей кэширования ... на основе всего хоста ... в контексте спроса от других процессов. без голода других процессов памяти ... и без привыкания к использованию предварительно вычисляемого файла?

Подробнее здесь: https://stackoverflow.com/questions/797 ... -processes
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Linux: низкоуровневое управление виртуальной памятью - сотрудничество между процессами
    Anonymous » » в форуме Linux
    0 Ответы
    31 Просмотры
    Последнее сообщение Anonymous
  • Linux: низкоуровневое управление виртуальной памятью - сотрудничество между процессами
    Anonymous » » в форуме Linux
    0 Ответы
    4 Просмотры
    Последнее сообщение Anonymous
  • Управление виртуальной памятью в Linux
    Anonymous » » в форуме C++
    0 Ответы
    9 Просмотры
    Последнее сообщение Anonymous
  • Управление виртуальной памятью в Linux
    Anonymous » » в форуме Linux
    0 Ответы
    18 Просмотры
    Последнее сообщение Anonymous
  • Управление виртуальной памятью в Linux
    Anonymous » » в форуме C++
    0 Ответы
    2 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Linux»