Ποια είναι η διαφορά μεταξύ των φακέλων "System32" και "SysWOW64" στα Windows;

Πίνακας περιεχομένων:

Βίντεο: Ποια είναι η διαφορά μεταξύ των φακέλων "System32" και "SysWOW64" στα Windows;

Βίντεο: Ποια είναι η διαφορά μεταξύ των φακέλων "System32" και "SysWOW64" στα Windows;
Βίντεο: Q & A: Πώς μπορούμε να ταξιδέψουμε με πλήρη απασχόληση, να γίνουμε ταξιδιωτικός blogger κλπ 2023, Δεκέμβριος
Ποια είναι η διαφορά μεταξύ των φακέλων "System32" και "SysWOW64" στα Windows;
Ποια είναι η διαφορά μεταξύ των φακέλων "System32" και "SysWOW64" στα Windows;
Anonim
Στις εκδόσεις 64 bit των Windows, έχετε δύο χωριστούς φακέλους προγραμμάτων αρχείων. Αλλά δεν τελειώνει εκεί. Έχετε επίσης δύο ξεχωριστούς καταλόγους συστήματος όπου αποθηκεύονται βιβλιοθήκες DLL και εκτελέσιμα αρχεία: System32 και SysWOW64. Παρά τα ονόματα, το System32 είναι γεμάτο από αρχεία 64-bit και το SysWOW64 είναι γεμάτο από αρχεία 32-bit. Τι δίνει;
Στις εκδόσεις 64 bit των Windows, έχετε δύο χωριστούς φακέλους προγραμμάτων αρχείων. Αλλά δεν τελειώνει εκεί. Έχετε επίσης δύο ξεχωριστούς καταλόγους συστήματος όπου αποθηκεύονται βιβλιοθήκες DLL και εκτελέσιμα αρχεία: System32 και SysWOW64. Παρά τα ονόματα, το System32 είναι γεμάτο από αρχεία 64-bit και το SysWOW64 είναι γεμάτο από αρχεία 32-bit. Τι δίνει;

Τι είναι το System32;

Ο κατάλογος System32 περιέχει αρχεία συστήματος Windows, και αρχεία βιβλιοθήκης.DLL που χρησιμοποιούνται από προγράμματα και βοηθητικά προγράμματα προγράμματος.EXE που αποτελούν μέρος των Windows. Ενώ τα περισσότερα από τα αρχεία που βρίσκεστε εδώ είναι μέρος του λειτουργικού συστήματος των Windows, τα προγράμματα λογισμικού τρίτων κατασκευαστών μερικές φορές εγκαθιστούν τα δικά τους αρχεία DLL σε αυτό το φάκελο επίσης.

Οι εφαρμογές που εκτελούνται στο σύστημά σας ενδέχεται να εγκατασταθούν στο φάκελο "Πρόγραμμα αρχείων" ή αλλού, αλλά συχνά φορτώνουν βιβλιοθήκες ολόκληρου του συστήματος από το φάκελο System32.

Διαχωρισμός βιβλιοθηκών 32-bit και 64-bit

Σε μια έκδοση 64 bit των Windows, έχετε ένα φάκελο C: Program Files που περιέχει προγράμματα 64 bit και τα αρχεία τους και ένα φάκελο C: Program Files (x86) που περιέχει προγράμματα 32 bit και τα αρχεία τους. Είναι χρήσιμο να διαχωρίζονται αυτά τα αρχεία επειδή τα προγράμματα 64-bit χρειάζονται αρχεία DLL 64 bit και τα προγράμματα 32 bit χρειάζονται αρχεία DLL 32 bit.
Σε μια έκδοση 64 bit των Windows, έχετε ένα φάκελο C: Program Files που περιέχει προγράμματα 64 bit και τα αρχεία τους και ένα φάκελο C: Program Files (x86) που περιέχει προγράμματα 32 bit και τα αρχεία τους. Είναι χρήσιμο να διαχωρίζονται αυτά τα αρχεία επειδή τα προγράμματα 64-bit χρειάζονται αρχεία DLL 64 bit και τα προγράμματα 32 bit χρειάζονται αρχεία DLL 32 bit.

Εάν ένα πρόγραμμα 32-bit πηγαίνει για να φορτώσει ένα αρχείο DLL που χρειάζεται, βρίσκει μια έκδοση 64-bit και προσπαθεί να το φορτώσει, θα συντριβεί. Διαχωρίζοντας το λογισμικό 64-bit και 32-bit σε δύο διαφορετικούς φακέλους προγραμμάτων αρχείων, τα Windows διασφαλίζουν ότι δεν θα μπερδευτούν και δεν θα προκαλέσουν προβλήματα.

Ωστόσο, δεν είναι όλα τα αρχεία DLL αποθηκευμένα στα αρχεία προγράμματος. Πολλές βιβλιοθήκες ολόκληρου του συστήματος που περιλαμβάνονται στα Windows αποθηκεύονται στο C: System32, και μερικά προγράμματα επίσης χωρίζουν τα δικά τους αρχεία βιβλιοθήκης εδώ. Έτσι, ακριβώς όπως τα Windows έχουν ξεχωριστούς φακέλους προγραμμάτων 32 bit και 64 bit, έχει ξεχωριστές εκδόσεις 32 bit και 64 bit του φακέλου System32.

System32 και SysWOW64

Σε έναν υπολογιστή 32 bit, όλα τα προγράμματα 32-bit αποθηκεύουν τα αρχεία τους σε C: Program Files και η θέση της βιβλιοθήκης σε όλο το σύστημα είναι C: System32.

Σε έναν υπολογιστή 64 bit, τα προγράμματα 64 bit αποθηκεύουν τα αρχεία τους σε C: Program Files και ο φάκελος C: Windows System32 σε επίπεδο συστήματος περιέχει βιβλιοθήκες 64-bit. Τα προγράμματα 32-bit αποθηκεύουν τα αρχεία τους σε C: Program Files (x86) και ο φάκελος σε ολόκληρο το σύστημα είναι C: Windows SysWOW64.

Αυτό είναι σίγουρα αντιφατικό. Παρά το "32" στο όνομα, ο φάκελος System32 περιέχει βιβλιοθήκες 64-bit. Και παρά τα 64 στο όνομα, ο φάκελος SysWOW64 περιέχει βιβλιοθήκες 32-bit - τουλάχιστον σε εκδόσεις 64 bit των Windows.

Σε γενικές γραμμές, δεν θα χρειαστεί να το ξέρετε αυτό. Το λειτουργικό σύστημα των Windows και τα προγράμματα που χρησιμοποιείτε τοποθετούν αυτόματα τα αρχεία τους στη σωστή θέση και χρησιμοποιούν τον σωστό φάκελο. Ωστόσο, αν ποτέ χρειαστεί να εγκαταστήσετε με μη αυτόματο τρόπο ένα αρχείο DLL στη σωστή θέση ή να εντοπίσετε πού είναι εγκατεστημένο - κάτι που είναι πολύ σπάνιο - θα πρέπει να ξέρετε ποιο είναι το οποίο.

WOW64, Επεξήγηση

Το τμήμα "WOW64" του ονόματος αναφέρεται εδώ στο λογισμικό της Microsoft "Windows 32-bit σε Windows 64-bit", το οποίο αποτελεί μέρος του λειτουργικού συστήματος. Αυτό επιτρέπει στα Windows να εκτελούν προγράμματα 32-bit σε μια έκδοση 64-bit των Windows. Το WoW64 ανακατευθύνει την πρόσβαση στο αρχείο για να εξασφαλίσει ότι τα προγράμματα θα λειτουργήσουν σωστά.

Για παράδειγμα, αν εγκαταστήσετε ένα πρόγραμμα 32-bit σε μια έκδοση 64-bit των Windows και προσπαθεί να γράψει στο φάκελο C: Program Files, το WoW64 το δείχνει στο C: Program Files (x86). Και εάν θέλει να αποκτήσει πρόσβαση στο φάκελο C: Windows System32, το WoW64 το τοποθετεί στο C: Windows SysWOW64. Τα Windows κάνουν αυτό χρησιμοποιώντας έναν ανακατευθυνόμενο σύστημα αρχείων.

Όλα αυτά συμβαίνουν αυτόματα και με διαφάνεια στο παρασκήνιο. Το πρόγραμμα δεν χρειάζεται καν να γνωρίζει ότι εκτελείται σε λειτουργικό σύστημα 64 bit, το οποίο επιτρέπει στα παλαιότερα προγράμματα 32 bit να λειτουργούν χωρίς τροποποίηση σε εκδόσεις 64 bit των Windows. Το WOW64 ανακατευθύνει επίσης την πρόσβαση στο μητρώο, διασφαλίζοντας ότι υπάρχουν ξεχωριστές περιοχές του μητρώου για προγράμματα 64 bit και 32 bit.

Γιατί είναι το System32 64-bit και το SysWOW64 32-bit;

Όλα αυτά μας φέρνουν πίσω στο ερώτημα εκατομμυρίων δολαρίων: Γιατί είναι ο φάκελος "System32" 64-bit και SysWOW64 32-bit;

Η απάντηση φαίνεται να είναι ότι πολλές εφαρμογές 32-bit ήταν hardcoded να χρησιμοποιούν τον κατάλογο C: Windows System32. Όταν οι προγραμματιστές συνέταξαν ξανά αυτές τις εφαρμογές για εκδόσεις 64 bit των Windows, συνέχισαν να χρησιμοποιούν τον κατάλογο C: Windows System32.

Αντί να μετονομάζει τον κατάλογο και να αναγκάζει τους προγραμματιστές να μετακινηθούν στο νέο, σπάζοντας πολλές εφαρμογές στη διαδικασία, η Microsoft άφησε το "System32" ως τον τυπικό κατάλογο βιβλιοθήκης συστημάτων. Δημιούργησαν ένα νέο κατάλογο βιβλιοθήκης για εφαρμογές που εκτελούνται στο επίπεδο WoW64, το οποίο ονόμασαν "SysWOW64". Όταν το σκεφτόσαστε με αυτό τον τρόπο, το όνομα είναι πιο λογικό.

Ναι, είναι λίγο ανόητο ότι ένας κατάλογος με "32" στο όνομα είναι τώρα 64-bit. Ίσως η Microsoft να είχε δει ότι έρχονται όταν την ονόμασαν C: Windows System32 στη δεκαετία του '90. Αλλά, παρόλο που ένα πιο απλό πρόγραμμα ονοματοδοσίας θα ήταν ωραίο, δεν αξίζει να σπάσουμε μια δέσμη προγραμμάτων και να δημιουργήσουμε περισσότερη δουλειά για τους προγραμματιστές για να φτάσουμε εκεί. Αυτό σημαίνει ότι είμαστε κολλημένοι με το System32 και το SysWOW64 για το άμεσο μέλλον.

Συνιστάται: