ما هو الفرق بين System32 و SysWOW64 المجلدات في Windows؟
في إصدارات 64 بت من Windows ، لديك مجلدان منفصلان من ملفات البرنامج. لكنها لا تنتهي هناك. لديك أيضاً جهازي دلائل نظام منفصلة حيث يتم تخزين مكتبات DLL والملفات التنفيذية: System32 و SysWOW64. على الرغم من الأسماء ، فإن System32 مليئة بملفات 64 بت و SysWOW64 مليء بملفات 32 بت. ماذا يعطي?
ما هو System32?
يحتوي دليل System32 على ملفات نظام Windows ، كلاهما ملفات مكتبة .DLL المستخدمة من قبل البرامج والأدوات المساعدة لبرنامج .EXE والتي تعد جزءًا من Windows. في حين أن معظم الملفات التي تجدها هنا هي جزء من نظام التشغيل Windows ، فإن برامج طرف ثالث تقوم أحيانًا بتثبيت ملفات DLL الخاصة بها إلى هذا المجلد أيضًا..
قد يتم تثبيت التطبيقات التي تعمل على نظامك في مجلد Program Files أو في أي مكان آخر ، ولكنها غالبًا ما تقوم بتحميل مكتبات على مستوى النظام من المجلد System32.
فصل مكتبات 32 بت و 64 بت
في إصدار 64 بت من Windows ، لديك مجلد C: \ Program Files يحتوي على برامج 64 بت وملفاتها ومجلد C: \ Program Files (x86) يحتوي على برامج 32 بت وملفاتها. من المفيد أن يتم فصل هذه الملفات لأن برامج 64 بت تحتاج إلى ملفات DLL 64 بت ، وتحتاج برامج 32 بت إلى ملفات DLL 32 بت.
إذا ذهب برنامج 32 بت إلى تحميل ملف DLL الذي يحتاج إليه ، فإنه يبحث عن إصدار 64 بت ، ويحاول تحميله ، فسوف يتلف. من خلال فصل برنامج 64 بت و 32 بت إلى مجلدين مختلفين من ملفات البرامج ، يضمن Windows عدم اختلاطهم وتسببهم في مشاكل.
ومع ذلك ، لا يتم تخزين كافة ملفات DLL في "ملفات البرامج". يتم تخزين العديد من المكتبات على مستوى النظام المضمنة مع Windows في C: \ System32 ، كما تقوم بعض البرامج بتفريغ ملفات المكتبة الخاصة بها هنا. لذلك ، تماماً كما يحتوي Windows على مجلدات ملفات Program منفصلة 32 بت و 64 بت ، فإنه يحتوي أيضاً على إصدارات 32 بت و 64 بت منفصلة من المجلد System32.
System32 و SysWOW64
على كمبيوتر 32 بت، تخزين كافة برامج 32-بت ملفاتها في C: \ Program Files موقع مكتبة على مستوى النظام هو C: \ System32.
على كمبيوتر 64 بت ، بتخزين البرامج 64 بت ملفاتها في C: \ Program Files ، ويحتوي المجلد C: \ Windows \ System32 على مستوى النظام على مكتبات 64 بت. برامج 32 بت بتخزين الملفات الخاصة بهم في C: \ Program Files (x 86) ، وكان المجلد على مستوى النظام هو C: \ Windows \ SysWOW64.
هذا بالتأكيد أمر غير متوقع. على الرغم من "32" في الاسم ، يحتوي المجلد System32 على مكتبات 64 بت. وعلى الرغم من 64 في الاسم ، يحتوي المجلد SysWOW64 على مكتبات 32 بت - على الأقل على إصدارات 64 بت من Windows.
بشكل عام ، لن تحتاج إلى معرفة ذلك. يقوم نظام التشغيل Windows والبرامج التي تستخدمها تلقائيًا بوضع ملفاتهم في الموقع الصحيح واستخدام المجلد الصحيح. ومع ذلك ، إذا احتجت في أي وقت إلى تثبيت ملف DLL يدويًا في الموقع الصحيح أو العثور على مكان تثبيته - وهو أمر نادر جدًا - فستحتاج إلى معرفة أي.
WOW64 ، شرح
يشير الجزء "WOW64" من الاسم هنا إلى برنامج Microsoft "Windows 32-bit على Windows 64-bit" ، وهو جزء من نظام التشغيل. يسمح هذا لـ Windows بتشغيل برامج 32 بت على إصدار 64 بت من Windows. يعيد WoW64 توجيه الوصول إلى الملفات للتأكد من أن البرامج ستعمل بشكل صحيح.
على سبيل المثال ، إذا قمت بتثبيت برنامج 32 بت على إصدار 64 بت من Windows ويحاول الكتابة إلى المجلد C: \ Program Files ، يشير WoW64 إلى C: \ Program Files (x86). وإذا كان يريد الوصول إلى المجلد C: \ Windows \ System32 ، يشير WoW64 إلى C: \ Windows \ SysWOW64. يقوم Windows بذلك باستخدام معيد توجيه نظام ملفات.
كل هذا يحدث تلقائيا وشفافية في الخلفية. لا يحتاج البرنامج حتى إلى معرفة أنه يعمل على نظام تشغيل 64 بت ، والذي يسمح بتشغيل برامج 32 بت القديمة دون تعديل على إصدارات 64 بت من Windows. كما يقوم WOW64 بإعادة توجيه الوصول إلى السجل ، مما يضمن وجود مناطق منفصلة من السجل لبرامج 64 بت و 32 بت.
فلماذا هو System32 64 بت ، و SysWOW64 32 بت?
كل ذلك يعيدنا إلى سؤال مليون دولار: لماذا المجلد "System32" 64 بت ، و SysWOW64 32 بت?
يبدو أن الإجابة أن العديد من التطبيقات 32 بت تم ضمنية لاستخدام الدليل C: \ Windows \ System32. عندما recompiled المطورين هذه التطبيقات لإصدارات 64 بت من Windows ، استمروا في استخدام الدليل C: \ Windows \ System32.
بدلاً من إعادة تسمية الدليل وإجبار المطورين على الانتقال إلى الجديد وإيقاف العديد من التطبيقات في العملية ، ترك Microsoft "System32" كدليل مكتبة النظام القياسي. قاموا بإنشاء دليل مكتبة جديد للتطبيقات التي تعمل تحت طبقة WoW64 ، والتي أطلقوا عليها اسم "SysWOW64". عندما تفكر في الأمر بهذه الطريقة ، يكون الاسم أكثر منطقية.
نعم ، إنه لأمر سخيف بعض الشيء أن الدليل الذي يحمل "32" في الاسم هو الآن 64 بت. ربما كان يجب أن تكون Microsoft قد شاهدت ذلك عندما أطلق عليها اسم C: \ Windows \ System32 في التسعينات. ولكن ، على الرغم من أن وضع نظام تسمية أكثر وضوحًا سيكون أمرًا رائعًا ، إلا أنه لا يستحق كسر مجموعة من البرامج وإنشاء المزيد من العمل للمطورين للتو من أجل الوصول إلى هناك. هذا يعني أننا عالقون مع System32 و SysWOW64 في المستقبل المنظور.