Hemsida » Windows » Skillnad mellan System32 och SysWOW64-mappar i Windows 10

    Skillnad mellan System32 och SysWOW64-mappar i Windows 10

    Om du har använt Windows OS någon tid, är jag säker på att du måste ha sett den här System32-mappen. Om du befinner dig på en 64-bitars dator måste du dock ha märkt att det finns två mappar i din C: \ Windows-katalog. Den första är system32 och den andra är SysWOW64. I det här inlägget kommer vi att lära känna dem, och skillnaden mellan System32 och SysWOW64-mappar i Windows 10.

    Vad är System32-mappen

    System32 mappar alla systemfiler. Dessa är vanligtvis DLL- eller biblioteksfiler. De är de vanligaste programmen som används av program för att komma åt Windows-funktioner. Utöver detta kan program som installeras på din dator också lagra filer inuti den.

    När du installerar ett program händer två saker på en bredare nivå. Huvudprogrammet (EXE) är installerat på programmappen medan dess DLL (vilka förpackningar i dess funktioner etc.) lagras i System32-mappar. Detta är vanlig praxis.

    Vad är SysWOW64-mappen

    Har du märkt en C: \ Programfiler (x86) mapp på din 64-bitars PC? Här betyder x86 32-bitars. Så att installera 32-bitars program på en 64-bitars maskin, C: \ Programfiler (x86) är använd. Medan C: \ Programfiler mappen innehåller 64-bitars program och deras filer.

    Nu kan du skriva en analogi att SysWOW64-mappen måste innehålla endast 64-bitars DLL-filer. Det var den faktiska avsikten, men det fungerade inte. Om du manuellt kontrollerar finns det mycket 64-bitars DLL i mappen System 32 och 32-bitars DLL i SysWOW64-mappen.

    Så varför är en 32-bitars markerad mapp med en 64-bitars mapp, och varför är en 64-bitars markerad mapp som innehåller alla 32-bitars DLLs?

    Skillnad mellan System32 och SysWOW64-mappar

    Båda är systemmappar, och de innehåller systembrett DLL eller filer. Men de följer inte bara deras namn, tack vare hårdkodad programmering.

    På en 64-bitars dator, 64-bitars programbutik-

    • Primärfiler som EXE i C: \ Programfiler.
    • Systemövergripande filer som DLL etc. i mappen C: \ Windows \ System32 innehåller 64-bitars bibliotek.

    Men 32-bitarsprogrammen lagras-

    • Primärfiler i C: \ Programfiler (x86)
    • Systemövergripande mapp är C: \ Windows \ SysWOW64.

    När ett 32-bitars program vill installera sina 32-bitars DLL-filer till C: \ Windows \ System32, kommer det att omdirigeras till C: \ Windows \ SysWOW64. Detta gör i huvudsak System32 bara 64-bitars bibliotek. Microsoft kunde inte ta bort det eftersom det skulle ha brutit många program.

    Vad som hände är att de flesta utvecklarna rullade ut sina 32-bitarsprogram på ett 64-bitars system där C: \ Windows \ System32 fortfarande används. Detta var hårdkodat i sitt program. Eftersom Microsoft inte ville bryta program, tänkte de denna omdirigering.

    Detta säkerställer att allt händer i bakgrunden utan att utvecklare behöver göra mycket arbete. När något begärs av ett 32-bitars program från System32-mappen, omdirigeras det tyst till SysWOW64-mappen som innehåller alla 32-bitars DLL. Det finns ingen omdirigering som behövs för 64-bitarsprogrammet eftersom de har standardmapparna på plats.

    Kort sagt: Windows x64 har en System32-mapp som innehåller 64-bitars DLL-filer. En andra SysWOW64-mapp innehåller 32-bitars DLL: er. Native 64-bitars processer hittar sina DLL-filer där de förväntar sig att de ska visas i System32-mappen. För 32-bitars processer begär OS omdirigeringar och visar dem SysWOW64-mappen.

    Detsamma gjordes för Windows Registry - 32 bitars och 64-bitars program separeras.

    WOW i SysWOW64

    Istället för att namnge det som System64 heter Microsoft den här mappen som SysWOW64. WOW står för Windows (32-bitars) på Windows (64-bitars). 32-bitars program kunde köras på 64-bitars applikationer, och så fick det sitt namn.

    Microsoft såg inte att det kom säkert, annars skulle System32-mappen aldrig ha fått sitt namn. Det kunde ha varit ganska enklare. Det var dock ett utmärkt beslut att inte byta namn på mappen och istället använda en omdirigering. Det såg till att både konsumenter och utvecklare inte förlorade sin app när de flyttade till 64-bitars.

    Medan 32-bitars system sätts långsamt ut och ersätts med 64-bitars datorer, kommer det att ta lite tid. Förmodligen i framtiden kan Microsoft göra något åt ​​det. Förhoppningsvis finns det ingen hård kodning i 64-bitars kodning.

    Läs nästa: Sysnativ mapp i Windows 64-bitars förklarad.