[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Смена архитектуры процессора



В Чтв, 22/05/2008 в 19:27 +0300, Sergey Chumakov пишет:
> Hi Покотиленко,
> 
> * Покотиленко Костик <casper@meteor.dp.ua>
> * 2008-05-22 16:42:
> > > Экспериментальным путем определено, что 32-bit Linux (и WinNT).
> > > позволяет выделить процессу максимум 1,5-2Г. Остальное надо самому
> > > ядру.
> > 
> > Это при каком объёме памяти? 2Гб? 
> 
> Нет, 4G. На одной и той же железке. Suse 10 и WinXP.

"Остальное надо самому ядру" - эта фраза говорит о том, что ядро зажрало
2-2.5 Гб памяти, в чём я сильно сомневаюсь.

> > С любой Windows 32бита история такая: у них используется виртуальное
> > адресное пространство ограниченное 4Гб. Но в этом пространстве помимо
> > самой памяти мапятся адреса устройств, программ MSDOS и некоторые
> > другие, поэтому есть 2 факта:
> >  - больше 4Гб они не видят напроч
> >  - реально доступно не более 3.5Гб.
> 
> Ну я подозреваю, что в любой ОС на х86 так же.

В Линуксе не так. На Винде 32 бита поставишь 8 Гб ОЗУ а реально доступно
будет не более 3.5 (не на один процесс, а на всех).

> > 
> > Сколько на процесс максимум доступно не в курсе.
> 
> WinNT 32-bit может использовать PAE, т.е. доступно до сколько там? 64G.

С PAE видит до 3.5, без только 3.

На сайте Мелкософта написано, что 32 битные версии Windows не
поддерживают белее 4 Гб ОЗУ, а более 3 Гб ставить не рекомендуется, так
как в адресном пространстве (4 Гб) реальное ОЗУ начинает "налазить" на
замапинные адреса и получается BSOD. Там надо поплясать, чтобы безопасно
4 Гб работало, в двух словах - ограничить до 3-3.5Гб количество памяти,
которое Винде стоит использовать... ...иначе "налазит".

> Вопрос не в том сколько доступно может быть, а сколько ядро позволяет
> выделять процессу памяти через alloc и т.п. А это, насколько я быстро
> поспрашивал гугла, зависит от того, как организовано управление ядром памятью
> пользовательских процессов. Вроде как в WinNT по умолчанию 2/2Г, можно
> 3/1Г если не надо адресовать > 16G. Вроде в Linux 2.6 по умолчанию 3/1Г.
> Но почему они получали ограничение в 1,5Г. Может было такое ядро...

Может. Я что-то такое тоже слышал.

> Нет, поставили SuSe x64 :)

И это правильно, в некотором смысле.

-- 
Покотиленко Костик <casper@meteor.dp.ua>


Reply to: