• Авторизация


64-битные ОС: ставить или не ставить? 02-03-2010 19:11 к комментариям - к полной версии - понравилось!


По прошествии некоторого времени я пришел к обоснованному мнению на этот вопрос: не ставить, за исключением особых случаев (подробнее о них ниже).

Поначалу я был более оптимистично настроен по отношению к 64-битным ОС и при первом же удобном случае хотел поставить такую на свой рабочий компьютер. Принципиальных преимуществ у 64-битных систем два. Первое - это способность адресовать более 2Гб адресного пространства процесса. Второе - более развитая система команд процессора, увеличенная разрядность регистров, большее количество самих регистров, способность обработки в одной команде 64-битных целых.

Первое из преимуществ является на данном этапе несущественным, учитывая, что не слишком дорогой компьютер обычно имеет до 2-4Гб памяти, и отдавать всю или почти всю память одному процессу - как-то нерационально. Да и нужд таких пока нет, чтобы одна программа использовала такое большое количество памяти для своей работы. К тому же, чтобы использовать это преимущество, программа должна быть компилирована под 64-битный процессор, что в настоящее время тоже нечастое явление.

Второе из упомянутых преимуществ было с моей точки зрения более существенным. Некоторые алгоритмы могут выполняться быстрее в разы на одном и том же процессоре, если они работают в 64-битном режиме. Поэтому, желая иметь в своем распоряжении 64-битную систему, я прежде всего надеялся на общее увеличение производительности ее работы.

Однако на практике все оказалось иначе. Все перечисленные преимущества 64-битного процессора не сыграли заметной роли и не увеличили быстродействие моей системы. То ли компиляторы пока еще не могут оптимизировать код эффективно в таких условиях, то ли те алгоритмы, которые тормозят, не могут быть ускорены за счет использования 64-битного кода. Короче говоря, заметного ускорения работы компьютера не произошло. Зато произошло нежелательное явление: увеличение нагрузки на оперативную память. 64-битный код имеет меньшую плотность и соответственно больший размер EXE- и DLL-файлов; кроме того, для хранения указателей требуется в 2 раза больше памяти. В результате одни и те же программы, компилированные в 64-битный код, требуют в полтора-два раза больше памяти для своей работы. Стартующая Windows 7 и резидентные программы, число которых я постарался свести к минимуму, занимают в памяти около 800 мегабайт по сравнению с примерно 256Мб для Windows XP 32-bit. При запуске других приложений под 64-битной системой объем свободной памяти тает тоже быстрее, чем на 32-битной системе, за счет общего уменьшения плотности кода, увеличения размера DLLек. И вот этот недостаток памяти и работа файла подкачки замедляют систему куда сильнее, чем недоиспользование возможностей 64-битного процессора, когда он работает под 32-битной ОС.

И это еще не всё. Хоть под 64-битной виндой работают почти все приложения, написанные под 32-битную винду, все же имеются некоторые проблемы совместимости. 16-битные приложения и ДОС-приложения не работают вовсе (фирма Microsoft убрала режим эмуляции 16-битных Windows и DOS в 64-битной винде), что было для меня тоже неприятным сюрпризом.

Поэтому я считаю, что на компьютер с оперативной памятью менее 6-8Гб ставить 64-битную ОС вообще не имеет смысла. 64-битная ОС может быть необходима для работы программ, которые требуют более 2Гб памяти. Но такие программы я встречал редко, это были специализированные алгоритмы для обработки больших объемов научных данных. Остальные программы умещаются и в 32-битное адресное пространство, и даже если у компьютера более 2-4Гб памяти, 32-битная винда может использовать эту память, лишь бы только каждая отдельная программа не превышала этот барьер в 2Гб.
вверх^ к полной версии понравилось! в evernote
Комментарии (1):
AliFerster 08-08-2010-22:03 удалить
Исходное сообщение Optical_Race
Стартующая Windows 7 и резидентные программы, число которых я постарался свести к минимуму, занимают в памяти около 800 мегабайт по сравнению с примерно 256Мб для Windows XP 32-bit.

Что ж Вы с XP-то сравнили :) Windows 7 x86 также займёт примерно 800 МБ (точно не скажу, сам не ставил, но у друга Юры что Vista x86, что 7 x86 около гига при старте съедали.
Сам пользуюсь 7 x64 уже год, жалоб нет. Разве что было пару раз было, что конкретная программа сама сообщает, что под x64 работать не будет. Такое уж не обойдёшь.
Кстати, не знаю, насколько можно было бы уменьшить потребление памяти семёркой (не пытался), но под XP, когда у меня в прошлом году было всего 256 МБ памяти, при старте всегда было занято всего 120 МБ (при включённых темах, эффектах - правда, без антивируса).


Комментарии (1): вверх^

Вы сейчас не можете прокомментировать это сообщение.

Дневник 64-битные ОС: ставить или не ставить? | Optical_Race - Дневник Optical_Race | Лента друзей Optical_Race / Полная версия Добавить в друзья Страницы: раньше»