yurimann |
|
Темы:
8
Сообщения:
163
Участник с: 24 апреля 2010
|
Нет, это суммарная память. Память самого процесса и общих библиотек. |
and |
|
Темы:
4
Сообщения:
374
Участник с: 22 июня 2009
|
YuriMannЭто суммарная виртуальная память, выданная процессу ядром. Сюда входят отображаемые в память файлы и устройства, память, занятая самим процессом и разделяемые библиотеки. К занимаемому в физической памяти объему эта цифра не имеет никакого отношения. |
and |
|
Темы:
4
Сообщения:
374
Участник с: 22 июня 2009
|
128Mb RAM, 128Mb видеопамяти. По-моему комментарии излишни. Ну или объясните мне как один лишь X сервер занимает (по вашей версии) больше физического объема памяти.[[email protected] ~]# free total used free shared buffers cached Mem: 123196 120656 2540 0 0 76416 -/+ buffers/cache: 44240 78956 Swap: 0 0 0 [[email protected] ~]# ps -A | grep X 1684 tty7 00:00:02 X [[email protected] ~]# pmap -d 1684 | grep mapped mapped: 153476K writeable/private: 10196K shared: 133064K |
yurimann |
|
Темы:
8
Сообщения:
163
Участник с: 24 апреля 2010
|
Нашел на просторах интернета:mapped: общее количество памяти, отведенного под файлы Для сравнения openbox (с флешки) # pmap -d `pidof X` | tail -1 mapped: 40488K writeable/private: 13964K shared: 16832K |
and |
|
Темы:
4
Сообщения:
374
Участник с: 22 июня 2009
|
YuriMannДайте угадаю, нвидия с проприетарными драйверами? Ее драйвера не пытаются адресовать всю видеопамять сразу, а открытые драйвера xorg - очень даже. К тому-же вы мне так и не объяснили почему занимаемый (по вашей версии) объем памяти одним лишь процессом больше физического объема памяти. |
and |
|
Темы:
4
Сообщения:
374
Участник с: 22 июня 2009
|
И почитайте, наконец, про mmap, пожалуйста. Хотя-бы вот тут: http://ru.wikipedia.org/wiki/%D0%9E%D1%82%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5_%D1%84%D0%B0%D0%B9%D0%BB%D0%B0_%D0%BD%D0%B0_%D0%BF%D0%B0%D0%BC%D1%8F%D1%82%D1%8C. Я даже процитирую: при использовании отображений операционная система не загружает в память сразу весь файл, а делает это по мере необходимости, блоками размером со страницу памяти (как правило 4 килобайта). Таким образом, даже имея, небольшое количество физической памяти (например 32 мегабайта) можно легко отобразить файл, размером 100 мегабайт или больше |
yurimann |
|
Темы:
8
Сообщения:
163
Участник с: 24 апреля 2010
|
Дайте угадаю, нвидия с проприетарными драйверами?Radeon с последним каталистом. Openbox с vesa. объем памяти одним лишь процессом больше физического объема памятиПроверьте на живой системе. И почитайте, наконец, про mmap, пожалуйста. Хотя-бы вот тут:Ссылка не по теме. Разговор о разделяемой памяти. |
and |
|
Темы:
4
Сообщения:
374
Участник с: 22 июня 2009
|
YuriMannА чем виртуалка недостаточно живая система? Хорошо, завтра на работе буду - того же линуха запущу на реальной машине со 128Мб RAM и 128Мб видео, не составит проблемы. YuriMannРазговор о памяти, занимаемой процессом. Разве нет? Вы не понимаете специфики выделения виртуального диапазона адресов процессу (в данном случае ядром линукса) и пытаетесь мне доказать, что выделенный диапазон адресов равен размеру, занимаемому процессом в физической памяти. Это не так. Как пример механизма, реализующего несоответствие, которое вы никак не можете понять, я привел mmap - механизм, отображающий в виртуальный диапазон адресов процесса файлы и/или устройства без занятия всего объема памяти, который требуется. Именно его показывает pmap в строке “mapped” - это виртуальный диапазон адресов, выделенный процессу ядром. Он может быть до 4Гб на 32 битной системе, вне зависимости от физического объема памяти. Реальный объем, занимаемый только процессом, отображен в строке “writeable/private” - это его “личная” память, объем разделяемой памяти (которая тоже может быть mapped, никто не обещал, что это реальная память) в строке shared.И почитайте, наконец, про mmap, пожалуйста. Хотя-бы вот тут:Ссылка не по теме. Разговор о разделяемой памяти. |
yurimann |
|
Темы:
8
Сообщения:
163
Участник с: 24 апреля 2010
|
Опять двадцать пять.writeable/private: общее количество приватного адресного пространстваshared и есть “разделяемая память”. А ваша ссылка - совершенно другая песня. |
and |
|
Темы:
4
Сообщения:
374
Участник с: 22 июня 2009
|
YuriMannВы путаете (и даже смешиваете в одно, если я не ошибаюсь) разделяемую память (shared) и виртуальный диапазон адресов (mapped), выделяемый процессу ядром. Процесс имеет диапазон адресов, границы которого показывает pmap, в этот диапазон адресов входит память, занимаемая структурами самого процесса (физическая, приватная, показана в “writeable/private”), адреса, отображенные на файлы и/или устройства, и разделяемую память (та самая “shared”, к которой имеют или могут иметь доступ сразу несколько процессов), которая, в свою очередь, может быть реально выделенной памятью (разделяемые библиотеки, например) и/или отображенными в виртуальную область памяти файлами и/или устройствами. Вы вообще путаете физическую память и виртуальный диапазон адресов поцесса(ов). Почитайте про управление памятью в современных операционных системах. |