2014-01-31 2 views
0

Этот вопрос предназначен для понимания ограничений вида, применимых для файла Mem-Mapped в среде unix.Unix: файлы с отображением памяти, применимые ограничения?

У нас есть APP, работающий в среде unix, который размещает и обслуживает файлы с Mem-отображенными файлами Key-Value с доступом только для чтения, также может обновляться во время выполнения при копировании новой версии файла (probabaly with more пары ключ-значение).

Что я наблюдаю, так как файл Mem-Mapped, так как мы обновляем файл с более важными парами. Потребление памяти VIRT увеличивается с небольшим потреблением RES Mem.

PID PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 
12948 16 0 43240 9936 2996 S 0.0 0.1 0:00.00 lookup_server 
12951 16 0 562m 16m 9972 S 0.0 0.1 0:00.09 lookup_server 

Как я понимаю, это происходит потому, что весь файл копируется в виде виртуальных страниц памяти в жестком диске, и только несколько страниц, которые востребованы в ВИЭ мем.

ли мои предположения правильно, что

  1. с Mem-Mapping файлами, размер файла не ограничен доступной физической памятью, так как файлы будут выгружаться в/из операционной системы по требованию.
  2. и ограничивающим фактором может быть дисковое пространство, настроенное для виртуальной памяти. В этом случае, как я могу определить дисковое пространство, идентифицированное ОС для расширения виртуальной памяти? где хранится ли стоп-память виртуальной памяти файла в жестком диске?
+0

стремится знать, ограничена ли виртуальная память дисковым пространством, и где на диске unix хранит страницы виртуальной памяти? – Shashi

ответ

0

Я думаю, что 2) применяется только в том случае, если вы сопоставляете файл с MAP_PRIVATE, а затем только при изменении страниц в памяти. Если вы сопоставляете страницы без MAP_PRIVATE, файл уже находится на диске и не нужно копировать в файл подкачки. 1) Правильно - вы можете отображать более крупные файлы, чем доступная память. Но помните, что ОС по-прежнему приходится выделять таблицы страниц, поэтому не пытайтесь сопоставить 1TB-файл.

 Смежные вопросы

  • Нет связанных вопросов^_^