ΠΊΠ°ΠΊ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ 64 Π±ΠΈΡ‚Π½ΡƒΡŽ ΠΈΠ³Ρ€Ρƒ Π½Π° 32 Π±ΠΈΡ‚Π½ΠΎΠΉ Π½Π° windows 7

МоТно Π»ΠΈ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ ΠΈΠ³Ρ€Ρƒ x64 Π½Π° 32-Π±ΠΈΡ‚Π½ΠΎΠΌ процСссорС?

ΠΊΠ°ΠΊ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ 64 Π±ΠΈΡ‚Π½ΡƒΡŽ ΠΈΠ³Ρ€Ρƒ Π½Π° 32 Π±ΠΈΡ‚Π½ΠΎΠΉ Π½Π° windows 7. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ 64 Π±ΠΈΡ‚Π½ΡƒΡŽ ΠΈΠ³Ρ€Ρƒ Π½Π° 32 Π±ΠΈΡ‚Π½ΠΎΠΉ Π½Π° windows 7. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ 64 Π±ΠΈΡ‚Π½ΡƒΡŽ ΠΈΠ³Ρ€Ρƒ Π½Π° 32 Π±ΠΈΡ‚Π½ΠΎΠΉ Π½Π° windows 7. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ 64 Π±ΠΈΡ‚Π½ΡƒΡŽ ΠΈΠ³Ρ€Ρƒ Π½Π° 32 Π±ΠΈΡ‚Π½ΠΎΠΉ Π½Π° windows 7. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ 64 Π±ΠΈΡ‚Π½ΡƒΡŽ ΠΈΠ³Ρ€Ρƒ Π½Π° 32 Π±ΠΈΡ‚Π½ΠΎΠΉ Π½Π° windows 7

К 2020 Π³ΠΎΠ΄Ρƒ 64-Π±ΠΈΡ‚Π½Ρ‹ΠΉ софт постСпСнно становится стандартом Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ дСсктопных систСм, Π½ΠΎ ΠΈ ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌ.

НапримСр, ΠΌΠΈΠ½ΡƒΠ²ΡˆΠ΅ΠΉ осСнью корпорация Apple заявила, Ρ‡Ρ‚ΠΎ отказываСтся ΠΎΡ‚ 32-Π±ΠΈΡ‚Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ Π½Π° своих смартфонах, ΠΈ Π² App Store. Π§Ρ‚ΠΎ ΠΆ, Π΄Π°Π²Π½ΠΎ ΠΏΠΎΡ€Π°, прогрСсс Π½Π΅ΡƒΠΌΠΎΠ»ΠΈΠΌ. Но ΠΊΠ°ΠΊ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ x64 Π½Π° x32, Ссли Ρƒ вас ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠΈΠΉ микропроцСссор?

БСгодня эта информация особСнно Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Π° для лэптопов ΠΈ ΠΏΠ»Π°Π½ΡˆΠ΅Ρ‚ΠΎΠ², Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΡ… ΠΏΠΎΠ΄ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ Windows 10. НапримСр, Ρƒ мСня Π² Ρ€ΡŽΠΊΠ·Π°ΠΊΠ΅ Π»Π΅ΠΆΠΈΡ‚ ΡΡ‚Π°Ρ€Π΅Π½ΡŒΠΊΠΈΠΉ Prestigio. Π‘Ρ‚ΠΎΠΈΠ» ΠΊΠΎΠΏΠ΅ΠΉΠΊΠΈ, с Ρ€Π°Π±ΠΎΡ‡ΠΈΠΌΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°ΠΌΠΈ справляСтся достойно, Π° Π²ΠΎΡ‚ Π²ΠΈΠ΄Π΅ΠΎΠΈΠ³Ρ€Ρ‹ ΡƒΠΆΠ΅ Π½Π΅ вытягиваСт. Π”Π°ΠΆΠ΅ Π΄Π²ΡƒΡ…ΠΌΠ΅Ρ€Π½Ρ‹Π΅, Π·Π° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ написанных ΠΏΠΎΠ΄ ΡΡ‚Π°Ρ€ΡƒΡŽ Ρ€Π°Π·Ρ€ΡΠ΄Π½ΠΎΡΡ‚ΡŒ.

ΠΊΠ°ΠΊ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ 64 Π±ΠΈΡ‚Π½ΡƒΡŽ ΠΈΠ³Ρ€Ρƒ Π½Π° 32 Π±ΠΈΡ‚Π½ΠΎΠΉ Π½Π° windows 7. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ 64 Π±ΠΈΡ‚Π½ΡƒΡŽ ΠΈΠ³Ρ€Ρƒ Π½Π° 32 Π±ΠΈΡ‚Π½ΠΎΠΉ Π½Π° windows 7. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ 64 Π±ΠΈΡ‚Π½ΡƒΡŽ ΠΈΠ³Ρ€Ρƒ Π½Π° 32 Π±ΠΈΡ‚Π½ΠΎΠΉ Π½Π° windows 7. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ 64 Π±ΠΈΡ‚Π½ΡƒΡŽ ΠΈΠ³Ρ€Ρƒ Π½Π° 32 Π±ΠΈΡ‚Π½ΠΎΠΉ Π½Π° windows 7. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ 64 Π±ΠΈΡ‚Π½ΡƒΡŽ ΠΈΠ³Ρ€Ρƒ Π½Π° 32 Π±ΠΈΡ‚Π½ΠΎΠΉ Π½Π° windows 7

ΠŸΡ€Π΅ΠΈΠΌΡƒΡ‰Π΅ΡΡ‚Π²ΠΎ Mac OS X состоит Π² Π½Π°Π»ΠΈΡ‡ΠΈΠΈ Ρ‚Π°ΠΌ Π³ΠΈΠ±Ρ€ΠΈΠ΄Π½ΠΎΠΉ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹. Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ значСния, ΠΏΠΎΠ΄ ΠΊΠ°ΠΊΠΎΠΉ стандарт Π·Π°Ρ‚ΠΎΡ‡Π΅Π½ΠΎ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ΅ ПО. А Π²ΠΎΡ‚ Π½Π° Β«Π’ΠΈΠ½Π΄Π΅Β» ΠΈ «ПингвинС» придСтся ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΌΠ°ΡˆΠΈΠ½Ρƒ.

Виртуализация ΠΈΠΌΠ΅Π΅Ρ‚ ряд прСимущСств, позволяя ΡΡ‹ΠΌΠΈΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π°Π·Π½ΠΎΠΎΠ±Ρ€Π°Π·Π½Ρ‹Π΅ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ, ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠΈΠ΅ ΠΈ новСйшиС ОБ. ЕдинствСнный (ΠΈ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠΉ) нСдостаток – ΠΎΠ±Ρ‰Π΅Π΅ Π·Π°ΠΌΠ΅Π΄Π»Π΅Π½ΠΈΠ΅ систСмы, поэтому для доисторичСских лэптопов Π²ΠΎΠ»ΡˆΠ΅Π±Π½Ρ‹Ρ… Ρ‚Π°Π±Π»Π΅Ρ‚ΠΎΠΊ Π½Π΅Ρ‚.

Как Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ x64 Π½Π° x32 – популярныС Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΌΠ°ΡˆΠΈΠ½Ρ‹:

Β«Π‘ΠΈΠ»Π° ΠΎΠ±Π»Π°ΠΊΠΎΠ²Β» ΠΈ аппаратная ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ°

Π•ΡΡ‚ΡŒ ΠΈ Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚, ΠΊΠΎΠ³Π΄Π° вычислСния ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡŽΡ‚ΡΡ Π½Π° сСрвСрах MS Azure. Π’ΠΎΠ³Π΄Π° виртуализация происходит ΡƒΠ΄Π°Π»Ρ‘Π½Π½ΠΎ, Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π²ΠΈΠ΄ΠΈΡ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚.

НСобходим ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ доступ ΠΊ Π‘Π΅Ρ‚ΠΈ Π½Π° высокой скорости. Π•Ρ‰Ρ‘ ΠΎΠ΄ΠΈΠ½ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ – Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎΠ΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ (AMD-V ΠΈ Intel VT-x), ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΠΎΠ΅ нСбольшим ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚ΠΎΠΌ CPU. Π‘ΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π°Ρ опция Π΄ΠΎΠ»ΠΆΠ½Π° ΠΏΡ€ΠΈΡΡƒΡ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Π² настройках вашСго BIOS. ΠΠ°Ρ‡Π°Ρ‚ΡŒ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΡŽ с поиска 32-Π±ΠΈΡ‚Π½ΠΎΠΉ вСрсии Π½ΡƒΠΆΠ½ΠΎΠ³ΠΎ ПО, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π½Π° слабом Β«ΠΆΠ΅Π»Π΅Π·Π΅Β» Π²Ρ‹ΠΆΠ°Ρ‚ΡŒ Π΄ΠΎΡΡ‚ΠΎΠΉΠ½ΡƒΡŽ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Ρ‡Π΅Ρ€Π΅Π· VM-ΠΌΠ°ΡˆΠΈΠ½Ρƒ Π½Π΅ Π²Ρ‹ΠΉΠ΄Π΅Ρ‚.

К соТалСнию, Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ соврСмСнных Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΎΡ‚ΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ ΠΎΡ‚ старых дСвайсов. Π―Ρ€ΠΊΠΈΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ – ΠΈΠ³Ρ€Π° Octopath Traveler. НСсмотря Π½Π° ΠΏΡ€ΠΎΡΡ‚ΡƒΡŽ 2D-Π³Ρ€Π°Ρ„ΠΈΠΊΡƒ, Π²Ρ€ΡƒΠ±ΠΈΡ‚ΡŒ Π΅Π³ΠΎ Π½Π° ΠΏΠ»Π°Π½ΡˆΠ΅Ρ‚Π΅ Π½Π΅ ΡƒΠ΄Π°Π»ΠΎΡΡŒ ΠΈΠ·-Π·Π° Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π½ΠΎΠ³ΠΎ нСсоотвСтствия.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

7 шагов ΠΏΠΎ пСрСносу ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° 64-Π±ΠΈΡ‚Π½ΡƒΡŽ систСму

Аннотация

Π’ ΡΡ‚Π°Ρ‚ΡŒΠ΅ рассмотрСны основныС шаги, ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‰ΠΈΠ΅ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½Ρ‹ΠΉ пСрСнос 32-Π±ΠΈΡ‚Π½Ρ‹Ρ… Windows ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π½Π° 64-Π±ΠΈΡ‚Π½Ρ‹Π΅ Windows систСмы. Π₯отя ΡΡ‚Π°Ρ‚ΡŒΡ ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π° Π½Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ², ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΡ… язык Π‘ΠΈ/Π‘ΠΈ++ Π² срСдС Visual Studio 2005/2008, ΠΎΠ½Π° Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠ»Π΅Π·Π½Π° ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠΌ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ, ΠΏΠ»Π°Π½ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΌ пСрСнос своих ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΏΠΎΠ΄ 64-Π±ΠΈΡ‚Π½Ρ‹Π΅ систСмы.

Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅

Π’ ΡΡ‚Π°Ρ‚ΡŒΠ΅ описаны основныС ΠΌΠΎΠΌΠ΅Π½Ρ‚Ρ‹, с ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ ΡΡ‚Π°Π»ΠΊΠΈΠ²Π°ΡŽΡ‚ΡΡ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ, ΠΏΠ»Π°Π½ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠ΅ ΠΌΠΈΠ³Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ 32-Π±ΠΈΡ‚Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° 64-Π±ΠΈΡ‚Π½Ρ‹Π΅ систСмы. ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, список рассмотрСнных вопросов Π½Π΅ ΠΏΠΎΠ»ΠΎΠ½, Π½ΠΎ хочСтся Π½Π°Π΄Π΅ΡΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ со Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ этой ΡΡ‚Π°Ρ‚ΡŒΠΈ. Автор Π±ΡƒΠ΄Π΅Ρ‚ Π±Π»Π°Π³ΠΎΠ΄Π°Ρ€Π΅Π½ ΠΎΡ‚Π·Ρ‹Π²Π°ΠΌ, коммСнтариям ΠΈ вопросам, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ позволят ΡƒΠ»ΡƒΡ‡ΡˆΠΈΡ‚ΡŒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ этой ΡΡ‚Π°Ρ‚ΡŒΠΈ.

1. Π¨Π°Π³ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ. 64-Π±ΠΈΡ‚Π½ΠΎΡΡ‚ΡŒ Π±Ρ‹Π²Π°Π΅Ρ‚ Ρ€Π°Π·Π½ΠΎΠΉ.

Π”Π°Π²Π°ΠΉΡ‚Π΅ разбСрСмся

Π’ Ρ€Π°ΠΌΠΊΠ°Ρ… Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ Ρ‚Π΅Ρ…Π½ΠΈΠΊΠΈ ΠΏΠΎΠ΄ Ρ‚Π΅Ρ€ΠΌΠΈΠ½ΠΎΠΌ «64-Π±ΠΈΡ‚Π½Ρ‹ΠΉ» ΠΏΠΎΠ½ΠΈΠΌΠ°ΡŽΡ‚ 64-Π±ΠΈΡ‚Π½Ρ‹Π΅ Ρ†Π΅Π»Ρ‹Π΅ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Ρ‚ΠΈΠΏΡ‹ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΡ… Ρ€Π°Π·ΠΌΠ΅Ρ€ 64 Π±ΠΈΡ‚Π°. Под Β«64-Π±ΠΈΡ‚Π½Ρ‹ΠΌΠΈΒ» систСмами ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒΡΡ 64-Π±ΠΈΡ‚Π½Ρ‹Π΅ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ микропроцСссоров (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, EM64T, IA-64) ΠΈΠ»ΠΈ 64-Π±ΠΈΡ‚Π½Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ систСмы (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Windows XP Professional x64 Edition) [1].
AMD64 (ΠΎΠ½Π° ΠΆΠ΅ x86-64, Intel 64, EM64T, x64) β€” 64-битная Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π° микропроцСссора ΠΈ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ Π½Π°Π±ΠΎΡ€ инструкций, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹Π΅ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠ΅ΠΉ AMD [2]. Π­Ρ‚ΠΎΡ‚ Π½Π°Π±ΠΎΡ€ инструкций Π±Ρ‹Π» Π»ΠΈΡ†Π΅Π½Π·ΠΈΡ€ΠΎΠ²Π°Π½ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠ΅ΠΉ Intel ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ EM64T (Intel64). АрхитСктура AMD64 прСдставляСт собой Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ x86 с ΠΏΠΎΠ»Π½ΠΎΠΉ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΉ ΡΠΎΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚ΡŒΡŽ. АрхитСктура ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»Π° ΡˆΠΈΡ€ΠΎΠΊΠΎΠ΅ распространСниС Π² качСствС Π±Π°Π·Ρ‹ ΠΏΠ΅Ρ€ΡΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ΠΎΠ² ΠΈ Ρ€Π°Π±ΠΎΡ‡ΠΈΡ… станций.
IA-64 β€” 64-битная микропроцСссорная Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π°, разработанная совмСстно компаниями Intel ΠΈ Hewlett Packard [3]. Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° Π² микропроцСссорах Itanium ΠΈ Itanium 2 [4]. АрхитСктура ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² основном Π² многопроцСссорных сСрвСрах ΠΈ кластСрных систСмах.
AMD64 ΠΈ IA-64 это Π΄Π²Π΅ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ 64-Π±ΠΈΡ‚Π½Ρ‹Π΅ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ Π½Π΅ совмСстимыС ΠΌΠ΅ΠΆΠ΄Ρƒ собой. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ слСдуСт сразу Ρ€Π΅ΡˆΠΈΡ‚ΡŒ, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π»ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΎΠ±Π΅ эти Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ ΠΈΠ»ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄Π½Ρƒ. Π’ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ случаСв, Ссли Π²Ρ‹ Π½Π΅ Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚Π΅ узкоспСциализированноС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС для кластСрных систСм ΠΈΠ»ΠΈ Π½Π΅ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚Π΅ свою Π²Ρ‹ΡΠΎΠΊΠΎΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ Π‘Π£Π‘Π”, Ρ‚ΠΎ с большой Π²Π΅Ρ€ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒΡŽ Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ AMD64, которая ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»Π° Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ большСС распространСниС, Ρ‡Π΅ΠΌ IA-64. ОсобСнно это относится ΠΊ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΌΡƒ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡Π΅Π½ΠΈΡŽ для Ρ€Ρ‹Π½ΠΊΠ° ΠΏΠ΅Ρ€ΡΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΡ‡Ρ‚ΠΈ Π½Π° 100 ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚ΠΎΠ² занят Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€ΠΎΠΉ AMD64.
Π”Π°Π»Π΅Π΅ Π² ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ± Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π΅ AMD64 (EM64T, x64), Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π΅Π΅ использованиС сСйчас Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния.
Говоря ΠΎ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π°Ρ…, слСдуСт ΡƒΠΏΠΎΠΌΡΠ½ΡƒΡ‚ΡŒ ΠΎ понятии «ΠœΠΎΠ΄Π΅Π»ΡŒ Π΄Π°Π½Π½Ρ‹Ρ…». Под модСлью Π΄Π°Π½Π½Ρ‹Ρ… слСдуСт ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ ΡΠΎΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ размСрностСй Ρ‚ΠΈΠΏΠΎΠ², принятых Π² Ρ€Π°ΠΌΠΊΠ°Ρ… срСды Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ. Для ΠΎΠ΄Π½ΠΎΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы ΠΌΠΎΠ³ΡƒΡ‚ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ нСсколько срСдств Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, ΠΏΡ€ΠΈΠ΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‰ΠΈΡ…ΡΡ Ρ€Π°Π·Π½Ρ‹Ρ… ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ Π΄Π°Π½Π½Ρ‹Ρ…. Но ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΏΡ€Π΅ΠΎΠ±Π»Π°Π΄Π°Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄Π½Π° модСль, Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π°Ρ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎΠΉ ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΉ срСдС. ΠŸΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠ»ΡƒΠΆΠΈΡ‚ΡŒ 64-битная опСрационная систСма Windows, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Ρ€ΠΎΠ΄Π½ΠΎΠΉ модСлью Π΄Π°Π½Π½Ρ‹Ρ… являСтся LLP64. Но для совмСстимости 64-битная систСма Windows ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ исполнСниС 32-Π±ΠΈΡ‚Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ILP32LL. Π’ Ρ‚Π°Π±Π»ΠΈΡ†Π΅ N1 ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Ρ‹ свСдСния ΠΎΠ± основных модСлях Π΄Π°Π½Π½Ρ‹Ρ….
ΠΊΠ°ΠΊ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ 64 Π±ΠΈΡ‚Π½ΡƒΡŽ ΠΈΠ³Ρ€Ρƒ Π½Π° 32 Π±ΠΈΡ‚Π½ΠΎΠΉ Π½Π° windows 7. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ 64 Π±ΠΈΡ‚Π½ΡƒΡŽ ΠΈΠ³Ρ€Ρƒ Π½Π° 32 Π±ΠΈΡ‚Π½ΠΎΠΉ Π½Π° windows 7. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ 64 Π±ΠΈΡ‚Π½ΡƒΡŽ ΠΈΠ³Ρ€Ρƒ Π½Π° 32 Π±ΠΈΡ‚Π½ΠΎΠΉ Π½Π° windows 7. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ 64 Π±ΠΈΡ‚Π½ΡƒΡŽ ΠΈΠ³Ρ€Ρƒ Π½Π° 32 Π±ΠΈΡ‚Π½ΠΎΠΉ Π½Π° windows 7. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ 64 Π±ΠΈΡ‚Π½ΡƒΡŽ ΠΈΠ³Ρ€Ρƒ Π½Π° 32 Π±ΠΈΡ‚Π½ΠΎΠΉ Π½Π° windows 7
Π’Π°Π±Π»ΠΈΡ†Π° N1. МодСли Π΄Π°Π½Π½Ρ‹Ρ…

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠ°Ρ модСль Π΄Π°Π½Π½Ρ‹Ρ… Π½Π°ΠΊΠ»Π°Π΄Ρ‹Π²Π°Π΅Ρ‚ ΠΎΡ‚ΠΏΠ΅Ρ‡Π°Ρ‚ΠΎΠΊ Π½Π° процСсс Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ 64-Π±ΠΈΡ‚Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π² ΠΊΠΎΠ΄Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ Ρ€Π°Π·Ρ€ΡΠ΄Π½ΠΎΡΡ‚ΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… [5].

2. Π¨Π°Π³ Π²Ρ‚ΠΎΡ€ΠΎΠΉ. ВыяснитС, Π½ΡƒΠΆΠ΅Π½ Π»ΠΈ Π²Π°ΠΌ 64-Π±ΠΈΡ‚Π½Ρ‹ΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ вашСго ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π°

ΠΠ°Ρ‡Π°Ρ‚ΡŒ освоСниС 64-Π±ΠΈΡ‚Π½Ρ‹Ρ… систСм слСдуСт с вопроса «А Π½ΡƒΠΆΠ½ΠΎ Π»ΠΈ Π½Π°ΠΌ ΠΏΠ΅Ρ€Π΅ΡΠΎΠ±Ρ€Π°Ρ‚ΡŒ свой ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ для 64-Π±ΠΈΡ‚Π½ΠΎΠΉ систСмы?Β». На этот вопрос Π½Π°Π΄ΠΎ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π΄Π°Ρ‚ΡŒ ΠΎΡ‚Π²Π΅Ρ‚, Π½ΠΎ Π½Π΅ Ρ‚ΠΎΡ€ΠΎΠΏΡΡΡŒ, ΠΏΠΎΠ΄ΡƒΠΌΠ°Π². Π‘ ΠΎΠ΄Π½ΠΎΠΉ стороны ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ‚ΡΡ‚Π°Ρ‚ΡŒ ΠΎΡ‚ своих ΠΊΠΎΠ½ΠΊΡƒΡ€Π΅Π½Ρ‚ΠΎΠ², воврСмя Π½Π΅ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠΈΠ² 64-Π±ΠΈΡ‚Π½Ρ‹Π΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ. Π‘ Π΄Ρ€ΡƒΠ³ΠΎΠΉ β€” ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΏΡƒΡΡ‚ΡƒΡŽ ΠΏΠΎΡ‚Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ врСмя Π½Π° 64-Π±ΠΈΡ‚Π½ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π½Π΅ даст Π½ΠΈΠΊΠ°ΠΊΠΈΡ… ΠΊΠΎΠ½ΠΊΡƒΡ€Π΅Π½Ρ‚Π½Ρ‹Ρ… прСимущСств.
ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»ΠΈΠΌ основныС Ρ„Π°ΠΊΡ‚ΠΎΡ€Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠΌΠΎΠ³ΡƒΡ‚ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π²Π°ΠΌ Π²Ρ‹Π±ΠΎΡ€.

2.1. ΠŸΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΆΠΈΠ·Π½Π΅Π½Π½ΠΎΠ³ΠΎ Ρ†ΠΈΠΊΠ»Π° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ

НС слСдуСт ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ 64-Π±ΠΈΡ‚Π½ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ прилоТСния с ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΈΠΌ ΠΆΠΈΠ·Π½Π΅Π½Π½Ρ‹ΠΌ Ρ†ΠΈΠΊΠ»ΠΎΠΌ. Благодаря подсистСмС WOW64 старыС 32-Π±ΠΈΡ‚Π½Ρ‹Π΅ прилоТСния достаточно Ρ…ΠΎΡ€ΠΎΡˆΠΎ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ Π½Π° 64-Π±ΠΈΡ‚Π½Ρ‹Ρ… Windows систСмах ΠΈ поэтому Π΄Π΅Π»Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ 64-Π±ΠΈΡ‚Π½ΠΎΠΉ, которая Ρ‡Π΅Ρ€Π΅Π· 2 Π³ΠΎΠ΄Π° пСрСстанСт ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒΡΡ, смысла Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ [6]. Π‘ΠΎΠ»Π΅Π΅ Ρ‚ΠΎΠ³ΠΎ, ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ° ΠΏΠΎΠΊΠ°Π·Π°Π»Π°, Ρ‡Ρ‚ΠΎ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ Π½Π° 64-Π±ΠΈΡ‚Π½Ρ‹Π΅ вСрсии Windows затянулся ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ Π²Π°ΡˆΠΈΡ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ Π² краткосрочной пСрспСктивС Π±ΡƒΠ΄ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ 32-Π±ΠΈΡ‚Π½Ρ‹ΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ вашСго ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ.
Если планируСтся Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΠ΅ ΠΈ Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π°, Ρ‚ΠΎ слСдуСт Π½Π°Ρ‡ΠΈΠ½Π°Ρ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π½Π°Π΄ 64-Π±ΠΈΡ‚Π½Ρ‹ΠΌ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠΌ вашСго Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ нСспСшно, Π½ΠΎ ΡƒΡ‡Ρ‚ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ Ρ‡Π΅ΠΌ дольшС Ρƒ вас Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠ»Π½ΠΎΡ†Π΅Π½Π½ΠΎΠ³ΠΎ 64-Π±ΠΈΡ‚Π½ΠΎΠ³ΠΎ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π°, Ρ‚Π΅ΠΌ большС слоТностСй ΠΌΠΎΠΆΠ΅Ρ‚ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Ρ‚ΡŒ с ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ Ρ‚Π°ΠΊΠΎΠ³ΠΎ прилоТСния, устанавливаСмого Π½Π° 64-Π±ΠΈΡ‚Π½Ρ‹Π΅ вСрсии Windows.

2.2. Π Π΅ΡΡƒΡ€ΡΠΎΠ΅ΠΌΠΊΠΎΡΡ‚ΡŒ прилоТСния

ΠŸΠ΅Ρ€Π΅ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡ†ΠΈΡ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ для 64-Π±ΠΈΡ‚Π½ΠΎΠΉ систСмы ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ Π΅ΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ³Ρ€ΠΎΠΌΠ½Ρ‹Π΅ ΠΎΠ±ΡŠΠ΅ΠΌΡ‹ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠΉ памяти, Π° Ρ‚Π°ΠΊΠΆΠ΅ убыстрит ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ Π΅Π΅ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π½Π° 5-15%. УбыстрСниС Π½Π° 5-10% ΠΏΡ€ΠΎΠΈΠ·ΠΎΠΉΠ΄Π΅Ρ‚ Π·Π° счСт использования Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π½Ρ‹Ρ… возмоТностСй 64-Π±ΠΈΡ‚Π½ΠΎΠ³ΠΎ процСссора, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ большСго количСства рСгистров. Π•Ρ‰Π΅ 1%-5% прироста скорости обуславливаСтся отсутствиСм прослойки WOW64, которая транслируСт Π²Ρ‹Π·ΠΎΠ²Ρ‹ API ΠΌΠ΅ΠΆΠ΄Ρƒ 32-Π±ΠΈΡ‚Π½Ρ‹ΠΌΠΈ прилоТСниями ΠΈ 64-Π±ΠΈΡ‚Π½ΠΎΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмой.
Если ваша ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ с большими объСмами Π΄Π°Π½Π½Ρ‹Ρ… (Π±ΠΎΠ»Π΅Π΅ 2GB) ΠΈ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ Π΅Π΅ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π½Π΅ ΠΊΡ€ΠΈΡ‚ΠΈΡ‡Π½Π°, Ρ‚ΠΎ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ Π½Π° 64-Π±ΠΈΡ‚Π½ΡƒΡŽ Π² блиТайшСС врСмя систСму Π½Π΅ ΡΡ‚ΠΎΠ»ΡŒ Π°ΠΊΡ‚ΡƒΠ°Π»Π΅Π½.
ΠšΡΡ‚Π°Ρ‚ΠΈ, Π΄Π°ΠΆΠ΅ простыС 32-Π±ΠΈΡ‚Π½Ρ‹Π΅ прилоТСния, ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ прСимущСство ΠΎΡ‚ ΠΈΡ… запуска Π² 64-Π±ΠΈΡ‚Π½ΠΎΠΉ срСдС. Π’Ρ‹, Π½Π°Π²Π΅Ρ€Π½ΠΎΠ΅, Π·Π½Π°Π΅Ρ‚Π΅, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° собранная с ΠΊΠ»ΡŽΡ‡ΠΎΠΌ /LARGEADDRESSAWARE:YES ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π΄Π΅Π»ΡΡ‚ΡŒ Π΄ΠΎ 3-Ρ… Π³ΠΈΠ³Π°Π±Π°ΠΉΡ‚ памяти, Ссли 32-битная опСрационная систСма Windows Π·Π°ΠΏΡƒΡ‰Π΅Π½Π° с ΠΊΠ»ΡŽΡ‡ΠΎΠΌ /3gb. Π­Ρ‚Π° ΠΆΠ΅ 32-битная ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°, запущСнная Π½Π° 64-Π±ΠΈΡ‚Π½ΠΎΠΉ систСмС ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π΄Π΅Π»ΠΈΡ‚ΡŒ ΠΏΠΎΡ‡Ρ‚ΠΈ 4 GB памяти (Π½Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅ ΠΎΠΊΠΎΠ»ΠΎ 3.5 GB).

2.3. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ

Если Π²Ρ‹ Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ ΠΈΠ»ΠΈ ΠΈΠ½Ρ‹Π΅ элСмСнты, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… сторонниС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΡΠΎΠ·Π΄Π°ΡŽΡ‚ своС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС, Ρ‚ΠΎ Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΡ€ΠΎΡΠ²ΠΈΡ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ Π² создании 64-Π±ΠΈΡ‚Π½ΠΎΠ³ΠΎ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π° своСй ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ†ΠΈΠΈ. Π’ ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС, ваши ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρ‹, заинтСрСсованныС Π² выпускС 64-Π±ΠΈΡ‚Π½Ρ‹Ρ… вСрсий, Π±ΡƒΠ΄ΡƒΡ‚ Π²Ρ‹Π½ΡƒΠΆΠ΄Π΅Π½Ρ‹ ΠΈΡΠΊΠ°Ρ‚ΡŒ Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹Π΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ. НапримСр, Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎ-Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎΠΉ Π·Π°Ρ‰ΠΈΡ‚Ρ‹ ΠΎΡ‚ΠΊΠ»ΠΈΠΊΠ½ΡƒΠ»ΠΈΡΡŒ с большой Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ Π½Π° появлСниС 64-Π±ΠΈΡ‚Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, Ρ‡Ρ‚ΠΎ заставило ряд ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ² ΠΈΡΠΊΠ°Ρ‚ΡŒ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ инструмСнты для Π·Π°Ρ‰ΠΈΡ‚Ρ‹ своих ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ.
Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ прСимущСством ΠΎΡ‚ выпуска 64-Π±ΠΈΡ‚Π½ΠΎΠΉ вСрсии Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ являСтся Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΡ€ΠΎΠ΄Π°Π²Π°Ρ‚ΡŒ Π΅Π΅ ΠΊΠ°ΠΊ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ваши ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρ‹, ΠΆΠ΅Π»Π°ΡŽΡ‰ΠΈΠ΅ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ 32-Π±ΠΈΡ‚Π½Ρ‹Π΅, Ρ‚Π°ΠΊ ΠΈ 64-Π±ΠΈΡ‚Π½Ρ‹Π΅ прилоТСния Π±ΡƒΠ΄ΡƒΡ‚ Π²Ρ‹Π½ΡƒΠΆΠ΄Π΅Π½Ρ‹ ΠΏΡ€ΠΈΠΎΠ±Ρ€Π΅Ρ‚Π°Ρ‚ΡŒ 2 Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ Π»ΠΈΡ†Π΅Π½Π·ΠΈΠΈ. НапримСр, такая ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠ΅ΠΉ Spatial Corporation ΠΏΡ€ΠΈ ΠΏΡ€ΠΎΠ΄Π°ΠΆΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Spatial ACIS.

2.4. Π—Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΡŒ вашСго ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π° ΠΎΡ‚ сторонних Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ

ΠŸΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ ΠΏΠ»Π°Π½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ Π½Π°Π΄ созданиСм 64-Π±ΠΈΡ‚Π½ΠΎΠΉ вСрсий вашСго ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π° выяснитС, ΠΈΠΌΠ΅ΡŽΡ‚ΡΡ Π»ΠΈ 64-Π±ΠΈΡ‚Π½Ρ‹Π΅ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π² Π½Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ. Π’Π°ΠΊΠΆΠ΅ ΡƒΠ·Π½Π°ΠΉΡ‚Π΅, ΠΊΠ°ΠΊΠΎΠ²Π° цСновая ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ° ΠΏΠΎ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡŽ ΠΊ 64-Π±ΠΈΡ‚Π½ΠΎΠΌΡƒ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρƒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ. ВсС это ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹ΡΡΠ½ΠΈΡ‚ΡŒ, посСтив сайт Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ. Если ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° отсутствуСт, Ρ‚ΠΎ Π·Π°Ρ€Π°Π½Π΅Π΅ ΠΏΠΎΠΈΡ‰ΠΈΡ‚Π΅ Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹Π΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‰ΠΈΠ΅ 64-Π±ΠΈΡ‚Π½Ρ‹Π΅ систСмы.

2.5. НаличиС 16-Π±ΠΈΡ‚Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ

Если Π² Π²Π°ΡˆΠΈΡ… Ρ€Π΅ΡˆΠ΅Π½ΠΈΡΡ… всС Π΅Ρ‰Π΅ ΠΏΡ€ΠΈΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‚ 16-Π±ΠΈΡ‚Π½Ρ‹Π΅ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ, Ρ‚ΠΎ ΠΏΠΎΡ€Π° ΠΎΡ‚ Π½ΠΈΡ… ΠΈΠ·Π±Π°Π²ΠΈΡ‚ΡŒΡΡ. Π Π°Π±ΠΎΡ‚Π° 16-Π±ΠΈΡ‚Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π² 64-Π±ΠΈΡ‚Π½Ρ‹Ρ… вСрсиях Windows Π½Π΅ поддСрТиваСтся.
Π—Π΄Π΅ΡΡŒ слСдуСт ΠΏΠΎΡΡΠ½ΠΈΡ‚ΡŒ ΠΎΠ΄ΠΈΠ½ ΠΌΠΎΠΌΠ΅Π½Ρ‚, связанный с использованиСм 16-Π±ΠΈΡ‚Π½Ρ‹Ρ… инсталляторов. Они Π΄ΠΎ сих ΠΏΠΎΡ€ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для установки Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… 32-Π±ΠΈΡ‚Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Π‘ΠΎΠ·Π΄Π°Π½ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π° Π»Π΅Ρ‚Ρƒ подмСняСт ряд Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ популярных 16-Π±ΠΈΡ‚Π½Ρ‹Ρ… инсталляторов Π½Π° Π±ΠΎΠ»Π΅Π΅ Π½ΠΎΠ²Ρ‹Π΅ вСрсии. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ Π½Π΅Π²Π΅Ρ€Π½ΠΎΠ΅ ΠΌΠ½Π΅Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ 16-Π±ΠΈΡ‚Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΏΠΎ-ΠΏΡ€Π΅ΠΆΠ½Π΅ΠΌΡƒ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ Π² 64-Π±ΠΈΡ‚Π½ΠΎΠΉ срСдС. ΠŸΠΎΠΌΠ½ΠΈΡ‚Π΅, это Π½Π΅ Ρ‚Π°ΠΊ.

2.6. НаличиС ΠΊΠΎΠ΄Π° Π½Π° ассСмблСрС

НС Π·Π°Π±Ρ‹Π²Π°ΠΉΡ‚Π΅, Ρ‡Ρ‚ΠΎ использованиС большого объСма ΠΊΠΎΠ΄Π° Π½Π° ассСмблСрС, ΠΌΠΎΠΆΠ΅Ρ‚ сущСствСнно ΠΏΠΎΠ²Ρ‹ΡΠΈΡ‚ΡŒ ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒ создания 64-Π±ΠΈΡ‚Π½ΠΎΠΉ вСрсии прилоТСния.
ВзвСсив всС пСрСчислСнныС Ρ„Π°ΠΊΡ‚Ρ‹, всС Π·Π° ΠΈ ΠΏΡ€ΠΎΡ‚ΠΈΠ², ΠΏΡ€ΠΈΠΌΠΈΡ‚Π΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅, слСдуСт Π»ΠΈ Π²Π°ΠΌ ΠΏΠ΅Ρ€Π΅Π½ΠΎΡΠΈΡ‚ΡŒ ваш ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π½Π° 64-Π±ΠΈΡ‚Π½Ρ‹Π΅ систСмы. И Ссли это Ρ‚Π°ΠΊ, Ρ‚ΠΎ Π΄Π°Π²Π°ΠΉΡ‚Π΅ ΠΏΠΎΠΉΠ΄Π΅ΠΌ дальшС.

3. Π¨Π°Π³ Ρ‚Ρ€Π΅Ρ‚ΠΈΠΉ. Π˜Π½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Если Π²Ρ‹ приняли Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ 64-Π±ΠΈΡ‚Π½ΠΎΠΉ вСрсии вашСго ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π° ΠΈ Π³ΠΎΡ‚ΠΎΠ²Ρ‹ ΠΏΠΎΡ‚Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Π½Π° это врСмя, это Π΅Ρ‰Π΅ Π½Π΅ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ успСх. Π”Π΅Π»ΠΎ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΎΠ±Π»Π°Π΄Π°Ρ‚ΡŒ всСм Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ΠΌ инструмСнтариСм ΠΈ здСсь ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ нСприятныС казусы.
Π‘Π°ΠΌΠΎΠΉ простой, Π½ΠΎ ΠΈ самой Π½Π΅ΠΏΡ€Π΅ΠΎΠ΄ΠΎΠ»ΠΈΠΌΠΎΠΉ, ΠΌΠΎΠΆΠ΅Ρ‚ ΡΡ‚Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° отсутствия 64-Π±ΠΈΡ‚Π½ΠΎΠ³ΠΎ компилятора. Π‘Ρ‚Π°Ρ‚ΡŒΡ ΠΏΠΈΡˆΠ΅Ρ‚ΡΡ Π² 2009 Π³ΠΎΠ΄Ρƒ, Π½ΠΎ всС Π΅Ρ‰Π΅ Π½Π΅Ρ‚ 64-Π±ΠΈΡ‚Π½ΠΎΠ³ΠΎ компилятора C++ Builder ΠΎΡ‚ Codegear [7]. Π•Π³ΠΎ выпуск оТидаСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊ ΠΊΠΎΠ½Ρ†Ρƒ этого Π³ΠΎΠ΄Π°. НСвозмоТно ΠΎΠ±ΠΎΠΉΡ‚ΠΈ ΠΏΠΎΠ΄ΠΎΠ±Π½ΡƒΡŽ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ, Ссли ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ Π½ΠΎ ΠΏΠ΅Ρ€Π΅ΠΏΠΈΡΠ°Ρ‚ΡŒ вСсь ΠΏΡ€ΠΎΠ΅ΠΊΡ‚, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, с использованиСм Visual Studio. Но Ссли с отсутствиСм 64-Π±ΠΈΡ‚Π½ΠΎΠ³ΠΎ компилятора всС понятно, Ρ‚ΠΎ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ Π±ΠΎΠ»Π΅Π΅ скрытными ΠΈ Π²Ρ‹Π»Π΅Π·Ρ‚ΠΈ ΡƒΠΆΠ΅ Π½Π° этапС Ρ€Π°Π±ΠΎΡ‚ ΠΏΠΎ пСрСносу ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π½Π° Π½ΠΎΠ²ΡƒΡŽ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρƒ. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ, хочСтся ΠΏΠΎΡΠΎΠ²Π΅Ρ‚ΠΎΠ²Π°Ρ‚ΡŒ Π·Π°Ρ€Π°Π½Π΅Π΅ провСсти исслСдованиС, ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ Π»ΠΈ всС Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΡ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ΡΡ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ 64-Π±ΠΈΡ‚Π½ΠΎΠΉ вСрсии вашСго ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π°. Вас ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΠ΄ΠΆΠΈΠ΄Π°Ρ‚ΡŒ нСприятныС ΡΡŽΡ€ΠΏΡ€ΠΈΠ·Ρ‹.
ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, ΠΏΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»ΠΈΡ‚ΡŒ всС, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡ‚ΡŒΡΡ для ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° здСсь Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π½ΠΎ всС-Ρ‚Π°ΠΊΠΈ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΡƒ список, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π²Π°ΠΌ ΡΠΎΠΎΡ€Π΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ ΠΎ Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΌΠΎΠΌΠ΅Π½Ρ‚Π°Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ вашСго 64-Π±ΠΈΡ‚Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°:

3.1. НаличиС 64-Π±ΠΈΡ‚Π½ΠΎΠ³ΠΎ компилятора

Π‘Π»ΠΎΠΆΠ½ΠΎ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Π΅Ρ‰Π΅ ΡΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΎ ваТности наличия 64-Π±ΠΈΡ‚Π½ΠΎΠ³ΠΎ компилятора. Он просто Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ.
Если Π²Ρ‹ ΠΏΠ»Π°Π½ΠΈΡ€ΡƒΠ΅Ρ‚Π΅ Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ 64-Π±ΠΈΡ‚Π½Ρ‹Π΅ прилоТСния с использованиСм послСднСй вСрсии (Π½Π° ΠΌΠΎΠΌΠ΅Π½Ρ‚ написания ΡΡ‚Π°Ρ‚ΡŒΠΈ) Visual Studio 2008, Ρ‚ΠΎ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ Ρ‚Π°Π±Π»ΠΈΡ†Π° N2 ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΌΠΎΡ‡ΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ, какая ΠΈΠ· Ρ€Π΅Π΄Π°ΠΊΡ†ΠΈΠΉ Visual Studio Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠ°.
ΠΊΠ°ΠΊ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ 64 Π±ΠΈΡ‚Π½ΡƒΡŽ ΠΈΠ³Ρ€Ρƒ Π½Π° 32 Π±ΠΈΡ‚Π½ΠΎΠΉ Π½Π° windows 7. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ 64 Π±ΠΈΡ‚Π½ΡƒΡŽ ΠΈΠ³Ρ€Ρƒ Π½Π° 32 Π±ΠΈΡ‚Π½ΠΎΠΉ Π½Π° windows 7. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ 64 Π±ΠΈΡ‚Π½ΡƒΡŽ ΠΈΠ³Ρ€Ρƒ Π½Π° 32 Π±ΠΈΡ‚Π½ΠΎΠΉ Π½Π° windows 7. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ 64 Π±ΠΈΡ‚Π½ΡƒΡŽ ΠΈΠ³Ρ€Ρƒ Π½Π° 32 Π±ΠΈΡ‚Π½ΠΎΠΉ Π½Π° windows 7. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ 64 Π±ΠΈΡ‚Π½ΡƒΡŽ ΠΈΠ³Ρ€Ρƒ Π½Π° 32 Π±ΠΈΡ‚Π½ΠΎΠΉ Π½Π° windows 7
Π’Π°Π±Π»ΠΈΡ†Π° N2. ВозмоТности Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Ρ€Π΅Π΄Π°ΠΊΡ†ΠΈΠΉ Visual Studio 2008

3.2. НаличиС 64-Π±ΠΈΡ‚Π½Ρ‹Ρ… ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ΠΎΠ² ΠΏΠΎΠ΄ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ 64-Π±ΠΈΡ‚Π½Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… систСм

МоТно ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΌΠ°ΡˆΠΈΠ½Ρ‹ для запуска 64-Π±ΠΈΡ‚Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π½Π° 32-Π±ΠΈΡ‚Π½ΠΎΠΉ Ρ‚Π΅Ρ…Π½ΠΈΠΊΠ΅, Π½ΠΎ это ΠΊΡ€Π°ΠΉΠ½Π΅ Π½Π΅ΡƒΠ΄ΠΎΠ±Π½ΠΎ ΠΈ Π½Π΅ обСспСчит Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΠ³ΠΎ уровня тСстовых испытаний. Π–Π΅Π»Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π² ΠΌΠ°ΡˆΠΈΠ½Π°Ρ… Π±Ρ‹Π»ΠΎ установлСно Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ 4-8 Π³ΠΈΠ³Π°Π±Π°ΠΉΡ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠΉ памяти.

3.3. НаличиС 64-Π±ΠΈΡ‚Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² всСх ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ

Если Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ прСдставлСны Π² исходных ΠΊΠΎΠ΄Π°Ρ…, Ρ‚ΠΎ Π΄ΠΎΠ»ΠΆΠ½Π° ΠΏΡ€ΠΈΡΡƒΡ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ 64-битная конфигурация ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. Π‘Π°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ Π·Π°Π½ΠΈΠΌΠ°Ρ‚ΡŒΡΡ ΠΌΠΎΠ΄Π΅Ρ€Π½ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ для Π΅Π΅ сборки ΠΏΠΎΠ΄ 64-Π±ΠΈΡ‚Π½ΡƒΡŽ систСму ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π½Π΅Π±Π»Π°Π³ΠΎΠ΄Π°Ρ€Π½Ρ‹ΠΌ ΠΈ слоТным занятиСм, Π° Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ Π½Π΅Π½Π°Π΄Π΅ΠΆΠ½Ρ‹ΠΌ ΠΈ содСрТащим ошибки. Π’Π°ΠΊΠΆΠ΅ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°Ρ€ΡƒΡˆΠΈΡ‚ΡŒ этим Π»ΠΈΡ†Π΅Π½Π·ΠΈΠΎΠ½Π½Ρ‹Π΅ соглашСния. Если Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Π² Π²ΠΈΠ΄Π΅ Π±ΠΈΠ½Π°Ρ€Π½Ρ‹Ρ… ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ, Ρ‚ΠΎ Π²Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡƒΠ·Π½Π°Ρ‚ΡŒ, ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ Π»ΠΈ 64-Π±ΠΈΡ‚Π½Ρ‹Π΅ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ. Π’Ρ‹ Π½Π΅ смоТСтС ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ 32-Π±ΠΈΡ‚Π½Ρ‹Π΅ DLL Π²Π½ΡƒΡ‚Ρ€ΠΈ 64-Π±ΠΈΡ‚Π½ΠΎΠ³ΠΎ прилоТСния. МоТно ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΡƒΡŽ обвязку Ρ‡Π΅Ρ€Π΅Π· COM, Π½ΠΎ эта Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΉ большой, слоТной Π·Π°Π΄Π°Ρ‡Π΅ΠΉ [8]. Π’Π°ΠΊΠΆΠ΅ ΡƒΡ‡Ρ‚ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΠΎΠ±Ρ€Π΅Ρ‚Π΅Π½ΠΈΠ΅ 64-Π±ΠΈΡ‚Π½ΠΎΠΉ вСрсии Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΡ‚ΠΎΠΈΡ‚ΡŒ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Π΄Π΅Π½Π΅Π³.

3.4. ΠžΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΠΈΠ΅ встроСнного ΠΊΠΎΠ΄Π° Π½Π° ассСмблСрС

Visual C++ Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ 64-Π±ΠΈΡ‚Π½Ρ‹ΠΉ встроСнный ассСмблСр. Π’Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠ»ΠΈ внСшний 64-Π±ΠΈΡ‚Π½Ρ‹ΠΉ ассСмблСр (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, MASM) ΠΈΠ»ΠΈ ΠΈΠΌΠ΅Ρ‚ΡŒ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ Ρ‚ΠΎΠΉ ΠΆΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π½Π° языкС Π‘ΠΈ/Π‘ΠΈ++ [9].

3.5. ΠœΠΎΠ΄Π΅Ρ€Π½ΠΈΠ·Π°Ρ†ΠΈΡ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ»ΠΎΠ³ΠΈΠΈ тСстирования

БущСствСнная ΠΏΠ΅Ρ€Π΅Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ»ΠΎΠ³ΠΈΠΈ тСстирования, модСрнизация ΡŽΠ½ΠΈΡ‚-тСстов, использованиС Π½ΠΎΠ²Ρ‹Ρ… ΠΈΠ½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹Ρ… срСдств. Π‘ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ ΠΎΠ± этом Π±ΡƒΠ΄Π΅Ρ‚ сказано Π½ΠΈΠΆΠ΅, Π½ΠΎ Π½Π΅ Π·Π°Π±Ρ‹Π²Π°ΠΉΡ‚Π΅ ΡƒΡ‡Π΅ΡΡ‚ΡŒ это Π½Π° этапС ΠΎΡ†Π΅Π½ΠΊΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Π·Π°Ρ‚Ρ€Π°Ρ‚ Π½Π° ΠΌΠΈΠ³Ρ€Π°Ρ†ΠΈΡŽ прилоТСния Π½Π° Π½ΠΎΠ²ΡƒΡŽ систСму [10].

3.6. НовыС Π΄Π°Π½Π½Ρ‹Π΅ для тСстирования

Если Π²Ρ‹ Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚Π΅ рСсурсоСмкиС прилоТСния, ΠΏΠΎΡ‚Ρ€Π΅Π±Π»ΡΡŽΡ‰ΠΈΠ΅ большой объСм ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠΉ памяти, Ρ‚ΠΎ Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎΠ·Π°Π±ΠΎΡ‚ΠΈΡ‚ΡŒΡΡ ΠΎ ΠΏΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ Π±Π°Π·Ρ‹ тСстовых Π²Ρ…ΠΎΠ΄Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…. ΠŸΡ€ΠΈ Π½Π°Π³Ρ€ΡƒΠ·ΠΎΡ‡Π½ΠΎΠΌ тСстировании 64-Π±ΠΈΡ‚Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΆΠ΅Π»Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π²Ρ‹Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ Π·Π° ΠΏΡ€Π΅Π΄Π΅Π»Ρ‹ 4 Π³ΠΈΠ³Π°Π±Π°ΠΉΡ‚ потрСбляСмой памяти. МногиС ошибки ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€ΠΎΡΠ²ΠΈΡ‚ΡŒΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΈ Ρ‚Π°ΠΊΠΈΡ… условиях.

3.7. НаличиС 64-Π±ΠΈΡ‚Π½Ρ‹Ρ… систСм Π·Π°Ρ‰ΠΈΡ‚Ρ‹

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠ°Ρ систСма Π·Π°Ρ‰ΠΈΡ‚Ρ‹, Π΄ΠΎΠ»ΠΆΠ½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒ 64-Π±ΠΈΡ‚Π½Ρ‹Π΅ систСмы Π² ΠΏΠΎΠ»Π½ΠΎΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΠΌ Π²Π°ΠΌ объСмС. НапримСр, компания Aladdin достаточно быстро выпустила 64-Π±ΠΈΡ‚Π½Ρ‹Π΅ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π° для ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹Ρ… ΠΊΠ»ΡŽΡ‡Π΅ΠΉ Hasp. Но ΠΎΡ‡Π΅Π½ΡŒ Π΄ΠΎΠ»Π³ΠΎ отсутсвовала систСма автоматичСской Π·Π°Ρ‰ΠΈΡ‚Ρ‹ 64-Π±ΠΈΡ‚Π½Ρ‹Ρ… Π±ΠΈΠ½Π°Ρ€Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ² (ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Hasp Envelop). Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ Π·Π°Ρ‰ΠΈΡ‚Ρ‹ ΠΏΡ€ΠΈΡ…ΠΎΠ΄ΠΈΠ»ΠΎΡΡŒ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°, Ρ‡Ρ‚ΠΎ являлось Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ слоТной Π·Π°Π΄Π°Ρ‡Π΅ΠΉ, Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‰Π΅ΠΉ ΠΊΠ²Π°Π»ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ. НС Π·Π°Π±Ρ‹Π²Π°ΠΉΡ‚Π΅ ΠΏΡ€ΠΎ ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Π΅ ΠΌΠΎΠΌΠ΅Π½Ρ‚Ρ‹, связанныС с обСспСчСниСм Π·Π°Ρ‰ΠΈΡ‚Ρ‹, систСмой ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΉ ΠΈ Ρ‚Π°ΠΊ Π΄Π°Π»Π΅Π΅.

3.8. Π˜Π½ΡΡ‚Π°Π»Π»ΡΡ‚ΠΎΡ€

НСобходимо Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠ³ΠΎ инсталлятора, способного ΠΏΠΎΠ»Π½ΠΎΡ†Π΅Π½Π½ΠΎ ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ 64-Π±ΠΈΡ‚Π½Ρ‹Π΅ прилоТСния. Π₯очСтся здСсь сразу ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π΅Ρ€Π΅Ρ‡ΡŒ ΠΎΠ± ΠΎΠ΄Π½ΠΎΠΉ Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½ΠΎΠΉ ошибкС. Π­Ρ‚ΠΎ созданиС 64-Π±ΠΈΡ‚Π½Ρ‹Ρ… инсталляторов для установки 32/64-Π±ΠΈΡ‚Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΎΠ². ΠŸΠΎΠ΄Π³ΠΎΡ‚Π°Π²Π»ΠΈΠ²Π°Ρ 64-Π±ΠΈΡ‚ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ прилоТСния, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ часто хотят довСсти Β«64-Π±ΠΈΡ‚Π½ΠΎΡΡ‚ΡŒΒ» Π² Π½Π΅ΠΌ Π΄ΠΎ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π°. И ΡΠΎΠ·Π΄Π°ΡŽΡ‚ 64-Π±ΠΈΡ‚Π½Ρ‹ΠΉ инсталлятор, забывая ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Ρƒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ 32-Π±ΠΈΡ‚Π½ΠΎΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы Ρ‚Π°ΠΊΠΎΠΉ инсталляционный ΠΏΠ°ΠΊΠ΅Ρ‚ просто Π½Π΅ запустится. ΠžΠ±Ρ€Π°Ρ‚ΠΈΠΌ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ Π½Π΅ запустится Π½Π΅ 32-Π±ΠΈΡ‚Π½ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π½ΠΎΠ΅ Π² дистрибутив наряду с 64-Π±ΠΈΡ‚Π½Ρ‹ΠΌ, Π° ΠΈΠΌΠ΅Π½Π½ΠΎ сам установщик. Π’Π΅Π΄ΡŒ Ссли дистрибутив прСдставляСт собой 64-Π±ΠΈΡ‚Π½ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Ρ‚ΠΎ Π½Π° 32-Π±ΠΈΡ‚Π½ΠΎΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмС ΠΎΠ½, ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ ΠΆΠ΅, Π½Π΅ запустится. Π‘Π°ΠΌΠΎΠ΅ ΠΎΠ±ΠΈΠ΄Π½ΠΎΠ΅ Π² этом Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π½ΠΈΠΊΠ°ΠΊ Π½Π΅ смоТСт Π΄ΠΎΠ³Π°Π΄Π°Ρ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ ΠΆΠ΅ происходит. Он просто ΡƒΠ²ΠΈΠ΄ΠΈΡ‚ инсталляционный ΠΏΠ°ΠΊΠ΅Ρ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ.

4. Π¨Π°Π³ Ρ‡Π΅Ρ‚Π²Π΅Ρ€Ρ‚Ρ‹ΠΉ. Настройка ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π² Visual Studio 2005/2008

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ 64-Π±ΠΈΡ‚Π½ΠΎΠΉ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π² Visual Studio 2005/2008 выглядит достаточно просто. БлоТности Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΠΎΠ΄ΡΡ‚Π΅Ρ€Π΅Π³Π°Ρ‚ΡŒ вас Π½Π° этапС сборки Π½ΠΎΠ²ΠΎΠΉ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ ΠΈ поиска Π² Π½Π΅ΠΉ ошибок. Для создания ΠΆΠ΅ 64-Π±ΠΈΡ‚Π½ΠΎΠΉ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ достаточно Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ 4 шага:
ЗапускаСм ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΉ, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½Π° рисункС N1:
ΠΊΠ°ΠΊ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ 64 Π±ΠΈΡ‚Π½ΡƒΡŽ ΠΈΠ³Ρ€Ρƒ Π½Π° 32 Π±ΠΈΡ‚Π½ΠΎΠΉ Π½Π° windows 7. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ 64 Π±ΠΈΡ‚Π½ΡƒΡŽ ΠΈΠ³Ρ€Ρƒ Π½Π° 32 Π±ΠΈΡ‚Π½ΠΎΠΉ Π½Π° windows 7. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ 64 Π±ΠΈΡ‚Π½ΡƒΡŽ ΠΈΠ³Ρ€Ρƒ Π½Π° 32 Π±ΠΈΡ‚Π½ΠΎΠΉ Π½Π° windows 7. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ 64 Π±ΠΈΡ‚Π½ΡƒΡŽ ΠΈΠ³Ρ€Ρƒ Π½Π° 32 Π±ΠΈΡ‚Π½ΠΎΠΉ Π½Π° windows 7. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ 64 Π±ΠΈΡ‚Π½ΡƒΡŽ ΠΈΠ³Ρ€Ρƒ Π½Π° 32 Π±ΠΈΡ‚Π½ΠΎΠΉ Π½Π° windows 7
Рисунок 1. Запуск ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Π° ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΉ

Π’ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Π΅ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΉ Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ Π½ΠΎΠ²ΠΎΠΉ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅ (рисунок N2):
ΠΊΠ°ΠΊ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ 64 Π±ΠΈΡ‚Π½ΡƒΡŽ ΠΈΠ³Ρ€Ρƒ Π½Π° 32 Π±ΠΈΡ‚Π½ΠΎΠΉ Π½Π° windows 7. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ 64 Π±ΠΈΡ‚Π½ΡƒΡŽ ΠΈΠ³Ρ€Ρƒ Π½Π° 32 Π±ΠΈΡ‚Π½ΠΎΠΉ Π½Π° windows 7. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ 64 Π±ΠΈΡ‚Π½ΡƒΡŽ ΠΈΠ³Ρ€Ρƒ Π½Π° 32 Π±ΠΈΡ‚Π½ΠΎΠΉ Π½Π° windows 7. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ 64 Π±ΠΈΡ‚Π½ΡƒΡŽ ΠΈΠ³Ρ€Ρƒ Π½Π° 32 Π±ΠΈΡ‚Π½ΠΎΠΉ Π½Π° windows 7. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ 64 Π±ΠΈΡ‚Π½ΡƒΡŽ ΠΈΠ³Ρ€Ρƒ Π½Π° 32 Π±ΠΈΡ‚Π½ΠΎΠΉ Π½Π° windows 7
Рисунок 2. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠΉ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ

Π’Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ 64-Π±ΠΈΡ‚Π½ΡƒΡŽ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡƒ (x64), Π° Π² качСствС основы Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ настройки ΠΎΡ‚ 32-Π±ΠΈΡ‚Π½ΠΎΠΉ вСрсии (рисунок N3). Π’Π΅ настройки, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Π»ΠΈΡΡŽΡ‚ Π½Π° Ρ€Π΅ΠΆΠΈΠΌ сборки срСда Visual Studio скоррСктируСт сама.
ΠΊΠ°ΠΊ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ 64 Π±ΠΈΡ‚Π½ΡƒΡŽ ΠΈΠ³Ρ€Ρƒ Π½Π° 32 Π±ΠΈΡ‚Π½ΠΎΠΉ Π½Π° windows 7. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ 64 Π±ΠΈΡ‚Π½ΡƒΡŽ ΠΈΠ³Ρ€Ρƒ Π½Π° 32 Π±ΠΈΡ‚Π½ΠΎΠΉ Π½Π° windows 7. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ 64 Π±ΠΈΡ‚Π½ΡƒΡŽ ΠΈΠ³Ρ€Ρƒ Π½Π° 32 Π±ΠΈΡ‚Π½ΠΎΠΉ Π½Π° windows 7. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ 64 Π±ΠΈΡ‚Π½ΡƒΡŽ ΠΈΠ³Ρ€Ρƒ Π½Π° 32 Π±ΠΈΡ‚Π½ΠΎΠΉ Π½Π° windows 7. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ 64 Π±ΠΈΡ‚Π½ΡƒΡŽ ΠΈΠ³Ρ€Ρƒ Π½Π° 32 Π±ΠΈΡ‚Π½ΠΎΠΉ Π½Π° windows 7
Рисунок 3. Π’Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ x64 Π² качСствС ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ ΠΈ Π±Π΅Ρ€Π΅ΠΌ Π·Π° основу ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡŽ Win32

Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠΉ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΎ, ΠΈ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ 64-Π±ΠΈΡ‚Π½Ρ‹ΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ ΠΈ ΠΏΡ€ΠΈΡΡ‚ΡƒΠΏΠΈΡ‚ΡŒ ΠΊ компиляции 64-Π±ΠΈΡ‚Π½ΠΎΠ³ΠΎ прилоТСния. Π’Ρ‹Π±ΠΎΡ€ 64-Π±ΠΈΡ‚Π½ΠΎΠΉ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ для сборки ΠΏΠΎΠΊΠ°Π·Π°Π½ Π½Π° рисункС N4.
ΠΊΠ°ΠΊ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ 64 Π±ΠΈΡ‚Π½ΡƒΡŽ ΠΈΠ³Ρ€Ρƒ Π½Π° 32 Π±ΠΈΡ‚Π½ΠΎΠΉ Π½Π° windows 7. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ 64 Π±ΠΈΡ‚Π½ΡƒΡŽ ΠΈΠ³Ρ€Ρƒ Π½Π° 32 Π±ΠΈΡ‚Π½ΠΎΠΉ Π½Π° windows 7. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ 64 Π±ΠΈΡ‚Π½ΡƒΡŽ ΠΈΠ³Ρ€Ρƒ Π½Π° 32 Π±ΠΈΡ‚Π½ΠΎΠΉ Π½Π° windows 7. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ 64 Π±ΠΈΡ‚Π½ΡƒΡŽ ΠΈΠ³Ρ€Ρƒ Π½Π° 32 Π±ΠΈΡ‚Π½ΠΎΠΉ Π½Π° windows 7. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ 64 Π±ΠΈΡ‚Π½ΡƒΡŽ ΠΈΠ³Ρ€Ρƒ Π½Π° 32 Π±ΠΈΡ‚Π½ΠΎΠΉ Π½Π° windows 7
Рисунок 4. Π’Π΅ΠΏΠ΅Ρ€ΡŒ доступна 32-битная ΠΈ 64-битная конфигурация

Если Π²Π°ΠΌ ΠΏΠΎΠ²Π΅Π·Π΅Ρ‚, Ρ‚ΠΎ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π·Π°Π½ΠΈΠΌΠ°Ρ‚ΡŒΡΡ настройкой 64-Π±ΠΈΡ‚Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° нСобходимости Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚. Но это сильно зависит ΠΎΡ‚ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°, Π΅Π³ΠΎ слоТности ΠΈ количСства ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ. ЕдинствСнноС, Ρ‡Ρ‚ΠΎ стоит сразу ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ, это Ρ€Π°Π·ΠΌΠ΅Ρ€ стСка. Π’ случаС Ссли Π² вашСм ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ стСк Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Π² 1 ΠΌΠ΅Π³Π°Π±Π°ΠΉΡ‚, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ смысл Π·Π°Π΄Π°Ρ‚ΡŒ Π΅Π³ΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ Π² 2 ΠΌΠ΅Π³Π°Π±Π°ΠΉΡ‚Π° для 64-Π±ΠΈΡ‚Π½ΠΎΠΉ вСрсии. Π­Ρ‚ΠΎ Π½Π΅ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, Π½ΠΎ Π»ΡƒΡ‡ΡˆΠ΅ Π·Π°Ρ€Π°Π½Π΅Π΅ ΠΏΠΎΠ΄ΡΡ‚Ρ€Π°Ρ…ΠΎΠ²Π°Ρ‚ΡŒΡΡ. Если Ρƒ вас ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Ρ€Π°Π·ΠΌΠ΅Ρ€ стСка, ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹ΠΉ ΠΎΡ‚ Ρ€Π°Π·ΠΌΠ΅Ρ€Π° ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ смысл ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π΅Π³ΠΎ для 64-Π±ΠΈΡ‚Π½ΠΎΠΉ вСрсии Π² 2 Ρ€Π°Π·Π° большС. Для этого Π² настройках ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π½Π°ΠΉΠ΄ΠΈΡ‚Π΅ ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ Stack Reserve Size ΠΈ Stack Commit Size.

5. Π¨Π°Π³ пятый. ΠšΠΎΠΌΠΏΠΈΠ»ΡΡ†ΠΈΡ прилоТСния

Π—Π΄Π΅ΡΡŒ Π±Ρ‹Π»ΠΎ Π±Ρ‹ Ρ…ΠΎΡ€ΠΎΡˆΠΎ Ρ€Π°ΡΡΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΎ Ρ‚ΠΈΠΏΠΈΡ‡Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°Ρ…, Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‰ΠΈΡ… Π½Π° этапС компиляции 64-Π±ΠΈΡ‚Π½ΠΎΠΉ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ. Π Π°ΡΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ, ΠΊΠ°ΠΊΠΈΠ΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‚ со сторонними Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°ΠΌΠΈ, Ρ€Π°ΡΡΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ компилятор Π² ΠΊΠΎΠ΄Π΅ связанного с функциями WInAPI Π±ΠΎΠ»Π΅Π΅ Π½Π΅ допустит помСщСния указатСля Π² Ρ‚ΠΈΠΏ LONG ΠΈ Π²Π°ΠΌ Π±ΡƒΠ΄Π΅Ρ‚ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΌΠΎΠ΄Π΅Ρ€Π½ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ свой ΠΊΠΎΠ΄ ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚ΠΈΠΏ LONG_PTG. И ΠΌΠ½ΠΎΠ³ΠΎΠ΅, ΠΌΠ½ΠΎΠ³ΠΎΠ΅ Π΄Ρ€ΡƒΠ³ΠΎΠ΅. К соТалСнию этого Ρ‚Π°ΠΊ ΠΌΠ½ΠΎΠ³ΠΎ ΠΈ ошибки Ρ‚Π°ΠΊ Ρ€Π°Π·Π½ΠΎΠΎΠ±Ρ€Π°Π·Π½Ρ‹, Ρ‡Ρ‚ΠΎ Π½Π΅Ρ‚ возмоТности ΠΈΠ·Π»ΠΎΠΆΠΈΡ‚ΡŒ это Π² Ρ€Π°ΠΌΠΊΠ°Ρ… ΠΎΠ΄Π½ΠΎΠΉ ΡΡ‚Π°Ρ‚ΡŒΠΈ ΠΈ Π΄Π°ΠΆΠ΅, ΠΏΠΎΠΆΠ°Π»ΡƒΠΉ, ΠΊΠ½ΠΈΠ³ΠΈ. Π’Π°ΠΌ придСтся самим ΠΏΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ всС ошибки, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ выдаст компилятор ΠΈ Π½ΠΎΠ²Ρ‹Π΅ прСдупрСТдСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Ρ€Π°Π½Π΅Π΅ Π½Π΅ Π±Ρ‹Π»ΠΎ ΠΈ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ случаС Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ, ΠΊΠ°ΠΊ ΠΌΠΎΠ΄Π΅Ρ€Π½ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠ΄.
Частично ΠΎΠ±Π»Π΅Π³Ρ‡ΠΈΡ‚ΡŒ Тизнь ΠΌΠΎΠΆΠ΅Ρ‚ коллСкция ссылок Π½Π° рСсурсы, посвящСнныС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ 64-Π±ΠΈΡ‚Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ: http://www.viva64.com/links/64-bit-development/. ΠšΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΡ постоянно пополняСтся ΠΈ Π°Π²Ρ‚ΠΎΡ€ Π±ΡƒΠ΄Π΅Ρ‚ Π±Π»Π°Π³ΠΎΠ΄Π°Ρ€Π΅Π½ читатСлям, Ссли ΠΎΠ½ΠΈ ΠΏΡ€ΠΈΡˆΠ»ΡŽΡ‚ Π΅ΠΌΡƒ ссылки Π½Π° рСсурсы, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅, ΠΏΠΎ ΠΈΡ… мнСнию, Π·Π°ΡΠ»ΡƒΠΆΠΈΠ²Π°ΡŽΡ‚ внимания.
ΠžΡΡ‚Π°Π½ΠΎΠ²ΠΈΠΌΡΡ здСсь Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° Ρ‚ΠΈΠΏΠ°Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ интСрСс для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΏΡ€ΠΈ ΠΌΠΈΠ³Ρ€Π°Ρ†ΠΈΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Π­Ρ‚ΠΈ Ρ‚ΠΈΠΏΡ‹ прСдставлСны Π² Π’Π°Π±Π»ΠΈΡ†Π΅ N3. Π‘ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ ошибок ΠΏΡ€ΠΈ компиляции Π±ΡƒΠ΄Π΅Ρ‚ связано с использованиС ΠΈΠΌΠ΅Π½Π½ΠΎ этих Ρ‚ΠΈΠΏΠΎΠ².

Π’ΠΈΠΏΠ Π°Π·ΠΌΠ΅Ρ€Π½ΠΎΡΡ‚ΡŒΡ‚ΠΈΠΏΠ° Π½Π°ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅x32 / x64ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅
int32 / 32Π‘Π°Π·ΠΎΠ²Ρ‹ΠΉ Ρ‚ΠΈΠΏ. На 64-Π±ΠΈΡ‚Π½Ρ‹Ρ… систСмах остался 32-Π±ΠΈΡ‚Π½Ρ‹ΠΌ.
long32 / 32Π‘Π°Π·ΠΎΠ²Ρ‹ΠΉ Ρ‚ΠΈΠΏ. На 64-Π±ΠΈΡ‚Π½Ρ‹Ρ… Windows систСмах остался 32-Π±ΠΈΡ‚Π½Ρ‹ΠΌ. Π£Ρ‡Ρ‚ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ Π² 64-Π±ΠΈΡ‚Π½Ρ‹Ρ… Linux систСмах этот Ρ‚ΠΈΠΏ Π±Ρ‹Π» Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ Π΄ΠΎ 64-Π±ΠΈΡ‚. НС Π·Π°Π±Ρ‹Π²Π°ΠΉΡ‚Π΅ ΠΎΠ± этом Ссли Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚Π΅ ΠΊΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π΄ΠΎΠ»ΠΆΠ΅Π½ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ для Windows ΠΈ для Linux систСм.
size_t32 / 64Π‘Π°Π·ΠΎΠ²Ρ‹ΠΉ Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²Ρ‹ΠΉ Ρ‚ΠΈΠΏ. Π Π°Π·ΠΌΠ΅Ρ€ Ρ‚ΠΈΠΏΠ° выбираСтся Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π² Π½Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ Π·Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π°Π·ΠΌΠ΅Ρ€ тСорСтичСски Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΠ³ΠΎ массива. Π’ Ρ‚ΠΈΠΏ size_t ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ бСзопасно ΠΏΠΎΠΌΠ΅Ρ‰Π΅Π½ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ (ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΡΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ Π½Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ классов, Π½ΠΎ это особСнный случай).
ptrdiff_t32 / 64АналогичСн Ρ‚ΠΈΠΏΡƒ size_t, Π½ΠΎ являСтся Π·Π½Π°ΠΊΠΎΠ²Ρ‹ΠΌ. Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ выраТСния, Π³Π΄Π΅ ΠΎΠ΄ΠΈΠ½ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ вычитаСтся ΠΈΠ· Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ (ptr1-ptr2), ΠΊΠ°ΠΊ Ρ€Π°Π· Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ Ρ‚ΠΈΠΏ ptrdiff_t.
Π£ΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ32 / 64Π Π°Π·ΠΌΠ΅Ρ€ указатСля Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ зависит ΠΎΡ‚ разрядности ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹. Π‘ΡƒΠ΄ΡŒΡ‚Π΅ Π°ΠΊΠΊΡƒΡ€Π°Ρ‚Π½Ρ‹ ΠΏΡ€ΠΈ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΈΠΈ ΡƒΠΊΠ·Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΊ Π΄Ρ€ΡƒΠ³ΠΈΠΌ Ρ‚ΠΈΠΏΠ°ΠΌ.
__int6464 / 64Π—Π½Π°ΠΊΠΎΠ²Ρ‹ΠΉ 64-Π±ΠΈΡ‚Π½Ρ‹ΠΉ Ρ‚ΠΈΠΏ.
DWORD32 / 3232-Π±ΠΈΡ‚Π½Ρ‹ΠΉ Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²Ρ‹ΠΉ Ρ‚ΠΈΠΏ. ОбъявлСн Π² WinDef.h ΠΊΠ°ΠΊ:typedef unsigned long DWORD;
DWORDLONG64 / 6464-Π±ΠΈΡ‚Π½Ρ‹ΠΉ Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²Ρ‹ΠΉ Ρ‚ΠΈΠΏ. ОбъявлСн Π² WinNT.h ΠΊΠ°ΠΊ:typedef ULONGLONG DWORDLONG;
DWORD_PTR32 / 64Π‘Π΅Π·Π·Π½Π°ΠΊΠΎΠ²Ρ‹ΠΉ Ρ‚ΠΈΠΏ, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠΌΠ΅Ρ‰Π°Ρ‚ΡŒ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ. ОбъявлСн Π² BaseTsd.h ΠΊΠ°ΠΊ:typedef ULONG_PTR DWORD_PTR;
DWORD3232 / 3232-Π±ΠΈΡ‚Π½Ρ‹ΠΉ Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²Ρ‹ΠΉ Ρ‚ΠΈΠΏ. ОбъявлСн Π² BaseTsd.h ΠΊΠ°ΠΊ:typedef unsigned int DWORD32;
DWORD6464 / 6464-Π±ΠΈΡ‚Π½Ρ‹ΠΉ Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²Ρ‹ΠΉ Ρ‚ΠΈΠΏ. ОбъявлСн Π² BaseTsd.h ΠΊΠ°ΠΊ:typedef unsigned __int64 DWORD64;
HALF_PTR16 / 32Половина указатСля. ОбъявлСн Π² Basetsd.h ΠΊΠ°ΠΊ:#ifdef _WIN64 typedef int HALF_PTR;#else typedef short HALF_PTR;#endif
INT_PTR32 / 64Π—Π½Π°ΠΊΠΎΠ²Ρ‹ΠΉ Ρ‚ΠΈΠΏ, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠΌΠ΅Ρ‰Π°Ρ‚ΡŒ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ. ОбъявлСн Π² BaseTsd.h ΠΊΠ°ΠΊ:#if defined(_WIN64) typedef __int64 INT_PTR; #else typedef int INT_PTR;#endif
LONG32 / 32Π—Π½Π°ΠΊΠΎΠ²Ρ‹ΠΉ Ρ‚ΠΈΠΏ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ остался 32-Π±ΠΈΡ‚Π½Ρ‹ΠΌ. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ… случаях Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ слСдуСт ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ LONG_PTR. ОбъявлСн Π² WinNT.h ΠΊΠ°ΠΊ:typedef long LONG;
LONG_PTR32 / 64Π—Π½Π°ΠΊΠΎΠ²Ρ‹ΠΉ Ρ‚ΠΈΠΏ, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠΌΠ΅Ρ‰Π°Ρ‚ΡŒ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ. ОбъявлСн Π² BaseTsd.h ΠΊΠ°ΠΊ:#if defined(_WIN64) typedef __int64 LONG_PTR; #else typedef long LONG_PTR;#endif
LPARAM32 / 64ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ для посылки сообщСний. ОбъявлСн Π² WinNT.h ΠΊΠ°ΠΊ:typedef LONG_PTR LPARAM;
SIZE_T32 / 64Аналог Ρ‚ΠΈΠΏΠ° size_t. ОбъявлСн Π² BaseTsd.h ΠΊΠ°ΠΊ:typedef ULONG_PTR SIZE_T;
SSIZE_T32 / 64Аналог Ρ‚ΠΈΠΏΠ° ptrdiff_t. ОбъявлСн Π² BaseTsd.h ΠΊΠ°ΠΊ:typedef LONG_PTR SSIZE_T;
ULONG_PTR32 / 64Π‘Π΅Π·Π·Π½Π°ΠΊΠΎΠ²Ρ‹ΠΉ Ρ‚ΠΈΠΏ, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠΌΠ΅Ρ‰Π°Ρ‚ΡŒ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ. ОбъявлСн Π² BaseTsd.h ΠΊΠ°ΠΊ:#if defined(_WIN64) typedef unsigned __int64 ULONG_PTR;#else typedef unsigned long ULONG_PTR;#endif
WORD16 / 16Π‘Π΅Π·Π·Π½Π°ΠΊΠΎΠ²Ρ‹ΠΉ 16-Π±ΠΈΡ‚Π½Ρ‹ΠΉ Ρ‚ΠΈΠΏ. ОбъявлСн Π² WinDef.h ΠΊΠ°ΠΊ:typedef unsigned short WORD;
WPARAM32 / 64ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ для посылки сообщСний. ОбъявлСн Π² WinDef.h ΠΊΠ°ΠΊ:typedef UINT_PTR WPARAM;

Π’Π°Π±Π»ΠΈΡ†Π° N3. Π’ΠΈΠΏΡ‹ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠ΅ интСрСс ΠΏΡ€ΠΈ пСрСносС 32-Π±ΠΈΡ‚Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π½Π° 64-Π±ΠΈΡ‚Ρ‹Π΅ Windows систСмы.

6. Диагностика скрытых ошибок

Если Π²Ρ‹ Π΄ΡƒΠΌΠ°Π΅Ρ‚Π΅, Ρ‡Ρ‚ΠΎ послС исправлСния всСх ошибок компиляции Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΎ Π΄ΠΎΠ»Π³ΠΎΠΆΠ΄Π°Π½Π½ΠΎΠ΅ 64-Π±ΠΈΡ‚Π½ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Ρ‚ΠΎ придСтся вас Ρ€Π°Π·ΠΎΡ‡Π°Ρ€ΠΎΠ²Π°Ρ‚ΡŒ. Π‘Π°ΠΌΠΎΠ΅ слоТноС Π²ΠΏΠ΅Ρ€Π΅Π΄ΠΈ. На этапС компиляции Π²Π°ΠΌΠΈ Π±ΡƒΠ΄ΡƒΡ‚ исправлСны самыС явныС ошибки, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ смог ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΡ‚ΡŒ компилятор, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π² основном связаны с Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒΡŽ нСявного привСдСния Ρ‚ΠΈΠΏΠΎΠ². Но это Π²Π΅Ρ€Ρ…ΡƒΡˆΠΊΠ° айсбСрга. Основная Ρ‡Π°ΡΡ‚ΡŒ ошибок скрыта. Π­Ρ‚ΠΈ ошибки с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния абстрактного языка Π‘ΠΈ++ смотрятся бСзопасно ΠΈΠ»ΠΈ замаскированы явными привСдСниями Ρ‚ΠΈΠΏΠΎΠ². Π’Π°ΠΊΠΈΡ… ошибок Π² нСсколько Ρ€Π°Π· большС, Ρ‡Π΅ΠΌ количСство ошибок выявлСнных Π½Π° этапС компиляции.
На ΠΊΠ»ΡŽΡ‡ /Wp64 Π½Π°Π΄Π΅ΠΆΠ΄Ρ‹ Π²ΠΎΠ·Π»Π°Π³Π°Ρ‚ΡŒ Π½Π΅ слСдуСт. Π­Ρ‚ΠΎ ΠΊΠ»ΡŽΡ‡ часто прСподносится ΠΊΠ°ΠΊ чудСсноС срСдство поиска 64-Π±ΠΈΡ‚Π½Ρ‹Ρ… ошибок. Π’ Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΊΠ»ΡŽΡ‡ /Wp64 всСго лишь Π΄Π°Π΅Ρ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΈ компиляции 32-Π±ΠΈΡ‚Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ прСдупрСТдСния, Ρ‡Ρ‚ΠΎ Π² 64-Π±ΠΈΡ‚Π½ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ участки ΠΊΠΎΠ΄Π° Π±ΡƒΠ΄ΡƒΡ‚ Π½Π΅ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½Ρ‹. ΠŸΡ€ΠΈ компиляции 64-Π±ΠΈΡ‚Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° эти прСдупрСТдСния Π±ΡƒΠ΄ΡƒΡ‚ Π²Ρ‹Π΄Π°Π½Ρ‹ компилятором Π² любом случаС. И поэтому ΠΏΡ€ΠΈ компиляции 64-Π±ΠΈΡ‚Π½ΠΎΠ³ΠΎ прилоТСния ΠΊΠ»ΡŽΡ‡ /Wp64 игнорируСтся. И ΡƒΠΆ Ρ‚Π΅ΠΌ Π±ΠΎΠ»Π΅Π΅ этот ΠΊΠ»ΡŽΡ‡ Π½Π΅ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π² поискС скрытых ошибок [11].
Рассмотрим нСсколько ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² скрытых ошибок.

6.1. Π―Π²Π½ΠΎΠ΅ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Ρ‚ΠΈΠΏΠΎΠ²

Π‘Π°ΠΌΡ‹ΠΉ простой, Π½ΠΎ вовсС Π½Π΅ самый Π»Π΅Π³ΠΊΠΈΠΉ для обнаруТСния класс ошибок связан с явным ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ΠΌ Ρ‚ΠΈΠΏΠΎΠ², ΠΏΡ€ΠΈ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… происходит ΠΎΠ±Ρ€Π΅Π·Π°Π½ΠΈΠ΅ Π·Π½Π°Ρ‡Π°Ρ‰ΠΈΡ… Π±ΠΈΡ‚.
РаспространСнным ΠΏΡ€ΠΈΠΌΠ΅Ρ€ β€” ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΊ 32-Π±ΠΈΡ‚Π½Ρ‹ΠΌ Ρ‚ΠΈΠΏΠ°ΠΌ ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ ΠΈΡ… Π² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ SendMessage:

Π—Π΄Π΅ΡΡŒ явноС ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Ρ‚ΠΈΠΏΠ° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для прСвращСния указатСля Π² числовой Ρ‚ΠΈΠΏ. Для 32-Π±ΠΈΡ‚Π½ΠΎΠΉ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Ρ‹ΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π΅Π½, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ послСдний ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ SendMessage ΠΈΠΌΠ΅Π΅Ρ‚ Ρ‚ΠΈΠΏ LPARAM, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π° 32-Π±ΠΈΡ‚Π½ΠΎΠΉ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π΅ совпадаСт с DWORD. Для 64-Π±ΠΈΡ‚Π½ΠΎΠΉ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π΅ использованиС DWORD ΠΎΡˆΠΈΠ±ΠΎΡ‡Π½ΠΎ ΠΈ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ Π·Π°ΠΌΠ΅Π½Π΅Π½ΠΎ Π½Π° LPARAM. Π’ΠΈΠΏ LPARAM ΠΈΠΌΠ΅Π΅Ρ‚ Π² зависимости ΠΎΡ‚ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ Ρ€Π°Π·ΠΌΠ΅Ρ€ 32 ΠΈΠ»ΠΈ 64 Π±ΠΈΡ‚Π°.
Π­Ρ‚ΠΎ простой случай, Π½ΠΎ часто ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Ρ‚ΠΈΠΏΠ° выглядит Π±ΠΎΠ»Π΅Π΅ изысканно ΠΈ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΡ‚ΡŒ Π΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ прСдупрСТдСния компилятора ΠΈΠ»ΠΈ поиском ΠΏΠΎ тСксту ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ. Π―Π²Π½Ρ‹Π΅ привСдСния Ρ‚ΠΈΠΏΠΎΠ² ΠΏΠΎΠ΄Π°Π²Π»ΡΡŽΡ‚ диагностику компилятора, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΎΠ½ΠΈ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΈ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Ρ‹, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΊΠ°Π·Π°Ρ‚ΡŒ компилятору Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Ρ‚ΠΈΠΏΠΎΠ² ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ ΠΈ программист взял Π½Π° сСбя ΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²Π΅Π½Π½ΠΎΡΡ‚ΡŒ Π·Π° Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ ΠΊΠΎΠ΄Π°. Π―Π²Π½Ρ‹ΠΉ поиск Ρ‚ΠΎΠΆΠ΅ Π½Π΅ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚. Π’ΠΈΠΏΡ‹ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π½Π΅ стандартныС ΠΈΠΌΠ΅Π½Π° (Π·Π°Π΄Π°Π½Π½Ρ‹Π΅ программистом Ρ‡Π΅Ρ€Π΅Π· typedef), Π° способов ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²ΠΈΡ‚ΡŒ явноС ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Ρ‚ΠΈΠΏΠΎΠ² Ρ‚ΠΎΠΆΠ΅ Π½Π΅ ΠΌΠ°Π»ΠΎ. Для Π½Π°Π΄Π΅ΠΆΠ½ΠΎΠΉ диагностики ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… ошибок Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ инструмСнтарий, Ρ‚Π°ΠΊΠΎΠΉ ΠΊΠ°ΠΊ Π°Π½Π°Π»ΠΈΠ·Π°Ρ‚ΠΎΡ€Ρ‹ Viva64 ΠΈΠ»ΠΈ PC-Lint.

6.2. НСявноС ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Ρ‚ΠΈΠΏΠΎΠ²

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ связан ΡƒΠΆΠ΅ с нСявным ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ΠΌ Ρ‚ΠΈΠΏΠ°, ΠΏΡ€ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Ρ‚Π°ΠΊΠΆΠ΅ происходит потСря Π·Π½Π°Ρ‡Π°Ρ‰ΠΈΡ… Π±ΠΈΡ‚. Код Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ fread осущСствляСт Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ ΠΈΠ· Ρ„Π°ΠΉΠ»Π°, Π½ΠΎ Π½Π΅ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π΅Π½ ΠΏΡ€ΠΈ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ΅ чтСния Π±ΠΎΠ»Π΅Π΅ 2 Π³ΠΈΠ³Π°Π±Π°ΠΉΡ‚ Π΄Π°Π½Π½Ρ‹Ρ… Π½Π° 64-Π±ΠΈΡ‚Π½ΠΎΠΉ систСмС.

Ѐункция __fread Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Ρ‚ΠΈΠΏ size_t, Π½ΠΎ для хранСния количСства ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Π½Π½Ρ‹Ρ… Π±Π°ΠΉΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Ρ‚ΠΈΠΏ int. Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ ΠΏΡ€ΠΈ Π±ΠΎΠ»ΡŒΡˆΠΈΡ… ΠΎΠ±ΡŠΠ΅ΠΌΠ°Ρ… Ρ‡ΠΈΡ‚Π°Π΅ΠΌΡ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… функция ΠΌΠΎΠΆΠ΅Ρ‚ Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ Π½Π΅ Ρ‚ΠΎ количСство Π±Π°ΠΉΡ‚, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π½Π° самом Π΄Π΅Π»Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Π½ΠΎ.
Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ это Π±Π΅Π·Π³Ρ€Π°ΠΌΠΎΡ‚Π½Ρ‹ΠΉ ΠΊΠΎΠ΄ Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…, Ρ‡Ρ‚ΠΎ ΠΎ Ρ‚Π°ΠΊΠΎΠΌ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΈΠΈ Ρ‚ΠΈΠΏΠ° сообщит компилятор ΠΈ Ρ‡Ρ‚ΠΎ Π²ΠΎΠΎΠ±Ρ‰Π΅ Ρ‚Π°ΠΊΠΎΠΉ ΠΊΠΎΠ΄ Π»Π΅Π³ΠΊΠΎ Π½Π°ΠΉΡ‚ΠΈ ΠΈ ΠΏΠΎΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ. Π­Ρ‚ΠΎ тСорСтичСски. А практичСски Π² Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠΉ ΠΆΠΈΠ·Π½ΠΈ с большими ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°ΠΌΠΈ всС ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠ±ΡΡ‚ΠΎΡΡ‚ΡŒ ΠΈΠ½Π°Ρ‡Π΅. Π­Ρ‚ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ взят ΠΈΠ· исходного ΠΊΠΎΠ΄Π° FreeBSD. Ошибка Π±Ρ‹Π»Π° ΠΏΠΎΠΏΡ€Π°Π²Π»Π΅Π½Π° Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Π΄Π΅ΠΊΠ°Π±Ρ€Π΅ 2008 Π³ΠΎΠ΄Π°! Π­Ρ‚ΠΎ ΠΏΡ€ΠΈΡ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ пСрвая (ΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Π°Ρ) 64-битная вСрсия FreeBSD Π²Ρ‹ΡˆΠ»Π° Π΅Ρ‰Π΅ Π² июнС 2003 Π³ΠΎΠ΄Π°.
Π’ΠΎΡ‚ исходный ΠΊΠΎΠ΄ Π΄ΠΎ исправлСния:
http://www.freebsd.org/cgi/cvsweb.cgi/src/lib/libc/stdio/fread.c?rev=1.14
А Π²ΠΎΡ‚ исправлСнный Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ (Π΄Π΅ΠΊΠ°Π±Ρ€ΡŒ 2008) Π³ΠΎΠ΄Π°:
http://www.freebsd.org/cgi/cvsweb.cgi/src/lib/libc/stdio/fread.c?rev=1.15

6.3. Π Π°Π±ΠΎΡ‚Π° с Π±ΠΈΡ‚Π°ΠΌΠΈ, сдвиги

Π›Π΅Π³ΠΊΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΎΡˆΠΈΠ±ΠΊΡƒ Π² ΠΊΠΎΠ΄Π΅ работящСм с ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ Π±ΠΈΡ‚Π°ΠΌΠΈ. Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Ρ‚ΠΈΠΏ ошибки связан с опСрациями сдвига. Рассмотрим ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

ΠŸΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Ρ‹ΠΉ ΠΊΠΎΠ΄ работоспособСн Π½Π° 32-Π±ΠΈΡ‚Π½ΠΎΠΉ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π΅ ΠΈ позволяСт Π²Ρ‹ΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ Π±ΠΈΡ‚ с Π½ΠΎΠΌΠ΅Ρ€Π°ΠΌΠΈ ΠΎΡ‚ 0 Π΄ΠΎ 31 Π² Π΅Π΄ΠΈΠ½ΠΈΡ†Ρƒ. ПослС пСрСноса ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° 64-Π±ΠΈΡ‚Π½ΡƒΡŽ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡƒ Π²ΠΎΠ·Π½ΠΈΠΊΠ½Π΅Ρ‚ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ Π²Ρ‹ΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ Π±ΠΈΡ‚Ρ‹ ΠΎΡ‚ 0 Π΄ΠΎ 63. Но Π΄Π°Π½Π½Ρ‹ΠΉ ΠΊΠΎΠ΄ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ выставит Π±ΠΈΡ‚Ρ‹, с Π½ΠΎΠΌΠ΅Ρ€Π°ΠΌΠΈ 32-63. ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ Β«1Β» ΠΈΠΌΠ΅Π΅Ρ‚ Ρ‚ΠΈΠΏ int ΠΈ ΠΏΡ€ΠΈ сдвигС Π½Π° 32 ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ ΠΏΡ€ΠΎΠΈΠ·ΠΎΠΉΠ΄Π΅Ρ‚ ΠΏΠ΅Ρ€Π΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½Π° рисункС 5. ΠŸΠΎΠ»ΡƒΡ‡ΠΈΠΌ ΠΌΡ‹ Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ 0 (рисунок 5-B) ΠΈΠ»ΠΈ 1 (рисунок 5-C) зависит ΠΎΡ‚ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ компилятора.
ΠΊΠ°ΠΊ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ 64 Π±ΠΈΡ‚Π½ΡƒΡŽ ΠΈΠ³Ρ€Ρƒ Π½Π° 32 Π±ΠΈΡ‚Π½ΠΎΠΉ Π½Π° windows 7. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ 64 Π±ΠΈΡ‚Π½ΡƒΡŽ ΠΈΠ³Ρ€Ρƒ Π½Π° 32 Π±ΠΈΡ‚Π½ΠΎΠΉ Π½Π° windows 7. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ 64 Π±ΠΈΡ‚Π½ΡƒΡŽ ΠΈΠ³Ρ€Ρƒ Π½Π° 32 Π±ΠΈΡ‚Π½ΠΎΠΉ Π½Π° windows 7. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ 64 Π±ΠΈΡ‚Π½ΡƒΡŽ ΠΈΠ³Ρ€Ρƒ Π½Π° 32 Π±ΠΈΡ‚Π½ΠΎΠΉ Π½Π° windows 7. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ 64 Π±ΠΈΡ‚Π½ΡƒΡŽ ΠΈΠ³Ρ€Ρƒ Π½Π° 32 Π±ΠΈΡ‚Π½ΠΎΠΉ Π½Π° windows 7
Рисунок 5. A β€” ΠšΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½Π°Ρ установка 31-ΠΎΠ³ΠΎ Π±ΠΈΡ‚Π° Π² 32-Π±ΠΈΡ‚Π½ΠΎΠΌ ΠΊΠΎΠ΄Π΅; B,C β€” Ошибка установки 32-ΠΎΠ³ΠΎ Π±ΠΈΡ‚Π° Π½Π° 64-Π±ΠΈΡ‚Π½ΠΎΠΉ систСмС (Π΄Π²Π° Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π° повСдСния)

Для исправлСния ΠΊΠΎΠ΄Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ константу Β«1Β» Ρ‚ΠΎΠ³ΠΎ ΠΆΠ΅ Ρ‚ΠΈΠΏΠ°, Ρ‡Ρ‚ΠΎ ΠΈ пСрСмСнная mask:

Π—Π°ΠΌΠ΅Ρ‚ΠΈΠΌ Ρ‚Π°ΠΊΠΆΠ΅, Ρ‡Ρ‚ΠΎ нСисправлСнный ΠΊΠΎΠ΄ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ Π΅Ρ‰Π΅ ΠΊ ΠΎΠ΄Π½ΠΎΠΉ интСрСсной ошибкС. ΠŸΡ€ΠΈ выставлСнии 31 Π±ΠΈΡ‚Π° Π½Π° 64-Π±ΠΈΡ‚Π½ΠΎΠΉ систСмС Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π±ΡƒΠ΄Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 0xffffffff80000000 (см. рисунок 6). Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ выраТСния 1

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *