Головна - Новачкам
Як встановити 32-розрядну програму на 64. Windows XP x64: обіцянки і реальність

В даний час переважна більшість сучасних комп'ютерів і мобільних ПК, що продаються, мають встановлену Windows 7 64 bit. Це пов'язано з тим, що вони комплектуються достатньою кількістю оперативної пам'яті – від 4 Гб і від. Тим же користувачам, які тільки збираються перейти на Windows 7 (начебто це не звучало напередодні виходу Windows 8) і придбати коробкову версію (BOX) визначитися з вибором розрядності допоможе ця стаття, яка складена у вигляді питань і відповідей.

Переваги 64-бітової ОС.

Розрядність може бути 32 або 64 біта, але на екрані обидві версії Windows 7 виглядають однаково. Можливості систем також ідентичні: у комплекті ті ж додаткові програми, наприклад, Windows Media Player або Paint. Однак «під капотом» все ж таки є суттєві відмінності.

    Збільшена робоча швидкість. З 64-бітною версією Windows комп'ютер може обробляти за одиницю часу вдвічі більше даних, ніж із 32-бітною. При цьому він використовує розширені можливості 64-розрядних процесорів, які за один такт здатні обробляти 64 біти даних (8 байт). Тому програми, оптимізовані для 64-бітних ОС, вміють працювати швидше, ніж їх аналоги для процесорів, що обробляють лише 32 біти (4 байти) за один такт.

    Більше оперативної пам'яті. 32-бітові версії Windows можуть використовувати максимум 4 Гб пам'яті, причому не вся вона доступна програмам. Наприклад, 1 Гб займає сама операційна система, причому до 1 Гб (залежно від ПК) резервується для відеопам'яті. Отже, для самих програм залишається не більше 2 Гб. Якщо вони «ненажерливі», пам'яті може вистачити.

Для 64-бітних версій Windows такого обмеження немає. Максимальна робоча пам'ять у Windows 7 Home Premium зросла до 16 Гб; версії Professional, Ultimate та Enterprise можуть працювати навіть із 192 Гб. Завдяки більшій доступній пам'яті Windows рідше доводиться вивантажувати розділи програм на порівняно повільний жорсткий диск (у файл підкачування), тому комп'ютер працює швидше.

Недоліки 64-бітної ОС.

    Потрібні нові драйвери. Усі пристрої вимагають для 64-бітної Windows 7 відповідних драйверів (аналоги для 32-бітової ОС не працюватимуть). Для сучасних пристроїв це зазвичай не проблема, але для застарілих моделей багато виробників не розробляють 64-бітові версії драйверів. Тому перш ніж переходити на 64-бітну Windows, зайдіть на веб-сторінку виробника пристрою та переконайтеся, що для вашого обладнання доступна 64-бітна версія драйвера.

    Потрібно більше пам'яті. Багато структур даних у 64-бітових програмах мають розмір 8 байт (64 біт). Тому програми займають на 10–20% більше місця на жорстких дисках, ніж відповідні 32-бітові версії із 4-байтними структурами. Потреба оперативної пам'яті для 64-бітного ПЗ також підвищується – приблизно 15 відсотків.

Чи підтримує мій комп'ютер 64-розрядну версію Windows 7?

Більшість комп'ютерів, випущених за останні три роки (тобто після релізу Windows Vista) сумісні з 64-бітною версією Windows 7. Виняток - системи з дешевими процесорами, що не підтримують 64-розрядні розширення AMD і Intel. Серед них - лінійка процесорів Intel Atom з низьким енергоспоживанням і ранні моделі Intel Core, зокрема, Core Duo (не плутати з Core 2 Duo). Якщо ви не знаєте, який процесор встановлений на вашому комп'ютері і чи підтримує він 64-розрядні операційні системи, скористайтесь безкоштовною утилітою Intel Processor Identification Utility.

Периферійні пристрої

Як і у випадку з комп'ютерами більшість периферійних пристроїв, випущених з моменту релізу Windows Vista, сумісна з 64-розрядною версією Windows 7. А ось зі застарілою технікою це лотерея. Деякі виробники - особливо постачальники мережевих карт та дискових контролерів - вже давно забезпечують сумісність своїх продуктів з 64-розрядними системами, оскільки їм доводилося працювати ще з 64-розрядними версіями Windows Server 2002-2003 років випуску. Старі пристрої, які не мають безпосереднього відношення до дата-центрів (наприклад, нестандартні пристрої введення, мультимедійну апаратуру, деякі принтери), буде складніше інтегрувати, оскільки вони розроблялися в той час, коли 64-розрядні операційні системи для настільних комп'ютерів були рідкістю. Найкраще заздалегідь перевірити, чи виробник випустив драйвер для 64-бітної версії Windows 7, а якщо ні, існують інші способи вирішення проблеми.

Чи можна використовувати 32-бітові драйвери у 64-розрядній версії Windows 7?

Ні. Драйвер пристрою - це привілейований код, який виконується в тому ж адресному просторі, що ядро ​​Windows, тому він повинен відповідати архітектурі ядра. Деякі виробники об'єднують 32- та 64-бітні драйвери в єдиному інсталяторі, тому недосвідченому користувачу може здатися, що 32-розрядний драйвер працює під 64-бітною версією Windows. Однак, незважаючи на те, що 32-розрядні драйвери не підтримуються безпосередньо операційною системою, їх все одно можна встановити в режимі Windows XP і використовувати USB-принтери та інші застарілі пристрої з інтерфейсом USB у віртуальній машині Windows XP.

Чи доступний режим Windows XP у 64-розрядній версії Windows 7?

Так, режим Windows XP повністю підтримується 64-бітною версією Windows 7. Більш того, застосування монітора віртуальних машин (Virtual Machine Monitor, VMM) - зокрема, такого продукту, як Windows Virtual PC 7, який лежить в основі Windows XP Mode - це один із небагатьох способів використання 32-розрядних драйверів пристроїв у 64-бітній версії Windows. Єдина складність полягає в тому, що пристрій повинен мати інтерфейс USB. Застарілі прилади, які вимагають нестандартних карт розширення або ключів, швидше за все, не працюватимуть у режимі Windows XP.

Що таке Режим Windows XP та як його запустити?

Найпростіше сказати, що Windows XP - це віртуальна машина під керуванням Windows XP SP3, запущена в Windows Virtual PC 7. Користувачі Windows 7 Professional (Професійна), Ultimate (Максимальна) і Enterprise (Корпоративна) можуть завантажити її безкоштовно.

Якщо висловитися точніше, Режим Windows XP - це нативна 64-бітна програма (вірніше, набір 64-розрядних служб і драйверів), яка створює окремий нативний 64-бітний процес, що емулює середовище 32-розрядної операційної системи.

Важливо, що Windows XP дозволяє створювати лише 32-розрядне віртуальне середовище, незважаючи на те, що Windows Virtual PC само по собі - 64-бітна програма, запущена в 64-розрядній версії Windows 7. У середовищі Windows Virtual PC (яка, по суті, є універсальним інструментом віртуалізації з додатковими функціями для підтримки режиму Windows XP) можна встановлювати 32-розрядні версії Windows XP, Vista або навіть Windows 7, але неможливо використовувати 64-бітові версії жодної з цих систем.

Чи можна запускати 32-бітові програми у 64-розрядній версії Windows 7?

Так, практично будь-який 32-бітний додаток, що підтримується в Windows XP, можна без додаткових модифікацій запустити в 64-розрядній версії Windows 7. Для цього використовується технологія під неофіційною назвою Win32 on Win64 (коротко WOW), яка перетворює звернення до 32- бітному API від виконуваних файлів застарілих програм до звернення до 64-бітного API для обробки нативними підсистемами 64-розрядної операційної системи. В результаті 32-бітові програми без проблем працюють у 64-розрядній версії Windows 7, а завдяки оптимізації нинішнього покоління процесорів Intel та AMD - ще й на повній або майже повній швидкості. Рідкісний виняток із цього правила становлять додатки, що використовують один або кілька 32-розрядних пропрієтарних драйверів застарілих пристроїв, що не мають 64-бітових еквівалентів.

Варто зазначити, що WOW – не нова концепція. Схожа технологія застосовувалася в перших версіях Windows NT для підтримки застарілих 16-бітних додатків Windows 3.xx.

Чому під час встановлення 32-розрядних програм у 64-розрядній версії Windows 7 не з'являються нові записи в реєстрі?

У 64-бітних версіях Windows Vista та Windows 7 для запуску 32-розрядних програм використовується технологія WOW (див. вище). Вона не тільки перетворює звернення до API, але й ізолює зміни, що вносяться 32-бітовими програмами, у спеціальному підрозділі реєстру на відповідному рівні.

Наприклад, якщо 32-бітовий додаток створює підрозділ у папці

«HKEY_LOCAL_MACHINESoftware»

цей підрозділ автоматично переноситься в папку Wow6432Node в основному розділі Software. У цій папці можна знайти всі підрозділи та параметри програми, автоматично перенаправлені сюди засобами WOW.

Чи забезпечує 64-розрядна версія Windows 7 виграш у продуктивності?

Все залежить від того, як використовується система. Якщо ви працюєте з великими файлами або програмами, що споживають багато оперативної пам'яті, 64-розрядна версія Windows зазвичай забезпечує невеликий приріст продуктивності в порівнянні з 32-розрядною версією на ідентичному обладнанні, причому навіть при використанні 32-бітових додатків. Це пов'язано з тим, що операційна система та драйвери пристроїв отримують доступ до 64-бітових розширених реєстрів процесора Intel або AMD, що працює в розширеному 64-розрядному режимі. Крім того, 64-бітна версія Windows 7 підтримує встановлення більшого обсягу оперативної пам'яті, ніж 32-бітна: 192 Гбайт у всіх варіантах, крім Home, в порівнянні з 4 Гбайт у всіх виданнях 32-бітної Windows 7. Це дозволяє значно розширити можливості комп'ютера. .

Чому 64-розрядна версія Windows використовує більше оперативної пам'яті, ніж 32-розрядна?

Будь-яка 64-розрядна операційна система споживає більше пам'яті, ніж її 32-розрядний аналог. Це з природою 64-битного коду: він використовує більші внутрішні структури, які, природно, займають більше місця й у пам'яті, і жорсткому диску. Тому не дивно, що ISO-образи 64-бітних версій Windows Vista та Windows 7 на 50-70% більше, ніж образи 32-розрядних версій, а споживання фізичної пам'яті після завантаження у них на 20-30% більше.

Чи має 64-розрядна версія Windows перевагу перед 32-розрядною з точки зору безпеки?

Так. Більшість ініціатив Microsoft, що широко рекламуються, з «зміцнення» ядра, реалізованих у Windows Vista, - наприклад, PatchGuard або апаратна заборона на виконання коду (Data Execution Prevention) - актуальна тільки для 64-розрядної версії системи. Крім того, 64-бітові версії Windows Vista та Windows 7 використовують лише драйвери з цифровими підписами, що ускладнює для зловмисників маскування руткітів та експлойтів під драйвери рівня ядра.

Чи можна оновити 32-розрядну версію Windows до 64-розрядної Windows 7?

Ні. Наразі процедура оновлення Microsoft не підтримує зміну процесорної архітектури. Щоб оновитися з 32-розрядної версії Windows, необхідно видалити її, встановити 64-бітну Windows 7 на чистий диск, а потім перенести в нову операційну систему всі свої дані та програми.

Напевно, багато користувачів чули про те, що існує два види розрядності операційної системи: х32 та х64. Рано чи пізно виникає питання про вибір того чи іншого варіанта. Для того щоб знати, версію якої бітності варто встановити на свій комп'ютер, потрібно мати деякі уявлення про роботу цих типів ОС, їх переваги, недоліки, вимоги до «заліза» і «софту» та деяких «підводних каменях», що виникають при переході від 32 -розрядної до 64-розрядної операційної системи

Ця стаття в популярній формі дає відповіді на деякі питання на цю тему і допоможе вибрати правильне рішення на користь однієї з версій розрядності Windows, щоб зробити роботу комп'ютерного пристрою найбільш ефективною.

Що таке бітність операційної системи та як її визначити

Битність або розрядність Windows означає версію операційної системи (порівняння всіх версій Віндовс), що підходить для роботи з 32 або 64-розрядною архітектурою встановленого на комп'ютері процесора.

Центральний процесор та його розрядність

Центральний процесор – це головний елемент апаратної частини будь-якого комп'ютерного пристрою, що є інтегральною мікросхемою. Його функцією є виконання певних машинних вказівок – програмних кодів. Однією з головних характеристик процесора є його архітектура – ​​внутрішня конструкція процесів та сумісність із певним набором команд.

Розрядність процесора – це довжина машинного слова всередині мікропроцесора і його здатність одночасно працювати з деякою кількістю одиниць даних, тобто. біт. Ця кількість біт визначається місткістю регістру процесора, по суті є деяким сховищем даних, до якого для оптимальної продуктивності потрібно мати швидкий доступ. Чим ширша шина, тобто. вища розрядність регістрів, тим швидше працює комп'ютер.

32-розрядна архітектура – ​​історія появи

Передісторія появи поняття 32-розрядної версії заснована на архітектурі х86, яка була вперше реалізована в ранніх моделях процесорів компанії Intel, що встановлюються на перших комп'ютерах IBM PC. Їхні назви закінчувалися на ці дві цифри, наприклад, процесори 8086, 80186, 80286 і т.д. Надалі ця 32-розрядна архітектура була здійснена в процесорах інших виробників та отримала загальну назву Intel Architecture IA-32, тобто. 32-бітна версія процесора.

64-розрядна версія – нове розширення 32-бітної архітектури

У 2002 році компанією AMD було розроблено 64-бітове розширення архітектури х86 у процесорах сімейства К8, яке називалося х86-64 або AMD64 і дозволяло виконувати програми у 64-розрядному режимі. Компанія Intel також запропонувала свою назву 64-розрядної версії розширення – EM64T. У будь-якому випадку дана технологія подвоювала розрядність основних внутрішніх регістрів і збільшувала обсяг адресованої процесором пам'яті. Таким чином, 64-розрядна архітектура має нові набори програмних кодів, що може працювати з великим обсягом оперативної пам'яті, що дає значний приріст продуктивності, а це, безперечно, прогрес.

Як визначити розрядність встановленої на комп'ютері операційної системи

Знання про розрядність операційної системи мають практичне застосування, оскільки дозволяють покращити ефективність роботи комп'ютера.

Щоб дізнатися, ОС якої бітності встановлена ​​на пристрої, потрібно виконати таку послідовність команд:

  • зайти на іконку "Мій комп'ютер";
  • правою кнопкою «миші» вибрати з меню вкладку «Властивості».

У вікні буде відображено основні відомості про комп'ютер, у тому числі і інформація про тип розрядності встановленої операційної системи.

Інший варіант отримання цих даних:

  • через кнопку "Пуск" зайти в "Панель управління";
  • вибрати "Всі елементи Панелі керування";
  • клацнути на вкладці «Система»;
  • отримати необхідні відомості.

Тут буде відображено інформацію про обсяг оперативної пам'яті, яка також є визначальною при виборі розрядності ОС.

Різниця в роботі 32-розрядної та 64-розрядної ОС: переваги та недоліки

Зовні робота 32-розрядної та 64-розрядної операційних систем ніяк не відрізняється, проте внаслідок того, що 64-бітний регістр може зберігати більшу кількість даних, то ОС такої архітектури CPU дозволить додаткам використовувати більший обсяг оперативної пам'яті. Для сучасних операційних систем 64-бітна версія краща у будь-якому випадку. Виняток становить XP (майже, напевно, будуть проблеми з драйверами).

64-бітові обчислення виконуються набагато швидше, і комп'ютерний пристрій під керуванням цієї версії операційної системи працює з високою продуктивністю, що є головною перевагою 64-розрядної ОС перед 32-розрядною.

Крім того, 64-розрядна система має додатковий захист DEP, реалізований на рівні жорсткого диска, а не програмного забезпечення як у звичайних 32-бітних. Це дає додатковий рівень безпеки, але хороше антивірусне програмне забезпечення (яке буває) ніколи не завадить.

Максимально потенціал 64-розрядної ОС буде використаний у майбутньому, при широкій доступності периферійних пристроїв і софту, створених під цю архітектуру. Проте вже сьогодні багато ігор та програм, що вимагають великого обсягу оперативної пам'яті, можуть ефективно функціонувати лише в 64-бітній Windows. Наприклад, деякі наукові програми, що працюють в операціях з плаваючою комою, не дають точних результатів, якщо не отримують достатньо бітів, тому вони реалізовані у вигляді 64-бітних додатків і можуть працювати виключно в 64-розрядній ОС.

Недоліком розширеного типу розрядності операційної системи може бути проблема сумісності драйверів, хоча цей пропуск успішно усувається розробниками. Виняток становлять деякі старі пристрої: принтери, сканери, драйвера, яких створено під 32-розрядну ОС та не перевидавались під 64-розрядну. Така сама ситуація склалася з плагінами частини популярних програм, наприклад, таких як Photoshop або Firefox (невеликий огляд), а також дефрагментатори, антивірусні сканери та інше важливе програмне забезпечення. Їхні нові версії доступні вже в 64-розрядності, а старі (іноді важливі) плагіни можуть працювати лише з попередньої 32-розрядної ОС.

Операційну систему якоїсь бітності варто встановити на свій комп'ютер і чому

У роздрібному продажу сьогодні можна знайти версії операційної системи обох типів розрядності. Вибір того чи іншого виду залежить від апаратної комплектації комп'ютерного пристрою: архітектури процесора та обсягу оперативної пам'яті. Якщо на комп'ютері встановлений процесор типу х86-64, а ОЗУ перевищує 4 Гб, є сенс встановити 64-бітну ОС, що значно підвищить продуктивність роботи: 64-бітне програмне забезпечення під управлінням 64-розрядної ОС працює значно швидше. Це з тим, що 32-битная версія може обробити трохи більше 3,2 Гб оперативної пам'яті, а 64-разрядная теоретично здатна переадресувати обсяг до 4 ТБ. Така система має більше «життєвого простору» і дозволяє керувати великим обсягом даних, легко справляється з програмами, що одночасно працюють, і швидше перемикається між ними.

Якщо встановити на пристрої з 64-розрядним CPU і об'ємною оперативною пам'яттю 32-бітну Windows, ви не зможете використовувати наявну апаратну перевагу, тому що вона зможе адресувати не більше 4 ГБ оперативної пам'яті, і процесор постійно працюватиме в спадковому режимі, тобто. неефективно.

Інсталювати 32-бітну систему навіть при наявній оперативній пам'яті понад 4 Гб варто в тому випадку, якщо процесор має частоту від 1 до 2,4 ГГц: на 64-розрядній ОС він працюватиме повільніше.

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

Однак, з урахуванням того, що в майбутньому все програмне забезпечення, безсумнівно, розроблятиметься під прогресивнішу розширену версію операційної системи, є сенс зробити апгрейд комп'ютера, додавши оперативну пам'ять, щоб використовувати всі переваги 64-бітної ОС.

І ще один важливий момент. Змінити розрядність операційної системи без повної переустановки неможливо (потрібне форматування, вся інформація з диска буде видалена). Але в деяких випадках навіть після такої процедури частину даних з HDD можна відновити. Якщо "залізо" вашого комп'ютера дозволяє використовувати 64-розрядну ОС, і ви зважилися на її встановлення, необхідно заздалегідь подбати про драйвери, зробити копії потрібних файлів, після чого завантажити розширену 64-бітну версію, а потім заново інсталювати програми та відновити файли. Іноді самостійно зробити це складно, і краще звернутися до



Поява 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:WINDOWSSYSTEM32

Механізм перенаправлення 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 Голосів)


Сучасні комп'ютери здебільшого поставляються із встановленою операційною системою Windows 10 64 bit. Навіть бюджетні моделі мають 3 і більше Гбайт оперативної пам'яті, що дозволяє задіяти системі всю потужність 64-бітної розрядності обробки даних.

Докладніше про переваги 64 bit над 32 bit Windows ви можете прочитати у нашій статті « ».

Але, як би не була приваблива 64-розрядна система, часто користувач просто не має у своєму розпорядженні 64-бітної програми, з якою він давно працює і яка його повністю влаштовує, т.к. виробник її просто не випустив. Як правило, такі програми встановлюються в Windows в окрему папку \Program Files (x86) та їх запуск здійснюється у 32-розрядному режимі.

Якщо в процесі запуску програма видає помилку або взагалі не запускається, а у Windows 32 bit вона працювала без проблем, є шанс запустити її у спеціальному режимі, який розробники назвали "Режим сумісності".

Для цього у Windows 7 клацніть правою кнопкою миші на ярлику потрібної програми, а потім виберіть у контекстному меню «Властивості». У вікні, перейдіть на вкладку «Сумісність» і встановіть прапорець «Запустити програму в режимі сумісності з …» і в списку вкажіть варіант системи для запуску.
Натисніть кнопку "OK". Після цього спробуйте запустити програму.

Крім того, в контекстному меню Провідника також є сенс спробувати автоматично вирішити завдання, клацнувши по рядку «Виправлення неполадок сумісності» - Windows 7.

У Windows 10 при налаштуванні запуску в сумісному режимі на вкладці "Сумісність" є окрема кнопка "Запустити засіб усунення проблем із сумісністю". Після цього вам запропонують або використати рекомендовані параметри, або провести діагностику програми.

Якщо і після цього програма не запустилася, то варто підійти до проблеми ґрунтовніше і спробувати варіанти, вказані на офіційному сайті Microsoft.

Більш радикальним методом запуску програми є її встановлення та використання у віртуальній машині із встановленою Windows 7 32 bit. Докладніше, як встановити та налаштувати віртуальну машину, ви можете почитати в нашій статті « ».

Невдовзі після випуску Windows XP Professional x64 Edition компанія Microsoft спробувала залучити споживачів до нової версії, пропонуючи безкоштовну програму заміни Windows. Власники Windows XP Professional можуть перейти на версію x64 абсолютно безкоштовно – лише ліцензія на 32-бітну версію вже буде недійсною.

Але купувати кота в мішку не надто зручно, оскільки 64-бітові драйвери для низки старих пристроїв та периферії так і не вийшли. Після переходу на x64 сканери та мультимедійні пристрої на зразок web-камер можуть просто не заробити, оскільки дрібні виробники і так звані "no-name" компанії часто не поспішають перекладати драйвери під Windows XP x64. Одна з причин – обмежені ресурси. Інша - спонукати споживача купити новий продукт із драйвером x64, якщо він цього бажає.

Вирішивши багато проблем із запуском, Windows XP Professional x64 Edition підтримує 64-бітові процесори. Система дозволяє адресувати більше 4 Гбайт системної пам'яті, а збільшена розрядність даних дозволяє збільшити продуктивність програм, перенесених або написаних для 64-бітної Windows.

Однак перевага пам'яті може легко стати недоліком, якщо її мало. Оскільки кожен елемент даних має довжину 64 біта, 32-бітові елементи для спадкових 32-бітових додатків займатимуть у два рази більше пам'яті порівняно з 32-бітною ОС. З цієї точки зору навряд чи є сенс переходити на Windows XP x64 з невеликим об'ємом пам'яті. Якщо ж ви хочете перейти на x64, ми рекомендуємо встановити не менше гігабайта ОЗУ.

Для нашого проекту ми взяли більшу частину нашого стандартного тестового пакета (тільки 32-бітові програми) і порівняли продуктивність 32-бітної Windows XP з Windows XP x64 Edition. Тестова система Athlon 64 була оснащена двома 512-Мбайт DIMM DDR400. Ми провели тести як на швидкому одноядерному процесорі Athlon 64 FX-57, так і на його двоядерному супернику Athlon 64 X2 4800+.

Визначити, чи готова система для запуску 64-бітної Windows, можна за процесором. Що стосується AMD, то тут потрібний процесор з підтримкою AMD64 - на зразок лінійки Athlon 64 або нових Sempron. У випадку Intel слід шукати чіп з увімкненими розширеннями EM64T (раніше відомими як Yamhill або Clackamas) на кшталт лінійки Pentium 4 600, Pentium D, Pentium Extreme Edition або Celeron D, якщо номер 300 моделі закінчується на 1 або 6.

З точки зору набору можливостей жодних причин переходити на Windows XP Professional x64 Edition немає. Система по відчуттям і роботі така сама, як і 32-бітна Windows. Крім того, x64 Edition сьогодні продається, здебільшого, у вигляді OEM-версії разом з новими комп'ютерами, тому купити її в роздріб досить проблематично.

Найголовнішою проблемою нової ОС є підтримка драйверів для пристроїв та периферії. Тому перед переходом на x64 слід ретельно зважити. Якщо у вас є пристрій, який ви не можете або не хочете замінити, і для якого немає 64-розрядних драйверів, то краще залишитися на 32-розрядній Windows. Особливо це стосується периферії: принтерів, сканерів, мультимедійних пристроїв тощо.

Версія x64 може працювати з пам'яттю до 32 Гбайт і запускати одночасно і 64-бітові, і 32-бітові програми. Windows x64 використовує рівень трансляції під назвою WOW64 (Windows on Windows 64), який перетворює 32-бітові команди, параметри та дані для 64-бітового ядра. Хоча традиційна Windows XP здатна адресувати до 4 Гбайт пам'яті (2 32), додатків доступно лише 2 Гбайт. У версії x64 Edition ситуація інша: для 32-бітових програм доступні всі 4 Гбайт пам'яті. Ще більша перевага досягається при використанні 64-бітних додатків, оскільки обсяг пам'яті, що адресується, тут обмежується тільки обсягом встановленої ОЗУ.

Оскільки за один такт тепер можна обробляти більше даних, то 64-бітові програми під Windows XP можуть дати суттєвий приріст продуктивності. Однак до того, поки більшість програм буде переведена на 64-бітну платформу, пройде ще чимало часу. Якщо ви використовуєте, в основному, 32-бітові програми, слід враховувати згадані проблеми.

Сьогодні AMD та Intel випускають процесори з підтримкою 64-бітових обчислень. Однак роль піонера у цьому переході належить AMD, оскільки лінійка Athlon 64 вийшла майже два роки тому. Intel, навпаки, не бачила жодних переваг для 64-бітових обчислень на масових настільних ПК до початку цього року.

На даний момент усі процесори AMD Athlon 64 та ряд настільних чіпів Intel для Socket 775 підтримують 64-бітові обчислення. Вони включають:

  • Pentium 4 від 630 до 670;
  • Pentium D 820, 830, 840;
  • Pentium Extreme Edition (двоядерний);
  • Celeron D 326, 331, 336, 341, 346, 351, 355.

Якщо тільки Mobile Sempron не підтримує 64-бітові обчислення, то Intel не планує переводити мобільні процесори на 64 біти найближчим часом – просто їхня архітектура ще не готова. Як ми очікуємо, процесор Yonah - як одноядерна лінійка 7x6, так і двоядерні процесори, швидше за все, з лінійки 800 - вийде на ринок на початку першого кварталу 2006 року, після чого має бути версія Merom з підтримкою 64-бітових обчислень.

Режими 64-бітного процесора

AMD Athlon 64 працює з 32-бітною Windows у спадковому режимі, при цьому розширення x86 64 не використовуються. Якщо запустити 64-бітну ОС, процесор AMD64 буде працювати в 64-бітному Long Mode, а чіпи Intel включать режим IA32e. Обидва режими, звичайно ж, однакові, оскільки Intel використовує технологію AMD64 завдяки ліцензійній угоді з AMD.

У режимі Long Mode процесор здатний виконувати 64-бітові "рідні" інструкції, при цьому доступні підрежими сумісності, в яких процесор стає сумісним за двійковим кодом з 16-бітними та 32-бітовими програмами. Хоча сьогодні різниця і не відчутна, але фізичний адресний простір обмежений у AMD 52 бітами, а у Intel – 40 бітами. Втім, навряд це проявить себе у найближчому майбутньому, оскільки 40 біт вистачає для адресації 1 Тбайт (терабайта) чи 1024 Гбайт пам'яті.

Додаткову інформацію про 64-бітову підтримку можна знайти на таких ресурсах.

Тестова конфігурація

Процесор
Одноядерний CPU AMD Athlon 64 FX-57 (2,8 ГГц, кеш L2 1 Мбайт)
Двоядерний CPU AMD Athlon 64 X2 4800+ (2,4 ГГц, 2x 1 Мбайт кешу L2)
Пам'ять
Платформа AMD (DDR400) 2x 512 Мбайт - DDR400 (200 МГц)
Corsair Pro Series CMX512-3200XL (XMS3208 V1.1)
(CL2,0-2-2-5-1T @ 200 МГц)
Материнська плата
Платформа AMD Asus A8N-SLI Deluxe (Rev. 1.02, BIOS 1007)
Чіпсет nVidia nForce4 SLI
Системне апаратне забезпечення
Графічна карта (PCIe) nVidia GeForce 6800 GT (еталонна плата)
GPU: nVidia GeForce 6800 GT (350 МГц)
Пам'ять: 256 Мбайт DDR SDRAM (500 МГц)
Жорсткий диск Western Digital WD740 Raptor
74 Гбайт, кеш 8 Мбайт, 10 000 об/хв
Мережа Вбудована nVidia GbE Ethernet
DVD-ROM Gigabyte GO-D1600C (16x)
Блок живлення Tagan TG480-U01, ATX 2.0, 480 Вт
Програмне забезпечення
Драйвери чіпсету nVidia Forceware 6.53
Драйвери чіпсету x64 nVidia Forceware 6.66
Драйвер процесора AMD CPU Driver 1.1.0.18
Графічний драйвер nVidia Forceware 71.84
DirectX Версія: 9.0c (4.09.0000.0904)
32-бітна ОС Windows XP Professional 5.20.3790,
Service Pack 2
64-бітна ОС Windows XP Professional 5.10.2600,
Service Pack 2

Тести та налаштування

OpenGL
Doom III Version: 1.0.1262
1024x768 - 32 bit
Video Quality = High Quality
"custom timedemo"
Graphics detail = High Quality
Wolfenstein Version: 2.56 (Patch V 1.02)
Enemy Territory 1280x1024 - 32 bit
Timedemo 1 / demo demo4
Geometric detail = high
Texture detail = high
DirectX 8
Unreal Tournament 2004 Version: 3204
1280 x 1024 / 32 біт / Audio = off
THG8-assault-single
3DMark2003 Version 3.6.0
1024x768 - 32 bit
DirectX 9
FarCry Version 1.1 Build 1256
1280x1024 - 32 bit
Quality options = low
3DMark 2005 Version 1.0
1024x768 - 32 bit
Graphics and CPU Default Benchmark
Відео
Mainconcept MPEG Encoder Version: 1.4.2
1.2 GB DV to MPEG II
(720x576, Audio) converting
Pinnacle Studio 9 Plus Version: 9.1.2
Від: 352x288 MPEG-2 41 MB
to: 720x576 MPEG-2 95 MB
Encoding and Transition Rendering to MPEG-2/DVD
no Audio
Auto Gordian Knot
DivX 5.2.1
XviD 1.0.2
Version: 1.95
Audio = AC3 6ch
Custom size = 100 MB
Resulution settings = Fixed width
Codec = XviD і DivX 5
Audio = CBR MP3, kbps 192
182 MB VOB MPEG2-source
Windows Media Encoder Version: 9.00.00.2980
720x480 DV to WMV
320x240 (29.97 fps)
282 kbps streaming
Windows Media Player 10 Version: 10.00.00.36.46
Аудіо
Lame MP3 Version 3.96
Wave 17:14 хвилин (182 MB) to mp3
32 - 320 kbit
VBR = рівень 3
Програми
Winrar Version 3.42
283 MB, 246 Files
Compression = Best
Dictionary = 4096 kB
3D Studio Max 6.0
Discreet
Characters "Dragon_Charater_rig"
Pixel: 1024 x 768
Rendering Single
Синтетичні тести
PCMark 2004 Pro Version: 1.3.0
CPU та Memory Tests
SiSoftware Sandra Pro Version 2005, SR1
CPU Test = MultiMedia / CPU Arithmetic
Memory Test = Bandwidth Benchmark
Wstream Version: 5
100 Operations with 25 MB файлу
  • Подібні результати порівняння між 32-бітною та 64-бітною версіями однакові і для одноядерних, і для двоядерних процесорів.
  • Враховуючи відсутність різниці у продуктивності 32-бітових програм, навряд чи є сенс переходити на Windows XP Professional x64 Edition, якщо ви, здебільшого, працюєте саме з ними. Звичайно, якщо ви не бажаєте відчути себе першопрохідником. В принципі, рівень Microsoft WOW64 (Windows on Windows 64) працює добре і дозволяє виконувати 32-бітові програми під Windows x64 без помітного падіння продуктивності. Власне ситуація нагадує нам перехід від Windows for Workgroups 3.11 до Windows 95: якщо в комп'ютері встановлено достатньо пам'яті, то продуктивність проблемою не є.

    У найближчі місяці ми плануємо ретельно протестувати продуктивність 64-бітових додатків, у міру того, як вони з'являтимуться на ринку.

     


    Читайте:



    "Моя сім'я", Windows Phone: налаштувати

    Microsoft дуже серйозно ставиться до безпеки та батьківського контролю. Тому Windows Phone та Xbox підтримують роботу із сервісом "Моя...

    Установка офіційної прошивки на LG L90 Dual Прошивка на lg l90 dual d410

    Установка офіційної прошивки на LG L90 Dual Прошивка на lg l90 dual d410

    Драйвери та софт для прошивки LG F T 2014 Прошивка LG L70 D, D325. Оновлений спосіб встановлення KDZ...

    Як правильно розділити жорсткий диск за допомогою програми Acronis Disk Director Suite Розділення диска за допомогою acronis

    Як правильно розділити жорсткий диск за допомогою програми Acronis Disk Director Suite Розділення диска за допомогою acronis

    Вітаю Вас шановні читачі! У цій статті я хотів би продовжити розмову про пристрій зберігання даних, а саме про жорсткий диск.

    Супер нуль МТС: опис тарифу

    Супер нуль МТС: опис тарифу

    Кількість абонентів із кожним днем ​​зростає тисячами на день. Вже давно минули ті часи, коли за хвилину розмови навіть зі своїм оператором ми...

    feed-image RSS