powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / Виртуальрая память
10 сообщений из 35, страница 2 из 2
Виртуальрая память
    #35131651
Фотография Журавлев Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Очень давно когда деревья были большими а трава зеленее. В юниксах свопа необходимо было иметь больше чем оперативки, иначе всю оперативку использовать было бы нельзя. Консалтеры с тех пор пишут 128 метров озу -> 128 метров свопа, 16 гиг озу -> 16 гиг свопа, не надо слушать идиотов.





вот до седых волос дожили а свопинг от пейджинга путаем.
пейджинг это хорошо, а вот своппинг плохо.

Код: plaintext
1.
2.
3.
vmstat -S  5   1  
         procs           memory                   page                              faults       cpu
    r     b     w      avm    free   si   so    pi   po    fr   de    sr     in     sy    cs  us sy id
     1       0       0      18887    615129      0      0       0      0       0      0       0      912       90      30     0    0   100 
Смотреть надо на si so (swap in/out), pi po (page in/out) - это иной процесс (постепенная загрузка исполняемого кода).
...
Рейтинг: 0 / 0
Виртуальрая память
    #35131921
Фотография Scott Tiger
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Журавлев ДенисСмотреть надо на si so (swap in/out), pi po (page in/out) - это иной процесс (постепенная загрузка исполняемого кода).

page in/out - это не только страницы исполняемого кода, любые другие также спокойно уходят на диск и загружаются в память.
...
Рейтинг: 0 / 0
Виртуальрая память
    #35131949
Фотография Scott Tiger
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вариант
Scott Tiger
вариант
Приведите пример из любой ОС ( со ссылкой да доку) выделения свопа
в оперативной (физической) памяти ( не на RAM диске ) и продолжим разговор
о непонимании механизмов работы виртуальной памяти , и как это выглядит.

Solaris устроит? Общедоступную ссылку поищу завтра, а так - в книге "Solaris Internals" тема раскрыта достаточно подробно. Впрочем, думаю, во всех юниксах сейчас своп - виртуальный.

Вполне.

Как оказалось, означенную книгу (1-е издание) можно легально почитать в онлайне. http://books.google.com/books?id=r_cecYD4AKkC&pg=PA236&lpg=PA236&source=web&ots=oBofl3wFCQ&sig=nsNygViC_2dGPBbTXTHmXLtr2uA

Книга написана во времена 7-й версии, т.ч. некоторые вещи существенно изменились (например, кэш ФС). Но прочитать стоит в любом случае.
...
Рейтинг: 0 / 0
Виртуальрая память
    #35131960
Фотография Журавлев Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Scott Tiger Журавлев ДенисСмотреть надо на si so (swap in/out), pi po (page in/out) - это иной процесс (постепенная загрузка исполняемого кода).

page in/out - это не только страницы исполняемого кода, любые другие также спокойно уходят на диск и загружаются в память.согласись пейджинг это нормально, а своппинг нет.
...
Рейтинг: 0 / 0
Виртуальрая память
    #35132018
Фотография Scott Tiger
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Журавлев Денис Scott Tiger Журавлев ДенисСмотреть надо на si so (swap in/out), pi po (page in/out) - это иной процесс (постепенная загрузка исполняемого кода).

page in/out - это не только страницы исполняемого кода, любые другие также спокойно уходят на диск и загружаются в память.согласись пейджинг это нормально, а своппинг нет.

Почему же? Оба - нормальная реакция системы на то, что её ставят на колени :) Своппинг более эффективная и менее ресурсоёмкая операция в критической ситуации (когда пейджинг уже не справляется).
...
Рейтинг: 0 / 0
Виртуальрая память
    #35132250
вариант
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Scott Tiger вариант
Scott Tiger
вариант
Приведите пример из любой ОС ( со ссылкой да доку) выделения свопа
в оперативной (физической) памяти ( не на RAM диске ) и продолжим разговор
о непонимании механизмов работы виртуальной памяти , и как это выглядит.

Solaris устроит? Общедоступную ссылку поищу завтра, а так - в книге "Solaris Internals" тема раскрыта достаточно подробно. Впрочем, думаю, во всех юниксах сейчас своп - виртуальный.

Вполне.

Как оказалось, означенную книгу (1-е издание) можно легально почитать в онлайне. http://books.google.com/books?id=r_cecYD4AKkC&pg=PA236&lpg=PA236&source=web&ots=oBofl3wFCQ&sig=nsNygViC_2dGPBbTXTHmXLtr2uA

Книга написана во времена 7-й версии, т.ч. некоторые вещи существенно изменились (например, кэш ФС). Но прочитать стоит в любом случае.

Ненашел ничего про выделение свопа в пямяти кроме области swap reservation,
бегло ознакомившись с понятием swapfs layer и понял что swap reservation ( который находится
в оперативной памяти ) никаких страниц не хранит , это структура
позволяющая мапить адреса физической(оперативной) памяти со смещениями(адресами) в файле
свопа, а также быстро вычислять возможность сброса страниц в своп.
Фактически это управляющая структура.

В вашем документе есть явное указание на то, что если виртального свопа недостаточно необходимо добавить физического(из файла). Про оперативную память ни слова.

Scott Tiger
вариант Scott Tiger
Ну будет он у тебя отображаться на физическую же память - чего хорошего?

Сути этого вопроса я не понял.

Я в том смысле что обычно лучше использовать физическую память для непосредственных нужд приложения, а не размещать в ней своп, место которому - на диске.


Прошу прокомментировать, что значит размещать своп в физической(оперативной) памяти?


в качестве з.ы.

Очень интересная цитата из описания swapfs layer , которая раскрывает предисторию на требования консалтеров, о которых говорил Денис Журавлев:
автор
Traditional UNIX implementations need a page-sized unit of swap space for every page-sized unit of writable virtual memory. For example, a malloc request of 8 Mbytes on a traditional UNIX system would require us to reserve 8 Mbytes of swap disk space, even if that space was never used. This requirement led to the old rule of swap space = 2 x memory size—the rough assumption was that processes would, on average, have a virtual size about twice that of the physical pages they consumed. The swapfs layer allows Solaris to be much more conservative; you only need swap space for the amount of virtual memory that is larger than the pageable physical memory available in the machine.
...
Рейтинг: 0 / 0
Виртуальрая память
    #35132441
Фотография Scott Tiger
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
http://books.google.com/books?id=r_cecYD4AKkC&pg=PA236&lpg=PA236&source=web&ots=oBofl3wFCQ&sig=nsNygViC_2dGPBbTXTHmXLtr2uA#PPA158,M1

На 158 странице всё хорошо написано. В частности:


The swapfs file system includes all available pageable memory as virtual swap
space in addition to the physical swap space. This allows us to “reserve” virtual
swap space and “allocate” swap space when we first touch a page. When we reserve
swap, rather than reserving disk space, we reserve virtual swap space from the
swapfs file system. Disk swap pages are only allocated once a page is paged out.

Есть рыба-пила и есть рыба-молот. Вот только не понятно, что они там строят...
...
Рейтинг: 0 / 0
Виртуальрая память
    #35132526
вариант
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Scott Tiger http://books.google.com/books?id=r_cecYD4AKkC&pg=PA236&lpg=PA236&source=web&ots=oBofl3wFCQ&sig=nsNygViC_2dGPBbTXTHmXLtr2uA#PPA158,M1

На 158 странице всё хорошо написано. В частности:


The swapfs file system includes all available pageable memory as virtual swap
space in addition to the physical swap space. This allows us to “reserve” virtual
swap space and “allocate” swap space when we first touch a page. When we reserve
swap, rather than reserving disk space, we reserve virtual swap space from the
swapfs file system. Disk swap pages are only allocated once a page is paged out.

Есть рыба-пила и есть рыба-молот. Вот только не понятно, что они там строят...

О чем спорим?
Исходя из цитаты вся вся доступная страничная память является частью swapfs .
То есть все, в том числе и то что сейчас занято процесами(выполняемыми в данный момент процессором).

Издеваетесь?
...
Рейтинг: 0 / 0
Виртуальрая память
    #35132615
Фотография Scott Tiger
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вариант
Исходя из цитаты вся вся доступная страничная память является частью swapfs.

То есть все, в том числе и то что сейчас занято процесами(выполняемыми в данный момент процессором).

Какое-то извращённое понимание что русского, что английского языков :) "Доступная" != "занятая".
...
Рейтинг: 0 / 0
Виртуальрая память
    #35132879
VoDA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вариантЕще раз, Обратите внимание на слово возникает.Бывает что система ДОЛЖНА обработать некую порцию данных по запросу пользователя. Обработка может занять больше памяти чем есть в ОЗУ. т.е. изредка ВОЗНИКАЕТ необходимость обработать данные.

вариантСУБД используют пространство временного хранения(TEMP) в таких случаях.
Или говорите какую СУБД вы имеете ввиду.
СУБД гораздо лучше знает, что где и как искать на диске в своем TEMP TBS чем
ОС для некоего нетипизированного процесса в свопе.
По сему использование TEMP всегда будет производительнее в случае рассмотрения
TEMP vs SWAP в контексте любой СУБД поддерживающей TEMP TBS.
Недосток СУБД в виде отсутствия TEMP TBS не нужно рассматривать как достоинство SWAP.СУБД это еще одно приложение с точки зрения ОС. А может или не может оно использовать TBS это дело 100-е. Кстати а что такое TBS и в какой СУБД?

К примеру MS SQL 2k очень любит хавать память. И на машине с 500Мб ОЗУ может уйти на 2-3Gb swap.

вариантВы хотите сказать что существует приложение и его окружене (ОС и железо) где
приложение которое свопится будет работать быстрее чем без свопа.
пример в студию.А можно ссылку ГДЕ я говорил: " Вы хотите сказать что существует приложение и его окружене (ОС и железо) где приложение которое свопится будет работать быстрее чем без свопа. " ??? Я такого не писал )))

А хочу сказать, что есть приложение и его окружение (ОС и железо), которое без swap не может работать на МИНИМАЛЬНОЙ допустимой конфигурации.

Пример: min RAM 500Mb. При этом само приложение может съесть 1-2Gb memory. Если свапа не будет, ТО ПРИЛОЖЕНИЕ НЕ РАБОТАЕТ.

вариантБольшой своп может быть полезен только как затыкание дыры на уже работающей системе( что бы хоть как нибудь дышало).
Проектировать систему с учетом использования большого обьема свопа ИМХО недальневидно.
В общем согласен. НО к сожалению часто программы пишутся левой ногой и ТЗ к ним тоже.
...
Рейтинг: 0 / 0
10 сообщений из 35, страница 2 из 2
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / Виртуальрая память
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]