Хорошие причины сохранить 32-битные ОС Microsoft Windows для настольных ПК

58

Этот вопрос относится к 2012 году. Если вы читаете его в 2019 году или позже, тогда ответ на самом деле таков. Нет. В 2019 году нет веских оснований для поддержки 32-разрядных настольных операционных систем.

Оригинальный вопрос ниже:


Серверное программное обеспечение было 64-битным только на некоторое время (начиная с Server 2008 R2 для Windows, даже раньше для Exchange и Sharepoint), и даже Ubuntu отталкивают вас от 32-битных версий для своих серверных ОС.

Но есть ли какая-либо веская причина, поддающаяся количественной оценке, чтобы поддерживать 32-битную настольную операционную систему настольной? Мы готовим наши образы Windows 8 для (к сожалению?) Немногих, которые будут первыми пользователями.

Большинство наших настольных компьютеров имеют 4 ГБ или меньше оперативной памяти, но я бы не хотел больше беспокоиться о поддержке 32-разрядной операционной системы.

Любая причина, почему я должен?

Марк Хендерсон
источник
17
Все ответы сводятся к «запускать программное обеспечение, которое работает только под этой системой»
Лукаш Мадон
@lukas - казалось бы. На что ответом на мой конкретный сценарий является «Нет, нет веских причин», поскольку все наше программное обеспечение совместимо с 64-разрядными системами. Именно на это я и надеялся, в течение нескольких месяцев у меня не будет особого улова (если предположить, что мы тщательно тестируем)
Марк Хендерсон
6
Не забудьте аппаратное обеспечение без 64-битных драйверов?
Свиш
Некоторому оборудованию это нужно. Зависит от вашей настройки. Первое и некоторые нетбуки второго поколения Atom работают только на 32-битных ОС.
Xeoncross
1
@Xeoncross Это не просто старые системы Atom. Нынешние Intel Atom D2500 / 2700 для настольных ПК оснащены графическим процессором powerVR и имеют только драйверы win32.
Дэн Нили,

Ответы:

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

  • Более компактный код означает меньше дискового пространства. Просто скачайте ISO-образы для вашей любимой ОС в 64- и 32-битной версии, чтобы увидеть разницу. Это не тривиально. Это также намного больше, когда вы распаковываете двоичные файлы. Как отмечает OrangeDog : большая часть этого занимаемого пространства связана с тем фактом, что 64-разрядные ОС поставляют 32-разрядные библиотеки в дополнение к 64-разрядным.

  • Вы по-прежнему получаете лучшую совместимость с устаревшими компонентами и программным обеспечением с 32-разрядной версией. Это особенно заметно в системах, которые динамически компилируются на хост-компьютере, но одновременно загружают сторонние двоичные библиотеки. Microsoft .NET Framework является отличным примером этого: хотя программы теоретически не зависят от архитектуры, каждый раз, когда вы ссылаетесь на собственный двоичный файл, вы привязываете одну или другую арку. Многие разработчики даже не знают, что это происходит, и поставляют производственные компоненты, которые не смогут работать на 64-битных системах без какой-либо настройки, чтобы явно указать .NET для работы в 32-битном режиме. Большинство людей не знают, как это сделать.

  • Как отметил Дэниел Б.: Разработка Windows .NET на 64-битных машинах оставляет вас открытым для расстраивающей несогласованности, когда при определенных обстоятельствах исключения маскируются ОС.

  • Устаревшее железо. Вы не можете запустить 32-битный драйвер на 64-битном ядре.

Ничто из этого не составляет шоу-стоппер для большинства людей. Тем не менее, вы должны решить, как эти факторы влияют на вашу среду.

tylerl
источник
1
Самый полный ответ на данный момент. +1
DejanLekic
2
Просто к вашему сведению по производительности. 64-битный код может быть быстрее благодаря большему количеству регистров, особенно если выполнять много целочисленную работу.
Мак
17
ISO-образы 64-битных ОС больше, потому что они также содержат 32-битную систему для поддержки обоих типов исполняемых файлов. Огромная разница в размерах не в том, что 64-битные двоичные файлы больше (но они незначительны).
Стоп Harm Моника
3
@OrangeDog: это сравнивает яблоки и апельсины. «Черт, у нас половина еды, но по крайней мере тарелка большая!»
2012 года
1
@Earlz archlinux.mirrors.uk2.net/iso/2012.09.07/arch выглядит на 3М больше для меня
Хватит вредить Монике
28

Единственная причина, по которой я могу оставить 32-разрядную настольную операционную систему, заключается в том, что вы используете старые 16-разрядные (например, DOS) программы и у вас нет версии Windows, которая поддерживает Windows Virtual PC.

(И даже тогда я установил бы 64-битную ОС и использовал бы что-то вроде DOSbox).

Изменить: На самом деле есть еще одна причина: оборудование, которое не справляется с адресным пространством более 4 ГБ. Например, FireWire пытается сделать DMA. Или любое (старое) оборудование без 64-битных драйверов.

Hennes
источник
На самом деле это очень веская причина для хранения 32-битного кода. Я забыл об этом. К счастью, я не думаю, что у нас осталось 16-битное программное обеспечение;)
Марк Хендерсон
3
Но для этого есть свободное программное обеспечение, так что это не очень хорошая причина, не так ли?
naught101
3
Не только приложения на базе MS-DOS, но также и приложения на основе Win16.
Алан Б
@ Naught101: Да, есть бесплатное программное обеспечение для DOS. А для Windows всегда есть проигрыватель Vmware, виртуальная коробка Oracle, виртуальный ПК с Windows, Wine для Windows (при условии, что он работает без 16-битной загрузки) и т. Д. И т. Д. Алан: 1) Действительно, хотя я не видел старых программ win16 в течение многих лет , Может быть, мне повезло, хотя. :) 2) Да отсюда и пример gratia DOS.
Hennes
Я так понимаю, вы не пытались использовать 64-битную Windows на 2 ГБ оперативной памяти.
Джошудсон
17

Все, что будет работать под управлением Windows 8, уже может работать на 64-битной основе, если только у вас нет нескольких нетбуков Intel Atom первого поколения (и я очень в этом сомневаюсь). Это единственное, о чем я могу думать.

AMD выпустила свой первый 64-битный Opteron в 2003 году; и с тех пор фактически каждый процессор, который они сделали, был 64-битным.

Год спустя Intel выпустила свой первый 64-разрядный Xeon (Nocona), а к 2006 году расширилась почти до всей линейки продуктов. Помимо вышеупомянутых ранних чипов Atom, каждый процессор Intel сегодня является 64-разрядным.

В Википедии есть разбитый список процессоров, если вы интересуетесь древней историей .

Майкл Хэмптон
источник
На самом деле, я думаю, что у нас есть HP Mini 1-го поколения Atom, но он все еще работает на XP и находится в состоянии «только касание, если мне нужно», так что это не проблема.
Марк Хендерсон
2
И 64-битная XP была таким кошмаром, что никто так и не запустил ее. Нет проблем там.
Майкл Хэмптон
1
Я запускал XPx64. Это было не так уж плохо. Это не было XP. Если бы они назвали его так, как оно есть на самом деле (Server 2003, облегченная версия), это, вероятно, не было бы таким кошмаром.
HopelessN00b
Не забудьте о процессорах Intel Core первого поколения, которые НЕ были способны работать на 64-битной архитектуре: en.wikipedia.org/wiki/List_of_Intel_Core_microprocessors . Я выяснил трудный путь ...
Panagiotis PJ Papadomitsos
7

Совместимость с Древним программным / аппаратным обеспечением.

Если бы все работало под x64, я бы не стал беспокоиться о 32-битном.

bbezaire
источник
Я предполагаю, что это больше вопрос "Что не работает под 64-битным" ...
Марк Хендерсон
2
Драйверы принтера особенно. «Стандартные пути» для программ усложняются, когда у вас есть сочетание «Program Files» и «Program Files (x86)».
Андрей
4

Адреса памяти в 64-битной машине, естественно, занимают 64-битную. Те же адреса занимают 32 бита в 32-битной машине. При некоторых довольно исключительных обстоятельствах такое «увеличение» необходимого количества бит может быть разницей между хорошей производительностью и низкой производительностью на машине с ограниченным объемом памяти.

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

Следует учитывать, что многие более старые 32-разрядные приложения являются более старыми по многим параметрам, чем их разрядность. На стороне ОС Windows 32-битное приложение может запутаться, если оно ищет файлы в «Program Files», которые теперь находятся в «Program Files (x86)». Некоторые элементы реестра также могут нуждаться в ручном внимании. Опять же, это скорее функция слегка неправильно написанных приложений, которым теперь нужна ваша помощь, чтобы «найти» вещи, которые «просто сработали бы», если бы машина оказалась 32-битной.

Эдвин Бак
источник
4

Многие люди не знают, что 64-битные программы и библиотеки занимают больше памяти, чем 32-битные эквиваленты.

Например, при использовании виртуальных машин с небольшим объемом памяти рекомендуется использовать 32-разрядные операционные системы, чтобы максимально увеличить доступность памяти внутри этой виртуальной машины.

Джованни Торальдо
источник
3

Говоря об Ubuntu, мы уже несколько недель запускаем 64-битную 12.04 LTS под LTSP.

Единственная проблема, с которой мы столкнулись для первоначальных бета-тестеров, заключается в том, что используемым терминалам LTSP (Dell GX2xx) требуется 32-разрядное ядро, и поэтому нам необходимо скомпилировать второе ядро ​​LTSP и поддерживать в два раза больше пакетов для двух архитектур. ,

LTSP - КРИТИЧНЫЙ случай, я думаю, что 64-битная версия вполне готова, если только ваше конкретное тестирование не выявит дефект.

Magellan
источник
2

Хотя я лично рекомендую перейти на 64-разрядную версию как можно скорее и просто откусить пулю раньше, чем позже, это не повлияет на вашу команду поддержки ИТ. Если пропускная способность группы поддержки уже увеличена до максимума (то есть уже недоукомплектована), то я бы на самом деле подождал.

Итак, это один из ответов, который касается человеческих ресурсов, а не только программного обеспечения / совместимости.

Развертывание должно быть, конечно, тщательно спланировано (желательно постепенное, а не все сразу). Будут обнаружены проблемы, для решения которых потребуется несколько часов для каждого пользователя. Как только выявлены более распространенные проблемы, практические рекомендации могут помочь в более быстром разрешении как для звонков в службу поддержки, так и для самообслуживания.

В основном, (например), я думаю обо всех проблемах совместимости 32- и 64-битных (не) между ОС, конкретным программным пакетом и соответствующими плагинами.например, наличие как 32-битных, так и 64-битных браузеров (и / или нескольких браузеров) в одной 64-битной ОС, ярлыки «запуск от имени администратора» и «запуск от имени обычного пользователя», с опциями для 32 и 64-битный плагин для этих браузеров (или иногда может быть ограничен только 32-битными плагинами, которые работают только в одной версии браузера) - все, что нарушает приложения и рабочие процессы, построенные поверх этих плагинов. (Под «плагинами» я подразумеваю все, от Java до флэш-памяти, от встроенных программ для чтения PDF-файлов до программного обеспечения для веб-конференций - встроенного или широко доступного, как коммерческого, так и бесплатного.) Вы можете попытаться протестировать все эти проблемы, но это Трудно предсказать, если пользователь по неосторожности установит плагин B перед плагином A, что приводит к другому результату, чем у другого пользователя, который устанавливает плагин A перед плагином B (в основном это '

Майкл
источник
1

Единственная причина сохранить 32-битные версии ... всего, что угодно - это поддерживать "устаревшие" приложения и системы. Если вы можете запустить все на 64-битных ОС, считайте себя счастливчиком и двигайтесь дальше. Вы можете быть похожи на некоторые бедные SA, которые находятся в корпоративной среде для нетехнической фирмы, где план по переходу с пользовательской базы с XP на Windows 7 начинается в третьем квартале 2014 года.

< плачет >

Во всяком случае, я не знаю о Shift+ Del, и я бы, вероятно, просто оставил их игнорированными в каком-то уголке окружающей среды, на случай, если произойдет невероятное, и вам что-то понадобится Windows XP. Определенно прекратите беспокоиться о том, чтобы поддерживать, обновлять, тестировать или проверять что-либо еще на них, но держите их рядом, если они когда-нибудь понадобятся. На днях случилось так, что клиент захотел, чтобы я поддержал какой-нибудь Windows 2000PoS, что я мог, потому что я не сдул все свои Server 2000изображения, когда они Server 2003появились (и я тоже очень хотел).

Сколько бы вы ни молились и надеялись, что время никогда не настанет, всегда приятно иметь такой материал «на всякий случай», а затраты на его содержание настолько ничтожно малы, что я думаю, что глупо этого не делать.

HopelessN00b
источник
1

Имея значительные проблемы из-за проблем с унаследованным программным обеспечением, я могу только сказать, что все , что вы запускаете, может работать на 64-битной ОС. Если это произойдет, то у вас нет причин не переходить, предполагая, что лицензирование не является фактором.

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

Джон Гарденье
источник
-4

Все вышеперечисленные и несколько виртуальных машин не могут запускать x64-битный код, если процессор не поддерживает виртуализацию (например, функция VT-x).

Однако несколько более дешевых 64-битных процессоров, в которых отсутствует VT-x и т. Д., Привлекательны для «самодельных» кластеров.

Из википедии :

Intel не добавила поддержку сегментации в свою реализацию x86-64 (Intel 64), что делает невозможной 64-разрядную программную виртуализацию на процессорах Intel, но поддержка Intel VT-x делает возможной 64-разрядную аппаратную виртуализацию на платформе Intel

Лоренц Ло Зауэр
источник
1
-1 Только если технология виртуализации требует VT-x … Не все так делают. Помимо этого, ваш «Ответ» - это не более, чем комментарий о том, что может не сработать . Это не очень полезно и не является ответом.
Крис С