RU/2: Форум. Общение пользователей и разработчиков OS/2 (eCS). : чем отличаются Warp 3.0 и 4.0?


Список сообщений | Написать новое | Ответить на сообщение | Домой Поиск:
Предыдущее сообщение | Следующее сообщение
From : shiz0rat
To : Andrew Belov
Subj : чем отличаются Warp 3.0 и 4.0?

> ~3G. Работают и системы с 4G, но сколько реально используется - не в курсе.

ну, значит мне такие проблемы в ближайшем будущем не грозят :)

> > виртуальной?
>
> Смотря на какой арене и в каком ядре. VIRTUALADDRESSLIMIT в 4.5x расширяет пространство, доступное юзерским процессам, за счет сужения системного, которым будет питаться, например, RAMFS при записи на RAM-диск (=> хочешь гигабайтный RAM-диск - снижай VIRTUALADDRESSLIMIT до 1280).

интересно...

> > по какому алгоритму работает своп?
>
> Про это (включая сокращение-расширение с гистерезисом) можно диссертации писать... Дизайн 80-х был продуманным. :)

я имел в виду - в первом приближении. самые общие сведения. например, в линуксе ядро ждёт до последнего, и только когда свободной физической памяти не остаётся ни байта, задействует своп, старается держать его размер на минимуме, полностью освобождая при первой возможности. БЗД наоборот, сбрасывает как можно больше неиспользуемых страниц, чтобы не заниматься этим, когда какая-нибудь дурная прога вдруг потребует аж гигабайт рамы. примерно так же, афаик, действует AIX. ОС\2 в этом смысле - тёмный лес. Допустим, я хочу выделить под своп отдельный раздел. Какого он должен быть размера (если по максимуму)? Допустим, виртуальная память в 3.0 ограничена гигабайтом. У меня 64Мб РАМ. Максимальный размер свопа 1024 или 960Мб? На какой файловой системе лучше располагать своп-файл? Могу лишь предположить, что независимо от файловой системы (ФАТ\ХПФС) своп не может быть более 2Гб из-за ограничения на размер файла. До каких размеров может расти своп на ЖФС - страшно даже представить :)

> > И как со всем этим стыкуется hibernation?
>
> А вот это вполне тривиально. VMM участвует только как помощник.
>
> "Туда" - глушится многозадачность, IFS'ам и железкам дается отбой (SAVERESTORE), выделяется-освобождается пара мегабайт для стабилизации своппинга,

значит, своп не уничтожается? ага...

опрашивается список страниц, список с оглавлением кладется в обход *.IFS

хмм... может, и своп работает в обход ИФС? это было бы логично.

в заранее подготовленный \SWAPPER2.DAT, затем система ... продолжает работать - состояние сохранено, дальше по выбору.

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

> "Обратно" - щупается \SWAPPER2.DAT, ему портится сигнатура (на случай зависания), страницы по оглавлению вычитываются в RAM (для адресации применяется хак "long real mode"),

ой, ассемблер-то я ещё в ZX-детстве позабыл... :(

дается SAVERESTORE на реинициализацию драйверов, включается многозадачность (DosSysCtl#14), \SWAPPER2.DAT прибивается или НЕ прибивается - есть спецрежим, когда система всегда при пропадании питания будет стартовать с сохраненного \SWAPPER2.DAT.

а можно сохранять несколько поколений хиберната? напр. настроить на запуск hibernat.exe каждую минуту, а потом по Альт-Ф1 выбирать, какой из последних 5-10 имаджей памяти восстанавливать... по аналогии с Archive Desktop. наверно, я слишком многого хочу, но это у меня юношеский максимализм играет :)

> >Есть где-нибудь подробная инфа по менеджменту памяти в ОС2? ФАК я читал.
>
> Хм, наверное самая полная - только в исходниках и сопроводиловке (KGUIDE20.INF). Если найдешь. Либо "The Design of OS/2" (DESIGN.INF) в порядке введения + OS/2 Debugging Handbook, EDM/2 и документация из DDK в качестве технической закуски.

ой. а если не так подробно, а совсем наоборот, обзорно-популярно?

Thu 01 Jan 2004 08:43 Links (0.99pre13; OS/2 1 i386; 95x39)




Programmed by Dmitri Maximovich, Dmitry I. Platonoff, Eugen Kuleshov.
25.09.99 (c) 1999, RU/2. All rights reserved.
Rewritten by Dmitry Ban. All rights ignored.