RU/2: Форум. Общение пользователей и разработчиков OS/2 (eCS). : Адреса в os2


Список сообщений | Написать новое | Ответить на сообщение | Домой Поиск:
Предыдущее сообщение | Следующее сообщение
From : valerius
To : valerius
Subj : Адреса в os2

> > Кароче мне нужны все критические статически адреса в os/2
>
> This is a picture of what the address space looks like for several processes.
>
...
> Карта памяти (взято из OS/2 debugging habdbook)

Еще точнее: (виртуальное адресное пространство процесса)
1) От 00000000 до 00010000 -- зарезервировано системой (invalid range)
2) От 00010000 и выше -- приватное адресное пространство процесса (по одному и тому же
адресу для всех процессов, поэтому для PID 1, PID 2, PID 3, PID 18, PID 12 оно общее)
(Private arena) (но физические адреса, разумеется, разные)
3) Shared arena. От 1FFFFFFF до 13000000 и ниже -- область общей памяти для всех процессов.
в нее, в частности, грузятся DLL'и и Shared memory, причем одна и та же область памяти для всех
процессов доступна по одному и тому же виртуальному адресу.
4) От 03FFFFFF до 13000000 -- Expansion region -- область между Private и Shared аренами.
При заполнении Private и Shared памяти сужается с двух сторон
5) выше в OS/2 версий до 4.5 располагалась область памяти ядра (System arena), то есть у процесса
был лимит в 1FFFFFFF == 512 Мб памяти. А ныне, в OS/2 версий >= 4.5 лимит памяти для процесса
вырос с 512 до max. 3 Gig памяти. Макс. объем памяти для процесса задается параметром ядра
VIRTUALADDRESSLIMIT=... Поэтому ввели еще и High Private и High Shared арены --
первая расширяется от 20000000 до VIRTUALADDRESSLIMIT вверх, вторая -- от VIRTUALADDRESSLIMIT и вниз.
Выше VIRTUALADDRESSLIMIT располагается System arena.

Вот. Принимаю поправки и замечания.

WBR,
Валерий


Mon 08 Aug 2005 18:29 Mozilla/5.0 (OS/2; U; Warp 4.5; en-US; rv:1.4.1) Gecko/20040




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.