Здравствуйте, хочу поднять уже возможно надоевший вопрос.
Есть не очень новый сервер с двумя двуяхдерными Xeon'нами с 8-10 Gb ram использоваться будет для стандартной LAMP связки. Собственно вопрос: Что ставить 64 битный debian или 32 c bigmem? Вопрос этот поднимаю только потому что было замечено что с 64х битной системой процессы становятся намного прожорливее в плане памяти. Велики ли эти издержки и стоит ли обращать на них внимание?
64 бита малек быстрее работают из-за расширения инструкций( хотя кто-как )
И не забываем на лимит 2048МБ на программу для 32. В сисистеме то может и больше памяти будет, то таже самая БД не сможет ее адресовать.
И никто не мешает запускать 32бита на х64
Причём тут линукс? Это ограничение 32-битного режима. Ну, лимит не в 2 гига, а 4 для всего адресуемого пространства. В том числе вся система, шаред-либы итд тоже занимают место в этом пространстве. Так что под программу остаётся какая-то часть. В винде вот просто 2048, можно и 3+ гб настроить там, как помнится.
О_о Лимит на общее кол-во памяти (без PAE) 4Гб, и не более 2Гб на приложение. Больше никак не сделать, даже PAE не спасет. Так же (вот тут я не помню правильную формулировку) в 64 битном режиме шире полоса пропускания, а значит производительность на пиках будет выше.
Кроме того, современные 64битные ядра от массовых дистрибутивов несколько лучше в плане оптимизации собственно подсистема ядра — нет необходимости тащить за собой кучу барахла для совместимости с какими-нибудь математическими сопроцессорами от 386 процессоров.
А, а ещё в 64-битном режиме активируется NX-бит, что должно защищать от эксплоитов, связанных с переполнением буфера.
К сожалению не знаю как в линуксе, но в винде 64 битный exe файл становится в 2 раза больше 32-битного.
Я понимаю поинтеры занимают в 2 раза больше места, ну целочисленные константы тоже, ну некоторые инструкции увеличились в размере. Но почему весь файл в 2 раза больше??
Кстати, интересный вопрос. Может кто из гуру компиляторов для windows пояснит, почему так? Мне приходит в голову только паддинг данных, как возможная причина.