Значит 32 бита. Что такое разрядность Windows и зачем она нужна

Детские товары 15.10.2019
Детские товары

Комментарии статьи:

Очень полезная статья

Эта статья сильно устарела и, будем честны, полна недостатков. Скоро ей исполнится 6 лет)) Скоро я её перепишу и актуализирую. Имейте терпение. А пока можете почитать описание технологии в википедии.

Очень хорошо! Мне понравилось.

Спасибо! Всё просто и понятно)

Че за ламер написал эту статью? Верхушек по нахватался и возомнил себя гуру!!! "Почему называется х86, а не х32? Этого почти никто не знает" Изначально процессоры компании Intel имели 86 команд. По этому x86 относится только к процессорам Intel и их клонам имеющим в основе 86 команд. К разрядности это число не имеет никакого отношения поскольку и x64 процессоры содержат эти команды. Все остальное тоже отсебятина и вранье. Windows x32 прекрасно работает с оперативкой больше 4г и даже больше 8г и с 16г тоже. Возмите к примеру windows server x32. Ограничение поставили мелкомягкие чтобы расширить рынок.

Статья очень информативная, спасибо.

Спасибо за работу!!! Очень информативная и полезная статья!!!+++

Спасибо большое всё стало понятно! Очень полезная статья!

Понятно что всё не понятно!

А вот если я скачиваю программу, а мне пишут, что та только для 64-битных систем. Что это значит и что делать?

какую устанавливать винду х86 или х64 надо смотреть на железо.процессор и материнская плата и соответственно операционная система.все должно поддерживать только одну архитектуру.или х86 или х64 ибо они между собой НЕ СОВМЕСТИМЫ...

У меня раньше была Windows7 32бит,установил другую win8 когда устанавливал понечайности выбрал 64бит и нормально работает)

Х86 как таковой не существует, есть х32, есть х64, есть i860 - номер первого совместимого процессора. Вообще номиналом (Х) в элетронике обозначаются контакты на разъёмах, соответственно х32 - 32 входных контакта, 64 - 64 контакта. Но мы живём в России полюбопытствуйте в какое понятие превратилось знаменитое ИМХО. Привыкайте!

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

Артем спасибо все конкретно изложено и понятно

Спасибо за статью.

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

На современном рынке компьютеров заметен устойчивый тренд: вместо 32-разрядных ОС набирают популярность 64-разрядные операционные системы. Соответственно, производители оборудования для ПК начинают выпускать «железо», адаптированное под специфику соответствующих программных продуктов. В чем особенности 64-битной ОС? Какая ОС характеризуется более высокой производительностью - 32-разрядная система или 64? Что лучше для современного пользователя?

Чем отличаются 32 и 64 разряда?

Для начала немного фактов. Прежде чем определять, какого типа ОС предпочтительнее - 32-разрядная система или 64, что лучше из них, - исследуем то, чем они, собственно отличаются.

Цифровая информация передается в битах, представляющих собой нули или единицы. С помощью 1 бита можно, таким образом, зашифровать 2 команды. В свою очередь, с помощью 32 бит количество возможных команд увеличивается на несколько десятков степеней. Если речь идет о 64 битах — еще больше. Таким образом, становится очевидным, к примеру, какой Windows — 32 или 64-разрядный, работает быстрее. Компания Microsoft выпускает версии ОС обоих типов. Есть ли между ними принципиальные различия в аспекте интерфейса и иных нюансов работы?

Есть ли различия между 32-разрядными и 64-битными ОС в аспектах пользования?

Условно говоря, какая «семерка» лучше — 32 или 64-разрядная, с точки зрения удобства управления? В принципе, никакой разницы в данном аспекте между указанными версиями Windows нет. Все различия между ними сводятся к поддержке команд. Обработка таковых осуществляется практически незаметно для пользователя. Как мы отметили выше, 64-битные команды предопределяют более высокую скорость передачи цифровых данных. Однако данный параметр — не единственный критерий эффективности компьютерной системы. Важен ряд иных аспектов работы ОС — таких как, например, стабильность, универсальность, ресурсоемкость, уровень поддержки различных аппаратных компонентов.

Изучим то, какая ОС имеет больше преимуществ для современного пользователя — 32-разрядная система или 64. Что лучше с точки зрения запуска популярных игр и программ?

Сравнение 32 и 64-разрядных ОС: стабильность

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

Отметим, что ведущие мировые фирмы-производители «железа» в целом успешно избегают ситуаций, при которых владелец 64-разрядной ОС не может найти требуемое ПО для приобретенного устройства. Но данный тезис справедлив главным образом в отношении новых девайсов. Те, что были куплены еще до массового распространения 64-битных ПК - примерно в начале 2010-х годов, - не всегда могут быть корректно инсталлированы в силу отсутствия актуальных драйверов.

Сравнение 32 и 64-битных ОС: универсальность

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

Ресурсоемкость

Работа любой ОС требует аппаратных ресурсов — прежде всего вычислительных мощностей процессора, а также объема оперативной памяти. Какая система лучше - 32 или 64-разрядная - в аспекте ресурсоемкости? Выше мы отметили, что бит — это единица передачи данных. Если речь идет об информации большого объема, то, соответственно, для работы с ней потребуются дополнительные ресурсы. Поэтому совершенно закономерно, что 32-разрядные ОС намного менее требовательны к ресурсам, чем 64-битные. Если, например, 2 Гб ОЗУ для компьютера с 32-разрядной операционной системой, в принципе, считается нормальным показателем, то для полноценного функционирования 64-битной ОС данный ресурс — минимальный. Желательно, чтобы объем ОЗУ был 4 Гб и более.

Что касается ресурсов процессора, в принципе, если речь идет о 64-разрядных чипах, то в их структуре присутствуют необходимые технологические компоненты для того, чтобы удовлетворить потребность ОС в скорости вычислений. Поэтому нельзя сказать, что 32-разрядные и 64-разрядные версии Windows принципиально различаются с точки зрения потребления ресурсов процессора.

Поддержка аппаратных компонентов

Выше мы отметили, что для корректной работы 64-битной ОС на компьютере должны стоять актуальные драйвера. Но их наличие гарантирует стабильность функционирования ПК прежде всего на программном уровне. Необходимо также, чтобы ОС имела аппаратную совместимость с ключевыми компонентами «железа». Что касается таких девайсов, как, например, графический ускоритель, сетевая карта, принтер — с точки зрения совместимости с таковыми не принципиально, какая ОС стоит на компьютере.

В свою очередь, если речь идет о поддержке модулей ОЗУ — разница между 32-битными и 64-разрядными операционными системами может быть значительна. Дело в том, что 32-битные ОС не поддерживают модули ОЗУ объемом более 4 Гб. В свою очередь, 64-разрядные ОС совместимы с таковыми в полной мере.

Другое дело — предстоит ли на практике пользователю задействовать ресурсы памяти, превышающие 4 Гб. Если ПК используется главным образом для работы с интернетом, офисными приложениями, то необходимости в использования даже половины от указанного объема ОЗУ может и не возникнуть. Другое дело, если ПК используется для игр. Рассмотрим то, какие ОС могут быть в этом случае предпочтительнее.

Какие ОС лучше для игр?

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

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

Какие ОС лучше для приложений?

Какая ОС, в свою очередь, более оптимальны для запуска приложений — 32-разрядная система или 64? Что лучше? В данном случае закономерность примерно та же, что и в случае с играми.

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

«Мегагерцы» в приоритете?

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

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

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

Резюме

Итак, какая система лучше — 32 или 64-разрядная? Объективно передача цифровых данных при задействовании 64-битных команд быстрее, и потому соответствующая ОС будет в общем случае производительнее, чем 32-разрядная. Но успешное ее задействование требует соответствия ПК ряду условий: наличие 64-разрядного процессора (иначе 64-битная ОС попросту не установится на компьютер), поддержка «железом» режима работы в 64-битном режиме, а также наличие необходимых драйверов к нему, совместимость ПО, используемого на компьютере, 64-разрядных команд.

Перед тем, как сравнивать 32-битную и 64-битную редакции Windows следует понять, что представляют из себя эти редакции, и какого их значение. Сначала расскажем о процессорах. Многие, возможно слышали о существовании 32-битных и 64-битных процессоров. Рассмотрим, что же означают эти биты.

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

Процессор может иметь разные типы таких блоков. Одни производят вычисления с целыми числами, другие — операции с вещественными числами или числами с плавающей запятой. Кроме того существуют блоки для т.н. сложных инструкций. В качестве примера рассмотрим блоки выполняющие вычисления с целыми числами или ALU. Во время работы эти блоки где-то должны хранить промежуточные данные. Для этих временных хранилищ были созданы регистры. От обычной памяти и кеш памяти их отличают прежде всего минимальные задержки и очень высокая скорость работы. Так вот эти самые регистры и скрывают главное отличие т.н. 32-битных и 64-битных процессоров. Рассмотрим это более подробно.

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

А теперь расскажем о том, для чего на практике нужны эти регистры. Если сказать обобщенно, то процессор на 64-бит в нормальном 64-битном режиме сможет работать с 64-битными числами не используя какие-либо ухищрения, как например, разбивку одной сложной операции на две. Кроме того таким образом могут быть объединены 2 простые операции над 32-битными числами в 1 сложную. Тем не менее не каждую операцию можно объединить с другой, но и это не мало.

Важно: производительность можно увеличить лишь работая с 64-битным наборам инструкций х86-64. Также следует сказать о том, что помимо блока вычислений с целыми числами ALU, процессор также имеет блок вычислений чисел с плавающей точкой или FPU. В нем содержатся более объемные 80-битные регистры и используются инструкции х87. Помимо этого процессор имеет другие блоки и регистры. Например, SSE-регистры. Их длина составляет 128 бит.

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

Для того, чтобы процессор мог нормально работать в 64-битном режиме, потребуется 64-битная ОС и соответствующие драйвера. Если установлена 32-битная ОС, то процессор будет работать в режиме совместимости и вести себя как 32-битный процессор.

Важно: некоторые читатели могут вполне справедливо спросить о том, как 32-битные программы смогут работать в 64-битной ОС. Эту проблему удалось решить вполне логично: система имеет 2 набора системных библиотек для 64-битных и 32-битных приложений.

Но у разрядности регистров есть и более актуальная проблема. Дело в том, что ограничено адресное пространство для памяти. А попросту говоря, процессор способен адресовать лишь 4 Гб адресного пространства. Так ведь ноутбук и имеет 4Гб оперативной памяти, и системе должно быть видно все эти 4Гб. Но помимо оперативной памяти, есть и память видеокарты, буферы разных устройств и BIOS может для этого же видеоядра выделить еще какую-то память. В результате память, которая была доступна пользователю уменьшится 2.5 — 3.5 Гб. И это ограничение не зависит от операционной системы. Перейдем к более детальному рассмотрению этой проблемы.

Тут нет ничего сложного. Регистры хранят как данные, так и указатели адресов. В 32-битном процессоре объем этого регистра составляет 32 бита. Вот откуда появилось это ограничение в 4 Гб или 232 байт.

Подводя итог всего изложенного выше, стоит сказать, что любая 32-битная ОС не может работать используя все 4 Гб ОЗУ по той причине, что большинству системных устройств для работы требуется часть адресного пространства, а оно ограничено 4Гб. Поэтому системе приходится отбирать его у оперативной памяти. Неиспользованная оперативная память может быть использована в качестве временного диска, для этого потребуется утилита RAM Disk.

Важно: для 32-битных ОС создан механизм, позволяющий использовать адресное пространство более 4Гб. Это т.н. PAE (Physical Address Extension), в этом случае ОС может адресовать до 64 Гб памяти. Эту технологию с самого начала разрабатывали для серверных систем. Для того, чтобы она могла нормально работать требуются соответствующие исправленные драйвера. Так как таких рабочих драйверов почти нет, то эта технология даже на серверных ОС по умолчанию отключена. В обычных редакциях ОС Windows она также была отключена по умолчанию. И по той же причине. Сегодня есть специалисты, которые научились ее включать, система может видеть всю оперативную память, которая доступна ей, но происходят ошибки в самых разных местах. А их диагностика не так проста. Поэтому если вы хотите использовать более 3 — 4 Гб ОЗУ, то вам нужно установить 64-битную ОС.

Как можно видеть, в 64-битном режиме работы имеются следующие преимущества и недостатки:

  • 64-битная ОС работает со всем объемом ОЗУ;
  • Некоторые из операций на 64-битном процессоре могут быть выполнены намного быстрее;
  • Для 64-битных указателей требуется больше памяти, что делает объем занимаемой приложениями ОЗУ больше.

Как видите, не все так однозначно. Рассмотрим теперь как же это проявляется на практике.

Сравнение производительности 32-bit и 64-bit версий Windows

Сначала расскажем о том какая методика тестирования использовалась.

Измерения были проведены на ноутбуке Asus N61Vn имеющим четырехьядерный процессор Intel Core 2 Quad Q9000, использовалась видеокарта nVidia GeForce GT 240M с 1 Гб выделенной памяти. Важно заметить, что ноутбук имел 4 Гб ОЗУ DDR3-1066. При сравнении были использованы 32- и 64-битные версии Windows Vista SP2 с установленными последними обновлениями. Драйвера имели одинаковые версии, что позволило нивелировать разницу в производительности между различными версиями. По указанным выше причинам 32-битная версия Windows имела приблизительно 3Гб доступной оперативной памяти, а 64-битная редакция — примерно 4 Гб.

Важно также заметить то, что этот тест был проведен на Windows XP и Windows 7 на ноутбуке Acer Timeline 3810T с одноядерным процессором Intel Core 2 Duo SU3500 и 4Гб оперативной памяти, у которого были более ограниченные возможности. Результаты и в этих случаях не изменились и были приблизительно такие же.

Сравнение производительности для удобства мы разделили на 2 части:

  • 1. Сначала мы исследовали производительность обычных 32-битных программ на 32-битной и 64-битной версиях систем;
  • 2. Затем мы измеряли скорости работы 32-битной и 64-битной версий программ на соответствующих редакциях Windows.

Тестирование производительности прикладных 32-битных программ

Цель этого тестирования — определить увеличение производительности при переходе с 32-битной на 64-битную версию системы Windows. Данное исследование является актуальным, так как сегодня у многих игр и программ отсутствуют специальные оптимизированные 64-битные версии. Важно отметить и то, что 32-битная система может работать с 3 Гб памяти, а 64-битная версия — с 4 Гб.

Сравнить производительность помогли следующие приложения:

  • 3DMark03 3.6;
  • 3DMark05 1.3;
  • 3DMark06 1.1;
  • PCMark05 1.2.

Эти приложения были выбраны, так как они достаточно точно отражают реальную производительность большей части программ и игр. Если бы в данном исследовании были использованы различные прикладные программы, то методика исследования стала бы намного сложней. А процент погрешности измерений был бы увеличен из-за худшего повторения того или иного теста и ограничения точности в средствах измерения.

Приложения были настроены по умолчанию. Разрешение экрана 1024 х768:

Приложения были настроены по умолчанию. Разрешение экрана 1280 х720:

4. Результаты сравнения производительности в PCMark05

В этом тесте были проведены отдельные дополнительные тесты. Ниже представлены результаты каждого.

Виден результат полученный благодаря дополнительному гигабайту ОЗУ у 64-битной системы.

Итоги сравнения производительности обычных приложений

Результаты полученные после проведения данного исследования оказались весьма ожидаемыми. Из-за того, что был использован режим совместимости у 64-битной ОС при работе с обычными 32-битным приложениями производительность оказалась меньше.

В результате этого сравнения производительности также было выявлено, что реальную пользу 4 гигабайта ОЗУ в этом наборе приложений не приносят. Здесь необходимо подчеркнуть, что в действительности для тяжелых приложений, к которым относятся графические редакторы, системы автоматизированного проектирования (CAD) и другие, объем ОЗУ очень важен. В них дополнительные гигабайты ОЗУ действительно полезны.

Сравнение производительности 32- и 64-битных программ

Цель данного исследования — измерить увеличение производительности во время использования оптимизированных 64-битных приложений на 64-битной ОС.

Для сравнения производительности были также использованы программы:

  • Архиватор 7-Zip версии 4.65;
  • Тестовый пакет PCMark Vantage.

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

А теперь посмотрим на результаты:

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

2. Тестирование при помощи тестового пакета PCMark Vantage

Существует как 32-битная, так и 64-битная версии тестового пакета PCMark Vantage. В этом тестовом пакете имеются разные тесты. Рассмотрим каждый из них.

Как и 7-Zip, в целом 64-битный тестовый пакет PCMark Vantage показал большую производительность чем 32-битный на 32-битной ОС. Здесь важным моментом оказались оптимизации под 64-битные процессоры, и больше объема доступной памяти: 4 Гб у 64-битной системы и 3 у ее 32-битной версии.

Итог сравнения производительности 32-битной версии Windows с 64-битной

Пришло время подвести итог данного теста:

  • Наибольшее увеличение производительности в 64-битных версиях Windows XP, Vista, 7 наблюдалось в случае, когда были использованы оптимизированные 64-битные версии приложений и игр. Во время работы с обычными приложениями, без оптимизации под 64-битную версию производительность не увеличивается;
  • Многие программы и игры не смогли показать заметного роста производительности когда был увеличен объем доступной ОЗУ больше 3 Гб. Исключением можно назвать сложные программы, которые позволяют работать с видео, изображениями, системы проектирования и прочие. В дальнейшем этих приложений будет больше. Для таких программ использовать 64-битную систему будет весьма обоснованно.
  • Некоторые из приложений на 64-битной ОС показали нестабильную работу по разным причинам. Но этих приложений не так много.

В конце хочется отметить то, что вы сами выбираете версию Windows для своих нужд. И если это исследование смогло вам помочь, то мы будем только рады.

Появление 64-разрядных Windows вызвало немало вопросов. Поддержка 32-битных приложений, драйверов и всего того, что рассчитано на архитектуру x86. Установка и особенности использования программ. Вводимые ограничения для 32-разрядных приложений. Поддержка старых режимов и многое другое. Все это никак не могло остаться в стороне. Ведь, пласт 32-разрядного наследия слишком велик, и в 64-битной среде его мало чем можно заменить, даже сейчас.

В этой статье приводится обзор подсистемы Windows на Windows 64 (WOW64) и ее методов, которые позволяют Windows поддерживать 32-битные приложения на 64-битной системе.

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

Устройство поддержки 32-битных приложений в 64-разрядной Windows

Windows 32 на Windows 64 (WOW64)

WOW64 эмулирует 32-битную Windows

В Windows 64, 32-битные приложения выполняются в эмулированной 32-разрядной операционной системе, которая называется Windows 32 на Windows 64, или WOW64 для краткости. Основной задачей WOW64 является перехват и обработка всех системных вызовов от 32-разрядных приложений.

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

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

Тот факт, что WOW64, как и 32-битное приложение, выполняется в режиме пользователя, объясняет причину отсутствия поддержки 32-битных драйверов. Если говорить другими словами, то, для корректного запуска, драйверам требуется режим ядра, который не может обеспечить WOW64. Поэтому, если у вас 64-разрядная Windows, то все драйвера должны быть 64-битными.

Эмулятор WOW64 состоит из следующих 64-разрядных библиотек:

Примечание : Это единственные 64-разрядные библиотеки, которые загружаются в 32-разрядный процесс.

  • Wow64.dll - ядро инфраструктуры системы эмуляции. Линкует вызовы в точки входа Ntoskrnl.exe
  • Wow64Win.dll - линкует вызовы в точки входа Win32k.sys
  • Wow64Cpu.dll - переключает процессор между 32-битным и 64-битным режимом
  • Ntdll.dll - 64-битная версия Wow64.

Wow64.dll загружает 32-битную версию (x86) Ntdll.dll и все необходимые 32-битные библиотеки, которые в основном остались без изменений. Однако, некоторые их этих 32-разрядных библиотек все же были изменены, чтобы корректно исполняться в WOW64. Как правило, такие изменения были сделаны из-за того, что они используют оперативную память вместе 64-разрядными компонентами системы

Управление файлами и настройками реестра в WOW64

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

Перенаправление файлов

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

Файлы 32-разрядных приложений, по умолчанию, устанавливаются в:

  • C:\Program Files(x86)

32-разрядные системные файлы устанавливаются в:

  • C:\WINDOWS\SysWOW64

Для 64-разрядных приложений, файлы устанавливаются в:

  • C:\Program Files
  • C:\WINDOWS\SYSTEM32

Механизм перенаправления WOW64 гарантирует, что запросы от 32-разрядных приложений к каталогам "C:\Program Files" и "C:\WINDOWS\SYSTEM32" будут перенаправлены на соответствующие каталоги для 32-битных версий.

Однако, существует одна проблема с перенаправлением файлов. Пользователи и разработчики должны быть в курсе этой особенности.

Многие 64-разрядные приложения все еще используют 32-битный режим и процедуры. И не учитывают это при создании инсталлятора . Для того, чтобы приложение было установлено правильно. т.е. в "C:\Program Files", программа установки должна сделать системный вызов к операционной системе, чтоб система приостановила механизм перенаправления файлов Wow64. А после установки сделать другой системный вызов, чтобы снова включить перенаправление. Если производить установку без остановки перенаправления, то программа будет установлена в "C:\Program Files (x86)". Классическим примером данной ошибки является 64-разрядная версия FireFox 3.5 под кодовым названием "Shiretoko", которая устанавливается в "C:\Program Files(x86)\Shiretoko". Конечно, Firefox по-прежнему будет нормально функционировать. Единственное, что вы не сможете сделать, так это изменить иконку приложения .

Примечание : Возможно, сейчас эту ошибку в Shiretoko уже исправили. Тем не менее, в ранних версиях было именно так.

Перенаправление реестра

Ключи реестра, специфические для 32-разрядных приложений, будут перенаправлены из ветки:

  • HKEY_LOCAL_MACHINE\Software
  • HKEY_LOCAL_MACHINE\Software\WOW6432Node

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

  • HKEY_CURRENT_USER\Software\WOW6432Node

Такой подход позволяет 32- и 64-битным приложениям нормально сосуществовать, без проблем с перезаписью настроек друг друга.

Дублирование реестра

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

  1. Установите 32-битное приложение, которое ассоциирует себя с расширением XYZ
  2. Установите 64-разрядную версию приложения, которая связывает себя с расширением файла XYZ
  3. Установите другое 32-битное приложение, которое ассоциирует расширение XYZ с собой

В результате этих действий, по двойному щелчку на файле с расширение XYZ в проводнике Windows должно открыться приложение, которое было установлено на 3-ем шаге. Ведь, именно оно последним ассоциировало себя с расширением.

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

Существует ряд ограничений подсистемы WOW64

Некоторые, но не все, 64-битные функции доступны 32-разрядным приложениям

Wow64 позволяет 32-разрядным приложениям использовать некоторые функции и возможности 64-битных систем. Например, при правильной настройке, такие приложения смогут использовать до 4Гб оперативной памяти. Доступ к другим функциям ограничен из-за особенности устройства 64-битных систем. Например, 64-битная ОС Windows поддерживает 64-битные логические операции. Тем не менее, 32-битные приложения не будут иметь доступ к ним, они смогут использовать только 32-битные логические операции.

Примечание : Основной причиной ограничений служит разница в представлении данных 32- и 64-битных приложений. 32-разрядное приложение попросту не рассчитано на 64-разрядные типы данных.

Нельзя смешивать между собой код (Code Injection) 32-битных и 64-битных приложений

В 64-битной ОС Windows нельзя запускать 32-битный код в 64-разрядном процессе, как и нельзя запускать 64-битный код в 32-разрядном процессе. Приложения, использующие инъекции кода (Code Injection) для добавления функциональности в существующие приложения, как правило, будут выдавать ошибки.

Этот факт объясняет, почему большинство 32-битных расширений оболочки Windows не запускаются под 64-разрядной Windows. Большинство таких расширений используют инъекцию кода (Code Injection) для встраивания в проводник Windows

WOW64 не поддерживает 16-разрядные инсталляторы

WOW64 обеспечивает поддержку 16-битных инсталляторов Microsoft, путем замены инсталлятора на совместимую 32-битную версию. Тем не менее, эта поддержка не распространяется на сторонние продукты. Так что, если вам нужно использовать старую программу, то, скорее всего, придется искать эмулятор или портативную версию.


Дополнительные возможности для запуска 32-битных приложений в Windows 64

Windows Virtual PC

Windows Virtual PC это бесплатное программное обеспечение, которое позволяет запускать несколько операционных систем на одном компьютере. Virtual PC обеспечивает специальную среду исполнения, которая поддерживает устаревшее оборудование и программное обеспечение, которое не будет определяться и запускаться в Windows 7. Все запущенные операционные системы под Virtual PC будут выполняться в виртуальной машине. Это означает, что запущенные операционные системы не будут знать о том, что они запущены в другой системе.

Системные требования и набор функциональности существенно различается между версиями Virtual PC и версиями Windows. Так что, прежде чем пытаться использовать Virtual PC, необходимо проверить, что программа поддерживает как вашу операционную систему, так и те ОС, которые будут на ней запущены. Например, одна из последних версий уже не поддерживает версии Windows ниже Windows XP SP3.

Режим Windows XP (XPM)

Режим Windows XP это конкретная и урезанная реализация Windows Virtual PC, которая поставляется с предустановленной копией Windows XP Professional SP3. Этот режим доступен только в версиях Enterprise, Ultimate и Professional Windows 7 64-бит.

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

Примечание : К некоторым более дательным настройкам режима совместимости все же можно обратиться. Более подробную информацию вы можете найти в обзоре Как запустить старые программы на Windows 7 / Vista? (см. Microsoft Application Compatibility Toolkit).

Мультизагрузка ОС Windows

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

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

Подытоживая сказанное о поддержке 32-бит в 64-разрядной Windows

Большинство 32-разрядных приложений будут вполне счастливо себя чувствовать в Windows 64. Основными исключениями будут:

  1. 32-разрядные драйверы устройств
  2. Приложения, которые не могут функционировать без 32-битных драйверов устройств, которые они используют. Яркими примерами являются антивирусы и другие программы для обеспечения безопасности.
  3. Расширения, которые используют инъекцию кода (Code injection). Например, оболочки для проводника Windows

Некоторые приложения смогут запускаться с ограничениями. Это так же касается деинсталляторов , программ для очистки реестра и программ для тюнинга , так как они имеют доступ только к той части реестра, которую им показывает Wow64.

Если вы никак не можете запустить 32-битное приложение, то рассмотрите вариант с виртуализацией или мультизагрузкой нескольких операционных систем.

Какие приложения быстрее 32-битные или 64-битные?

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

Если сравнивать 32- и 64-разрядные приложения в своих родных средах, то 32-битное приложение, как правило, использует меньше памяти, чем эквивалентное 64-разрядное приложение. Это происходит потому, что 64-битные версии используют 64-битные структуры данных, которые занимают вдвое больше места. Дополнительный размер напрямую влияет на время запуска и закрытия программы, а так же на другие виды операций, связанных с доступом к дисковым накопителям. Обычно, это означает, что 32-разрядные приложения будут выполняться быстрее. Тем не менее, использование 64-битными программами особенностей 64-разрядного процессора потенциально позволяет приложению выполняться на 25% быстрее, по сравнению с 32-битными программами.

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

Рейтинг 5.00 (6 Голосов)


Современный рынок компьютеров предлагает следующее решение: вместо 32-разрядных операционных систем выбрать 64-разрядные ОС, которые набирают обороты популярности. Таким образом, производители оборудования для персональных компьютеров выпускают «железо», которое адаптировано под специфику определенных программных продуктов.


В чем состоят особенности 64-битной операционной системы? Какая ОС имеет более высокую производительность − 32-разрядная или 64-разрядная? Какой выбор оптимальный для современного пользователя?

В чем различие между 32 и 64 разрядами?

Сначала необходимо представить некоторые факты. Перед тем как определять, какого типа операционную систему предпочтительнее выбрать, стоит исследовать, в чем состоит их различие. Цифровая информация предоставляет данные в битах. Они состоят из нулей и единиц. Один бит позволяет зашифровать две команды.

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

Существует ли разница между 32-разрядными и 64-битными операционными системами в аспекте использования?

Условно можно рассмотреть, какая «семерка» лучше - 32 или 64-разрядная, в плане удобства управления? Стоит отметить, что принципиальной разницы в представленном аспекте между данными версиями операционной системы Windows не существует. Вся разница связана с поддержкой команд. Обработка таковых выполняется почти незаметно для владельца. Выше уже было отмечено, что 64-битные команды обеспечивают более высокую скорость передачи цифровых данных. Правда, такой параметр выступает не единственным критерием оценки эффективности компьютерной системы.

Большую роль играет множество аспектов работы операционных систем. К таким параметрам относится стабильность, универсальность, уровень поддержки всевозможных аппаратных компонентов, ресурсоемкость и прочие. Таким образом, какая операционная система обладает большими преимуществами для современного пользователя: 32-разрядная или 64-разрядная? Что является оптимальным решением с точки зрения запуска известных игр и программ?

Сравнение 32 и 64-разрядных ОС

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

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

Сравнение 32 и 64-битных ОС

Операционная система, которая принадлежит к категории 32 или 64-битных продуктов, нуждается в установке на персональный компьютер, который способен обеспечить полноценное функционирование соответствующей ОС. Другими словами, корректно инсталлировать 32-разрядную ОС можно исключительно на персональном компьютере, где существует 32-битный процессор. Аналогичная закономерность присуща и 64-битным операционным системам. В таком случае, между ОС в отсутствует взаимная совместимость, а их универсальность становится ограниченной.

Ресурсоемкость

Функционирование каждой операционной системы нуждается в затратах аппаратных ресурсов. В первую очередь это относится к вычислительным мощностям процессора и объема оперативной памяти. Таким образом, возникает вполне резонный вопрос, который звучит следующим образом: «Какая система лучше: 32 или 64-разрядная в плане ресурсоемкости?».

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

Лучше всего, если объем ОЗУ будет 4 Гб и больше. Если рассмотреть ресурсы процессора, в связи с 64-разрядными чипами в их структуре существуют нужные технологические компоненты, предназначенные для того, чтобы удовлетворить требования операционной системы в скорости вычислений. Таким образом, трудно сказать, что 32-разрядные и 64-разрядные версии ОС Windows слишком различаются в плане использования ресурсов процессора.

Поддержка аппаратных компонентов

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

Если рассмотреть такие компоненты, как графический ускоритель, сетевая карта, принтер, в плане совместимости они не требовательны к тому, какая операционная система установлена на компьютере. Прежде всего, когда речь заходит о поддержке системами, различие может быть значительно. Все дело в том, что 32-битные операционные системы не способны поддерживать модули ОЗУ, объем которых превышает 4 Гб. Также стоит отметить, что 64-разрядные ОС совместимы с ними в полной мере.

И совсем другое дело, будет ли пользователь на практике использовать ресурсы памяти, которые выше 4 Гб. Когда персональный компьютер задействован в основном для работы с интернетом, офисными приложениями, потребности в использовании даже половины от данного объема ОЗУ может никогда не возникнуть. Если же персональный компьютер необходим исключительно для игр. Таким образом, следует рассмотреть более подробно, какие операционные системы в данном случае предпочтительнее.

Какие ОС лучше подходят для игр?

Какую лучше выбрать операционную систему для игры − 32 или 64-битную? Если рассмотреть условие полной аппаратной и программной совместимости инсталлированной ОС с «железом», самой высокой производительностью будет обладать 64-разрядная операционная система. Однако это правило имеет и исключение. Оно связано с тем, что в алгоритмах программного кода в самой игре необходимо предусмотреть поддержку 64-разрядных команд. Когда такой критерий не соблюдается, пользователь, как правило, не замечает существенной разницы в комфорте игрового процесса.

Какие ОС является оптимальной для приложений?

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

«Мегагерцы» в приоритете?

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

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

Резюме

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



Рекомендуем почитать

Наверх