|
Обновите ArcaOS до уровня NeoWPS
- Установите набор PNG иконок, нарисованных дизайнером, специализирующемся на оформлении OS/2
- Установите eSchemes 2018, чтобы менять цвета и кнопки на рабочем столе
|
Проблемы виртуальной памяти в OS/2 |
TITLE: Проблемы виртуальной памяти в OS/2
DATE: 2010-12-26 19:00:44
AUTHOR: Sjoerd Visser
Большинство пользователей OS/2 сталкивались с проблемами памяти,
возможно, не подозревая об этом. В статье изложены - основанные на
накопленном опыте - методы сведения к минимуму подобных проблем.
1.1. Введение
При работе 32-битной OS/2 на системе с 4-64 Мб физической оперативной
памяти ошибок "out of memory" не возникает. Дело в том, что программы OS/2
используют виртуальную память, которой куда больше физической DRAM-памяти.
OS/2 версий 2.0-4.0 способна адресовать 4 Гб (2^32) виртуального адресного
пространства процессора Intel 80386: первые 512 Мб из 4 Гб виртуального
адресного пространства доступны 16 и 32-битным пользовательским
приложениям OS/2, остальные 3,5 Гб - 32-битному ядру системы. OS/2 щедро
выделяет виртуальную память каждой программе даже если физически
доступен лишь незначительный её объем.
Менеджер виртуальной памяти OS/2 использует блок управления памятью
(MMU - memory management unit) процессора для хранения в физической
памяти необходимых страниц виртуальной памяти (т.н. on demand paging -
замещение страниц по требованию). Чтобы избежать переполнения жёсткого
диска, используется т.н. lazy commit.
Хотя программист OS/2 мог написать программу, которая использует до
480 Мб виртуальной памяти (верхние 32 Мб из 512 Мб зарезервированы под
системные DLL), на практике никто этого не делал. Программистам 32-битной
OS/2 приходилось учитывать максимальный объем памяти, доступный для 16-
битной OS/2 версии 1.x - 16 Мб. Кроме того, у пользователей OS/2 зачастую
было лишь 2-8 Мб ОЗУ, а объёма и быстродействия жёсткого диска явно не
хватало для создания файла подкачки нужного размера. Требовательные к
объёму памяти программы работали бы непозволительно медленно, а
постоянный свопинг привёл бы к пробуксовке системы. В отличие от *nix, в
OS/2 и Microsoft Windows, разделение памяти (memory sharing) между
процессами выполняется с минимальным свопингом. Поэтому программисты
использовали то, что есть: PM, WPS и прочие библиотеки, а не изобретали
велосипед.
Полный текст статьи будет опубликован до 10 января 2011.
Оригинал статьи на английском языке.
Комментарии: Прокомментируйте эту статью (напоминаем, автор работал над текстом несколько недель, уважайте мнение других).
|
В eComStation 2.0 реализовано удобное (автоматическое) переключение между WiFi и Ethernet-соединением. Что нового в eCS 2.0? |
|
|
|
Готовая eComStation на SSD диске
Последний активный опрос: Какая высота барьера RPM?
[Google]
|
IBM OS/2 Warp
|