សព្វថ្ងៃនេះ Laptop ជាច្រើនដែលចេញថ្មីៗ ច្រើនត្រូវបានគេ Pre-install
windows 64 bit រួចជាស្រេច ក្រៅពីនេះ Device Driver
របស់វាទៀតសោតក៏ត្រូវបានគេដាក់តែ Driver ប្រភេទ 64 bitដែរគ្មាន Device
Driver 32 bit ត្រូវបានគេដាក់មកជាមួយទេ បើអ្នកទិញ Laptop ថ្មីឲ្យគេដាក់
windows ប្រភេទ 32 bit នោះគេនឹងដកចេញ windows 64 bit ចេញដែរ ។
កាលបើទិញ Laptop មកហើយតែបែរជាវាមាន windows 64 bit គឺជាការមួយពិបាកសម្រាប់អ្នកប្រើ ដោយហេតុថា មានប្រូក្រាមតិចតួចណាស់ ដែលអាចដំណើរការជាមួយ windows 64 bit បាន ។ ដើម្បីដោះស្រាយបញ្ហានេះ Microsoft បានដាក់រួមបញ្ចូល Set របស់ DLL មួយចំនួននៅក្នុង windows 64 bit រួចជាស្រេច ហើយឲ្យឈ្មោះវាថា WOW 64 (windows on windows 64) ។
សូមបញ្ជាក់ថា WOW 64 ស្គាល់ត្រឹមប្រូក្រាមដែលសរសេរ Code ជា 32 bit ប៉ុណ្ណោះ ប្រូក្រាមមួយដែលសរសេរ Code លាយគ្នា 16 bit ផងនឹង 32 bit ផង មិនអាចដំណើរបាន ឬ Support ដោយ WOW 64 ឡើយ ទោះបីយើងអាច install វាបានក៏ដោយ ។ ពេលបច្ចុប្បន្ននេះប្រូក្រាមសឹងទាំងអស់គឺជា 32 bit និងមានប្រូក្រាមមួយចំនួននៅមានសល់ Code 16 bit លាយឡំជាមួយ Code 32 bit នៅឡើយ ប្រការមួយទៀតនោះ ក៏មានប្រូក្រាមខ្លះជា Hybrid គឺជា 32 bit ផង និង 64 bit ក្នុងបំណងធ្វើយ៉ាងណាឲ្យអាចប្រើជាមួយទាំង 32 bit និង 64 windows ។
តាមការពិតទៅនៅក្នុង windows 64 bit វាមាន tools មួយចំនួន (ជា DLL) សម្រាប់ត្រងយក Program ដែលយើង install ចូលទៅ ប្រូក្រាមណាជា 32 bit វានឹងដាក់ចូលទៅក្នុង folder Program file មួយដែលមាន 'X86' ជាសំគាល់នៅខាងដើមឈ្មោះរបស់ Program file ចំពោះប្រូក្រាមមួយដែលត្រូវបានគេសរសេរ 64 bit តែម្តង វានឹង install ចូលទៅក្នុងប្រូក្រាម file folder ធម្មតា ។
WOW 64 គឺជា X86 emulator សម្រាប់អនុវត្តឲ្យប្រូក្រាម 32 bit ទាំងឡាយអាចត្រូវបានយកមកប្រើជាមួយ windows 64 bit បាន ។ WOW 64 ត្រូវបាន Microsoft ដាក់វាបញ្ចូល (integrated) ចូលជាមួយ windows 64 រួចជាស្រេច យើងមិនចាំបាច់ត្រូវធ្វើអ្វីទាំងអស់ ។
Set របស់ DLL ដែលស្ថិតនៅក្នុង WOW 64 (window on windows) មានមុខងារញែកប្រូក្រាម 32 bit កុំឲ្យប៉ះទង្គិចគ្នា (Collisions) រវាង 32 bit និង 64 bit ។ ទាំង Console, GU1 និងការគ្រប់គ្រងដំណើរការរបស់ 32 bit ប្រូក្រាមត្រូវបានសម្រួលឲ្យដំណើរបាន មិនឲ្យមានបញ្ហាឡើយ ។ មួយវិញទៀតនោះ WOW 64 ក៏មានភារៈមួយទៀតជួយធ្វើឲ្យប្រូក្រាមរបស់ 32 bit មានការប្រាស្រ័យជាមួយ 64 bit ប្រូក្រាមបានដូចជា Cut and paste រវាង 32 និង 64 ប្រូក្រាម ។ ទោះបីយ៉ាងណាក៏ដោយ 32 bit ប្រូក្រាមមិនអាចប្រូសេស (Processes) ដំណើរការរបស់ 64 bit DLL បានឡើយ ឯចំណែក 64 bit វិញក៏មិនអាច Load 32 bit DLL បានដូចគ្នា ។ ការកំហិតនេះគឺមិនសំដៅចំពោះ image និង file ឡើយ ។
ប្រូក្រាម 32 bit អាច detect មើលថា តើវាដំណើរការនៅក្រោម WOW 64 បានដោយវាត្រូវ Calling (ភ្ជាប់) IS WOW 64 Process Function ។
ដូនបាននិយាយពីខាងដើម 64 bit windows មិនអាចដំណើរការប្រូក្រាមប្រភេទ 16 bit បានឡើយ, បញ្ហាធំជាងគេនោះគឺ នៅត្រង់ Handles របស់ windows 64 មានត្រឹមតែ 32 bit, ហេតុនេះ Handle (អ្នកគ្រប់គ្រងដំណើរការរបស់ប្រូក្រាម) មិនអាចបំព្រួញ និងបញ្ជូនអ្វីៗទៅ 16 bit ប្រូក្រាមដោយគ្មានបញ្ហាបានឡើយ មានន័យថា បញ្ហានឹងកើតមានដោយបាត់បង់ data ។ ហេតុនេះ windows 64 បានកំណត់កំហិតមិនអនុញ្ញាតឲ្យ 16 bit ប្រូក្រាមអាចប្រើបានជាមួយ 64 bit windows ឡើយ ។
ប្រូក្រាមប្រភេទ 32 bit ទាំងអស់ត្រូវដំណើរការ (RUN)នៅក្នុង User Mode ទោះបីមានបញ្ហាអ្វីកើតឡើងក៏ដោយ ក៏បញ្ហានោះកើតមាន នៅស្ថិតត្រឹម User Mode នោះដែរ មិនប៉ះពាល់ដល់ 64 bit Mode ឡើយ ។
នៅក្នុង WOW 64 មានបញ្ចូល DLL ដូចខាងក្រោមនេះ :
* wow 64.dll (dll នេះមានតួនាទីផ្តល់ core emulation infrastracture (រចនាសមព័ន្ធស្នូលរបស់ដំណើរការ) និង Link ទៅ Ntoskrnl.exe entry point function)
* wow 64 Win.dll វាជាអ្នកផ្តល់ Link ទៅ Win32k.sys entry point function
រួមជាមួយ 64 bit Version របស់ Ntdll.dll, ទាំងនេះគឺជា 64 bit binaries ដែលអាច Load ចូលទៅ 32 bit Process បាន ។
នៅពេលចាប់ផ្តើមដំណើរការ wow 64.dll Load 32 bit Version របស់ Ntdll.dll និងដំណើរការវានៅក្នុង initialization code, ហើយវាក៏ Load អ្វីៗផ្សេងទៀត (32 bit dll (s)) ។
DLL ខ្លះត្រូវបាន Load តាមដំណើរការរបស់វា ចំណែក dll ខ្លះត្រូវបានកែដោយ WOW 64 ដើម្បីឲ្យវាប្រើការបាន ជាពិសេសគឺអាច WOW 64 គ្រប់គ្រងវាបាន ជាពិសេសគឺប្រូក្រាមណាដែល Share Memory ជាមួយ 64 bit System Components ។
ជាបន្ថែមទៅលើ Handling operating system calls WOW 64 interface ត្រូវធ្វើឲ្យប្រាកដថា file និង Register Setting សម្រាប់ 32 bit ប្រូក្រាមត្រូវបានញែកមករក្សាទុកនៅកន្លែងដោយឡែកពី file និង Registry របស់ 64 bit ប្រូក្រាម ។
** File Redirection (របៀបចាត់ចែង files)
ប្រូក្រាមទាំងឡាយជាប្រភេទ 32 bit នឹងត្រូវបាន install ទៅក្នុង
C:\Program Files (X86)
32 bit System files ត្រូវបាន install បញ្ចូលទៅក្នុង C:\WINDOWS\SysWOW 64
ចំពោះប្រូក្រាមណាដែលជាប្រភេទ 64 bit វានិងទុក files
C:\Program Fileស
និង System files វាទុកនៅក្នុង
C:\WINDOWS\SYSTEM 32
លក្ខណៈពិសេស (ចម្បង) មួយទៀតនោះគឺ WOW 64 File Redirector ត្រូវដឹងថា មួយណាជា 32 bit director និងមួយណាជា 64 bit directory ។
បញ្ហាមួយដែលយើងត្រូវដឹងផងដែរនោះគឺ មាន 64 bit ប្រូក្រាមជាច្រើនប្រើ 32 bit installation routines, ដើម្បីបែងចែកពេល install ប្រូក្រាមថ្មីសម្រាប់ប្រើវាត្រូវដឹងថា directory ណាមួយដែលវាត្រូវប្រើ ដូចនេះវានឹងផ្អាកសកម្មភាពទាំងឡាយរបស់ WOW 64 មួយខនៈសិន ដើម្បីឲ្យ installation របស់ប្រូក្រាមនោះមានដំណើរការបាន, បន្ទាប់ពី installation របស់ប្រូក្រាមថ្មីត្រូវបានបញ្ចប់នោះទើបវាបើកឲ្យ re-enable WOW 64 ឲ្យដំណើរការធម្មតាវិញ ។ ក្នុងករណីខ្លះពេលធ្វើដូច្នេះវាបង្កជាបញ្ហាមួយចំនួនឡើងដោយ WOW 64 អាចកែទៅលើ directory របស់ Program ទើបបាន install ថ្មីនោះ ឬត្រូវបានរក្សាទុកឲ្យនៅដដែល តែដាក់ខុសកន្លែង directory ដែលត្រូវដាក់ ។
បញ្ហាមួយចំនួនដែលអ្នកប្រើ 64 bit ច្រើនជួបប្រទះនោះគឺ device driver និងប្រូក្រាមមួយចំនួន ដែលមិនអាចដំណើរការបាន បើសិនជា device driver របស់វាមិនត្រូវបានដាក់ (install) ឲ្យត្រូវតាមទីកន្លែង (directory) ។
ប្រូក្រាមខ្លះនៅអាចដំណើរការបានជាមួយ 64 bit Windows ប៉ុន្តែមុខងារ (Function) របស់វាមួយចំនួនត្រូវបានកាត់បន្ថយ ។
សរុបសេចក្តីទៅ គឺយើងអាចប្រើប្រូក្រាមប្រភេទ 32 bit ជាមួយ Windows 7, Vista ប្រភេទ 64 bit បានដោយគ្មានបញ្ហាឡើយ ។ ប្រូក្រាម និង driver ណាដែលមិនអាចប្រើបានជាមួយ 64 bit Windows គឺប្រហែលវាជា 16 bit ឬ 16 bit លាយ 32 bit code ។
* មានអ្នកសាកល្បងខ្លះបានឲ្យយោបល់ថា គេមិនគួរប្រើឈ្មោះ Folder ដែលកំណត់ឲ្យដោយ WOW 64 នោះទេគួរកែវាពី C:\Program Folder (X86) កែទៅជា C:\%Program Folders% ជាជំនួសវិញ ។
ម្យ៉ាងវិញទៀតមុនពេលប្តូរវាមកដូច្នេះ គួរសាកល្បង install ប្រូក្រាម 32 bit ណាមួយជាមុនសិនមុនពេលធ្វើអ្វីជាបន្តទៅទៀត ៕
កាលបើទិញ Laptop មកហើយតែបែរជាវាមាន windows 64 bit គឺជាការមួយពិបាកសម្រាប់អ្នកប្រើ ដោយហេតុថា មានប្រូក្រាមតិចតួចណាស់ ដែលអាចដំណើរការជាមួយ windows 64 bit បាន ។ ដើម្បីដោះស្រាយបញ្ហានេះ Microsoft បានដាក់រួមបញ្ចូល Set របស់ DLL មួយចំនួននៅក្នុង windows 64 bit រួចជាស្រេច ហើយឲ្យឈ្មោះវាថា WOW 64 (windows on windows 64) ។
សូមបញ្ជាក់ថា WOW 64 ស្គាល់ត្រឹមប្រូក្រាមដែលសរសេរ Code ជា 32 bit ប៉ុណ្ណោះ ប្រូក្រាមមួយដែលសរសេរ Code លាយគ្នា 16 bit ផងនឹង 32 bit ផង មិនអាចដំណើរបាន ឬ Support ដោយ WOW 64 ឡើយ ទោះបីយើងអាច install វាបានក៏ដោយ ។ ពេលបច្ចុប្បន្ននេះប្រូក្រាមសឹងទាំងអស់គឺជា 32 bit និងមានប្រូក្រាមមួយចំនួននៅមានសល់ Code 16 bit លាយឡំជាមួយ Code 32 bit នៅឡើយ ប្រការមួយទៀតនោះ ក៏មានប្រូក្រាមខ្លះជា Hybrid គឺជា 32 bit ផង និង 64 bit ក្នុងបំណងធ្វើយ៉ាងណាឲ្យអាចប្រើជាមួយទាំង 32 bit និង 64 windows ។
តាមការពិតទៅនៅក្នុង windows 64 bit វាមាន tools មួយចំនួន (ជា DLL) សម្រាប់ត្រងយក Program ដែលយើង install ចូលទៅ ប្រូក្រាមណាជា 32 bit វានឹងដាក់ចូលទៅក្នុង folder Program file មួយដែលមាន 'X86' ជាសំគាល់នៅខាងដើមឈ្មោះរបស់ Program file ចំពោះប្រូក្រាមមួយដែលត្រូវបានគេសរសេរ 64 bit តែម្តង វានឹង install ចូលទៅក្នុងប្រូក្រាម file folder ធម្មតា ។
WOW 64 គឺជា X86 emulator សម្រាប់អនុវត្តឲ្យប្រូក្រាម 32 bit ទាំងឡាយអាចត្រូវបានយកមកប្រើជាមួយ windows 64 bit បាន ។ WOW 64 ត្រូវបាន Microsoft ដាក់វាបញ្ចូល (integrated) ចូលជាមួយ windows 64 រួចជាស្រេច យើងមិនចាំបាច់ត្រូវធ្វើអ្វីទាំងអស់ ។
Set របស់ DLL ដែលស្ថិតនៅក្នុង WOW 64 (window on windows) មានមុខងារញែកប្រូក្រាម 32 bit កុំឲ្យប៉ះទង្គិចគ្នា (Collisions) រវាង 32 bit និង 64 bit ។ ទាំង Console, GU1 និងការគ្រប់គ្រងដំណើរការរបស់ 32 bit ប្រូក្រាមត្រូវបានសម្រួលឲ្យដំណើរបាន មិនឲ្យមានបញ្ហាឡើយ ។ មួយវិញទៀតនោះ WOW 64 ក៏មានភារៈមួយទៀតជួយធ្វើឲ្យប្រូក្រាមរបស់ 32 bit មានការប្រាស្រ័យជាមួយ 64 bit ប្រូក្រាមបានដូចជា Cut and paste រវាង 32 និង 64 ប្រូក្រាម ។ ទោះបីយ៉ាងណាក៏ដោយ 32 bit ប្រូក្រាមមិនអាចប្រូសេស (Processes) ដំណើរការរបស់ 64 bit DLL បានឡើយ ឯចំណែក 64 bit វិញក៏មិនអាច Load 32 bit DLL បានដូចគ្នា ។ ការកំហិតនេះគឺមិនសំដៅចំពោះ image និង file ឡើយ ។
ប្រូក្រាម 32 bit អាច detect មើលថា តើវាដំណើរការនៅក្រោម WOW 64 បានដោយវាត្រូវ Calling (ភ្ជាប់) IS WOW 64 Process Function ។
ដូនបាននិយាយពីខាងដើម 64 bit windows មិនអាចដំណើរការប្រូក្រាមប្រភេទ 16 bit បានឡើយ, បញ្ហាធំជាងគេនោះគឺ នៅត្រង់ Handles របស់ windows 64 មានត្រឹមតែ 32 bit, ហេតុនេះ Handle (អ្នកគ្រប់គ្រងដំណើរការរបស់ប្រូក្រាម) មិនអាចបំព្រួញ និងបញ្ជូនអ្វីៗទៅ 16 bit ប្រូក្រាមដោយគ្មានបញ្ហាបានឡើយ មានន័យថា បញ្ហានឹងកើតមានដោយបាត់បង់ data ។ ហេតុនេះ windows 64 បានកំណត់កំហិតមិនអនុញ្ញាតឲ្យ 16 bit ប្រូក្រាមអាចប្រើបានជាមួយ 64 bit windows ឡើយ ។
ប្រូក្រាមប្រភេទ 32 bit ទាំងអស់ត្រូវដំណើរការ (RUN)នៅក្នុង User Mode ទោះបីមានបញ្ហាអ្វីកើតឡើងក៏ដោយ ក៏បញ្ហានោះកើតមាន នៅស្ថិតត្រឹម User Mode នោះដែរ មិនប៉ះពាល់ដល់ 64 bit Mode ឡើយ ។
នៅក្នុង WOW 64 មានបញ្ចូល DLL ដូចខាងក្រោមនេះ :
* wow 64.dll (dll នេះមានតួនាទីផ្តល់ core emulation infrastracture (រចនាសមព័ន្ធស្នូលរបស់ដំណើរការ) និង Link ទៅ Ntoskrnl.exe entry point function)
* wow 64 Win.dll វាជាអ្នកផ្តល់ Link ទៅ Win32k.sys entry point function
រួមជាមួយ 64 bit Version របស់ Ntdll.dll, ទាំងនេះគឺជា 64 bit binaries ដែលអាច Load ចូលទៅ 32 bit Process បាន ។
នៅពេលចាប់ផ្តើមដំណើរការ wow 64.dll Load 32 bit Version របស់ Ntdll.dll និងដំណើរការវានៅក្នុង initialization code, ហើយវាក៏ Load អ្វីៗផ្សេងទៀត (32 bit dll (s)) ។
DLL ខ្លះត្រូវបាន Load តាមដំណើរការរបស់វា ចំណែក dll ខ្លះត្រូវបានកែដោយ WOW 64 ដើម្បីឲ្យវាប្រើការបាន ជាពិសេសគឺអាច WOW 64 គ្រប់គ្រងវាបាន ជាពិសេសគឺប្រូក្រាមណាដែល Share Memory ជាមួយ 64 bit System Components ។
ជាបន្ថែមទៅលើ Handling operating system calls WOW 64 interface ត្រូវធ្វើឲ្យប្រាកដថា file និង Register Setting សម្រាប់ 32 bit ប្រូក្រាមត្រូវបានញែកមករក្សាទុកនៅកន្លែងដោយឡែកពី file និង Registry របស់ 64 bit ប្រូក្រាម ។
** File Redirection (របៀបចាត់ចែង files)
ប្រូក្រាមទាំងឡាយជាប្រភេទ 32 bit នឹងត្រូវបាន install ទៅក្នុង
C:\Program Files (X86)
32 bit System files ត្រូវបាន install បញ្ចូលទៅក្នុង C:\WINDOWS\SysWOW 64
ចំពោះប្រូក្រាមណាដែលជាប្រភេទ 64 bit វានិងទុក files
C:\Program Fileស
និង System files វាទុកនៅក្នុង
C:\WINDOWS\SYSTEM 32
លក្ខណៈពិសេស (ចម្បង) មួយទៀតនោះគឺ WOW 64 File Redirector ត្រូវដឹងថា មួយណាជា 32 bit director និងមួយណាជា 64 bit directory ។
បញ្ហាមួយដែលយើងត្រូវដឹងផងដែរនោះគឺ មាន 64 bit ប្រូក្រាមជាច្រើនប្រើ 32 bit installation routines, ដើម្បីបែងចែកពេល install ប្រូក្រាមថ្មីសម្រាប់ប្រើវាត្រូវដឹងថា directory ណាមួយដែលវាត្រូវប្រើ ដូចនេះវានឹងផ្អាកសកម្មភាពទាំងឡាយរបស់ WOW 64 មួយខនៈសិន ដើម្បីឲ្យ installation របស់ប្រូក្រាមនោះមានដំណើរការបាន, បន្ទាប់ពី installation របស់ប្រូក្រាមថ្មីត្រូវបានបញ្ចប់នោះទើបវាបើកឲ្យ re-enable WOW 64 ឲ្យដំណើរការធម្មតាវិញ ។ ក្នុងករណីខ្លះពេលធ្វើដូច្នេះវាបង្កជាបញ្ហាមួយចំនួនឡើងដោយ WOW 64 អាចកែទៅលើ directory របស់ Program ទើបបាន install ថ្មីនោះ ឬត្រូវបានរក្សាទុកឲ្យនៅដដែល តែដាក់ខុសកន្លែង directory ដែលត្រូវដាក់ ។
បញ្ហាមួយចំនួនដែលអ្នកប្រើ 64 bit ច្រើនជួបប្រទះនោះគឺ device driver និងប្រូក្រាមមួយចំនួន ដែលមិនអាចដំណើរការបាន បើសិនជា device driver របស់វាមិនត្រូវបានដាក់ (install) ឲ្យត្រូវតាមទីកន្លែង (directory) ។
ប្រូក្រាមខ្លះនៅអាចដំណើរការបានជាមួយ 64 bit Windows ប៉ុន្តែមុខងារ (Function) របស់វាមួយចំនួនត្រូវបានកាត់បន្ថយ ។
សរុបសេចក្តីទៅ គឺយើងអាចប្រើប្រូក្រាមប្រភេទ 32 bit ជាមួយ Windows 7, Vista ប្រភេទ 64 bit បានដោយគ្មានបញ្ហាឡើយ ។ ប្រូក្រាម និង driver ណាដែលមិនអាចប្រើបានជាមួយ 64 bit Windows គឺប្រហែលវាជា 16 bit ឬ 16 bit លាយ 32 bit code ។
* មានអ្នកសាកល្បងខ្លះបានឲ្យយោបល់ថា គេមិនគួរប្រើឈ្មោះ Folder ដែលកំណត់ឲ្យដោយ WOW 64 នោះទេគួរកែវាពី C:\Program Folder (X86) កែទៅជា C:\%Program Folders% ជាជំនួសវិញ ។
ម្យ៉ាងវិញទៀតមុនពេលប្តូរវាមកដូច្នេះ គួរសាកល្បង install ប្រូក្រាម 32 bit ណាមួយជាមុនសិនមុនពេលធ្វើអ្វីជាបន្តទៅទៀត ៕