Kāda ir Windows sistēmas failu "System32" un "SysWOW64" atšķirība?

Satura rādītājs:

Kāda ir Windows sistēmas failu "System32" un "SysWOW64" atšķirība?
Kāda ir Windows sistēmas failu "System32" un "SysWOW64" atšķirība?

Video: Kāda ir Windows sistēmas failu "System32" un "SysWOW64" atšķirība?

Video: Kāda ir Windows sistēmas failu
Video: ЛУЧШАЯ!!! Камера видеонаблюдения 2в1 СЛЕДИТ ЗА ЛЮДЬМИ с полицейской МИГАЛКОЙ И СИРЕНОЙ - YouTube 2024, Aprīlis
Anonim
Windows 64 bitu versijās ir divas atsevišķas programmas failu mapes. Bet tas to nebeidzas. Jums ir arī divi atsevišķi sistēmas direktoriji, kur tiek glabātas DLL bibliotēkas un izpildāmie faili: System32 un SysWOW64. Neskatoties uz nosaukumiem, System32 ir pilns ar 64 bitu failiem, un SysWOW64 ir pilns ar 32 bitu failiem. Tātad, kas dod?
Windows 64 bitu versijās ir divas atsevišķas programmas failu mapes. Bet tas to nebeidzas. Jums ir arī divi atsevišķi sistēmas direktoriji, kur tiek glabātas DLL bibliotēkas un izpildāmie faili: System32 un SysWOW64. Neskatoties uz nosaukumiem, System32 ir pilns ar 64 bitu failiem, un SysWOW64 ir pilns ar 32 bitu failiem. Tātad, kas dod?

Kas ir System32?

System32 direktorijā ir Windows sistēmas faili, abi.DLL bibliotēkas faili, kurus izmanto programmas un.EXE programmu utilītas, kas ir daļa no sistēmas Windows. Kaut arī lielākā daļa šeit atrodamo failu ir daļa no operētājsistēmas Windows, trešās puses programmatūras dažreiz arī šai mapei instalē savus DLL failus.

Jūsu sistēmā esošās lietojumprogrammas var instalēt mapē Program Files vai citur, bet tie bieži iekrauj sistēmas mēroga bibliotēkas no sistēmas32 mapes.

32 bitu un 64 bitu bibliotēku nodalīšana

Windows 64 bitu versijā ir mape C: Program Files, kurā ir 64 bitu programmas un to faili, un mape C: Program Files (x86), kurā ir 32 bitu programmas un to faili. Ir noderīgi atdalīt šos failus, jo 64 bitu programmām nepieciešami 64 bitu DLL faili, un 32 bitu programmām nepieciešami 32 bitu DLL faili.
Windows 64 bitu versijā ir mape C: Program Files, kurā ir 64 bitu programmas un to faili, un mape C: Program Files (x86), kurā ir 32 bitu programmas un to faili. Ir noderīgi atdalīt šos failus, jo 64 bitu programmām nepieciešami 64 bitu DLL faili, un 32 bitu programmām nepieciešami 32 bitu DLL faili.

Ja 32 bitu programma iet, lai ielādētu nepieciešamo DLL failu, atrod 64 bitu versiju un mēģina to ielādēt, tā tiks ataudzēta. Atdalot 64 bitu un 32 bitu programmatūru ar divām dažādām programmas failu mapēm, Windows nodrošina, ka tie netiks sajaukti un radīs problēmas.

Tomēr ne visi DLL faili tiek saglabāti programmas failos. Daudzas sistēmas mēroga bibliotēkas, kas ir iekļautas sistēmā Windows, tiek glabātas sistēmā C: System32, un dažas programmas arī izgāž savus bibliotēkas failus šeit. Tātad, tāpat kā Windows ir atsevišķas 32 un 64 bitu programmu failu mapes, tai ir arī atsevišķas 32 bitu un 64 bitu sistēmas32 mapes versijas.

System32 un SysWOW64

32 bitu datorā visas 32 bitu programmas saglabā savus failus programmā C: Program Files, un sistēmas mēroga bibliotēkas atrašanās vieta ir C: System32.

64 bitu datorā 64 bitu programmas saglabā savus failus programmā C: Program Files, un sistēmas mēroga C: Windows System32 mapē ir 64 bitu bibliotēkas. 32 bitu programmas saglabā savus failus programmā C: Program Files (x86), un sistēmas mēroga mape ir C: Windows SysWOW64.

Tas noteikti ir pretstatīts. Neskatoties uz nosaukumu "32", mapē System32 ir 64 bitu bibliotēkas. Un, neraugoties uz 64 nosaukumu, mapē SysWOW64 ir 32 bitu bibliotēkas - vismaz Windows 64 bitu versijās.

Parasti jums tas nav jāzina. Windows operētājsistēma un programmas, kuras jūs izmantojat, automātiski ievieto failus pareizajā atrašanās vietā un izmanto pareizo mapi. Tomēr, ja jums kādreiz ir nepieciešams manuāli instalēt DLL failu pareizajā atrašanās vietā vai atrast, kur tas ir instalēts, kas ir ļoti reti, jums būs jāzina, kas tas ir.

WOW64, paskaidrots

Piemēram, ja jūs instalējat 32 bitu programmu 64 bitu Windows versijā un mēģina rakstīt mapē C: Program Files, WoW64 norāda to C: Program Files (x86). Un, ja tas vēlas piekļūt mapei C: Windows System32, WoW64 norāda to C: Windows SysWOW64. Windows to dara, izmantojot failu sistēmas redirector.

Tas viss notiek automātiski un pārredzami fonā. Programmai pat nav jāzina, ka tā darbojas 64 bitu operētājsistēmā, kas ļauj vecākām 32 bitu programmām darboties bez izmaiņām 64 bitu Windows versijās. WOW64 arī novirza reģistra piekļuvi, nodrošinot, ka 64 un 32 bitu programmām ir atsevišķas reģistra daļas.

Tātad, kāpēc System32 64 bitu un SysWOW64 32 bitu?

Tas viss, kas mūs atgriežas pie miljoniem dolāru jautājuma: kāpēc sistēma32 ir 64 bitu un 32 bitu sistēma SysWOW64?

Atbilde, šķiet, ka daudzi 32 bitu lietojumprogrammas bija hardcoded izmantot C: Windows System32 direktoriju. Kad izstrādātāji pārkopēja šos pieteikumus 64 bitu Windows versijām, viņi turpināja izmantot direktoriju C: Windows System32.

Tā vietā, lai pārdēvētu direktoriju un piespiestu izstrādātājus pārcelties uz jauno, pārtraucot daudzas programmas šajā procesā, Microsoft atstāja "System32" kā standarta sistēmas bibliotēkas direktoriju. Viņi izveidoja jaunu bibliotēkas direktoriju lietojumprogrammām, kuras darbojas WoW64 slānī, un tās sauca par "SysWOW64". Kad jūs domājat par to šādā veidā, vārds padara daudz jēgas.

Jā, ir nedaudz dīvaina, ka ar nosaukumu "32" direktorija tagad ir 64 bitu. Varbūt Microsoft būtu redzējis, ka tas nāk, kad viņi 90. gados nosauca to par C: Windows System32. Bet, lai gan vienkāršāka nosaukumu shēma būtu jauka, nav vērts ielauzties vairākas programmas un radīt vairāk darba izstrādātājiem, lai tikai tur nokļūtu. Tas nozīmē, ka mēs esam iestrēdzis System32 un SysWOW64 tuvākajā nākotnē.

Ieteicams: