Skip to main content

Τι είναι ένας διαχειριζόμενος κωδικός;

Ο διαχειριζόμενος κώδικας είναι ένας όρος που δημιουργήθηκε από την Microsoft Reg.COPRORATION.Αυτός ο όρος αναφέρεται στον κώδικα προγράμματος που απαιτεί τη χρήση της εικονικής μηχανής κοινής γλώσσας (CLR) για να χρησιμοποιηθεί.Ο όρος μη διαχειριζόμενος κώδικας χρησιμοποιείται για να αναφερθεί στον κώδικα προγράμματος που δεν απαιτεί αυτή την εικονική μηχανή.

Ο χρόνος εκτέλεσης της κοινής γλώσσας αναπτύχθηκε σε μια προσπάθεια να επιτρέπεται στα προγράμματα να εκτελούνται σε μια ποικιλία υπολογιστών και λειτουργικών συστημάτων χωρίς να απαιτούν αλλαγές στον κωδικό προγράμματος.Για να γίνει αυτό, ο κωδικός προγράμματος υπολογιστών μετατρέπεται σε εικονικό bytecode.Αυτός ο bytecode στη συνέχεια ερμηνεύεται από το εικονικό μηχάνημα CLR και μετατρέπεται σε bytecode για τον συγκεκριμένο υπολογιστή στον οποίο λειτουργεί.

Ένας διαχειριζόμενος κώδικας είναι σε θέση να εκτελείται σε οποιονδήποτε υπολογιστή που είναι εξοπλισμένος με το εικονικό μηχάνημα CLR.Αυτός ο υψηλός βαθμός φορητότητας του δίνει ένα οριστικό πλεονέκτημα έναντι του μη διαχειριζόμενου κώδικα.Ο μη διαχειριζόμενος κώδικας απαιτεί οι προγραμματιστές να μεταβάλλουν τον κωδικό προγράμματος για χρήση σε διαφορετικά μηχανήματα.Αυτή η διαδικασία όχι μόνο μπορεί να είναι αργή, αλλά μπορεί επίσης να οδηγήσει σε πολλά σφάλματα εφαρμογής.

Ένα άλλο πλεονέκτημα που έχει ένας διαχειριζόμενος κώδικας είναι η βελτιωμένη ασφάλεια.Η ασφάλεια ενός προγράμματος που κατασκευάζεται με έναν μη διαχειριζόμενο κώδικα εξαρτάται σε μεγάλο βαθμό από την εφαρμογή που έκαναν οι προγραμματιστές.Η χρήση της εικονικής μηχανής CLR συμβάλλει στη λήψη ενός μεγάλου μέρους των προβλημάτων ασφαλείας από τους ώμους των προγραμματιστών.Η πλειονότητα των προβλημάτων ασφαλείας που μπορεί να προκύψουν επικεντρώνονται άμεσα στο ίδιο το εικονικό μηχάνημα.Αυτό από μόνο του συμβάλλει στη συγκέντρωση των ζητημάτων, καθιστώντας το πολύ πιο γρήγορο για την εφαρμογή των επιθέσεων ασφαλείας.

Το ζήτημα του αν ένα συγκεκριμένο σύνολο κώδικα είναι διαχειριζόμενος κώδικας ή ο μη διαχειριζόμενος κώδικας είναι εξαιρετικά σημαντικό για τους προγραμματιστές υπολογιστών.Ο διαχειριζόμενος κώδικας έχει υψηλότερο βαθμό φορητότητας, αλλά αυτή η φορητότητα απαιτεί να εγκατασταθεί ο χρόνος εκτέλεσης της κοινής γλώσσας στον υπολογιστή προορισμού.Ο μη διαχειριζόμενος κώδικας, από την άλλη πλευρά, μπορεί να εκτελεστεί χωρίς την προσθήκη του CLR. Υπάρχουν πολλά πλεονεκτήματα στη χρήση του διαχειριζόμενου κώδικα, αλλά υπάρχουν και πολλά μειονεκτήματα.Το πρωταρχικό μειονέκτημα είναι το γενικό κόστος που απαιτεί η χρήση της εικονικής μηχανής CLR.Η διαφορά μεταξύ της ταχύτητας με την οποία εκτελείται ο διαχειριζόμενος κώδικας σε σχέση με την ταχύτητα του μη διαχειριζόμενου κώδικα είναι συχνά αμελητέα, αλλά σε ορισμένες περιπτώσεις δημιουργεί μια πολύ αισθητή διαφορά στον χρόνο απόκρισης εφαρμογής.Ως αποτέλεσμα, ο μη διαχειριζόμενος κώδικας διαδραματίζει κρίσιμο ρόλο στην πλειονότητα των εφαρμογών που απαιτούν υψηλό βαθμό ταχύτητας έναντι φορητότητας.