Κατηγοριοποίηση με μέθοδο φόρτωσης:
* Απόλυτοι φορτωτές: Αυτοί οι φορτωτές απαιτούν από τον προγραμματιστή να καθορίσει την ακριβή θέση μνήμης όπου πρέπει να φορτωθεί το πρόγραμμα. Είναι απλά αλλά άκαμπτα και δεν χρησιμοποιούνται συνήθως στα σύγχρονα συστήματα. Η μετεγκατάσταση γίνεται με το χέρι από τον προγραμματιστή.
* Φορτωτές μετεγκατάστασης: Αυτοί οι φορτωτές χειρίζονται την εργασία της εκχώρησης διευθύνσεων μνήμης κατά το χρόνο φόρτωσης. Ο κώδικας του προγράμματος γράφεται χωρίς συγκεκριμένες διευθύνσεις μνήμης και ο φορτωτής εκχωρεί διευθύνσεις με βάση τη διαθέσιμη μνήμη. Αυτό είναι πολύ πιο ευέλικτο από την απόλυτη φόρτιση. Η μετεγκατάσταση αντιμετωπίζεται αυτόματα από τον φορτωτή.
* Δυναμικοί φορτωτές: Αυτοί οι φορτωτές αναβάλλουν τη φόρτωση των μονάδων προγράμματος μέχρι να χρειαστούν πραγματικά κατά την εκτέλεση. Αυτό βελτιώνει την αποτελεσματικότητα με τη φόρτωση μόνο των απαραίτητων τμημάτων ενός προγράμματος, αντί να φορτώσει τα πάντα εκ των προτέρων. Κοινά σε λειτουργικά συστήματα που υποστηρίζουν τη δυναμική σύνδεση. Αυτό περιλαμβάνει πτυχές όπως η τεμπέλης φόρτωσης και η συλλογή Just-in-Time (JIT).
* Bootstrap Loaders: Αυτοί είναι οι αρχικοί φορτωτές που ξεκινούν τη διαδικασία φόρτωσης. Είναι συνήθως μικρές και απλές, υπεύθυνες για τη φόρτωση του πυρήνα του λειτουργικού συστήματος στη μνήμη και την έναρξη της εκτέλεσης του. Συχνά κατοικούν στο ROM (μνήμη μόνο για ανάγνωση).
Κατηγοριοποίηση συνδέοντας:
* Συνδεδετές (συχνά θεωρείται μέρος της ευρύτερης οικογένειας "φορτωτή"): Αυτά συνδυάζουν ξεχωριστά τις ενότητες προγράμματος σε ένα ενιαίο εκτελέσιμο αρχείο πριν αρχίσει η εργασία του φορτωτή. Επιλύουν εξωτερικές αναφορές μεταξύ των ενοτήτων. Στη συνέχεια, ο φορτωτής φορτώνει το συνδεδεμένο εκτελέσιμο.
Άλλες κατηγοριοποιήσεις και σκέψεις:
* φορτωτές επικάλυψης: Χρησιμοποιείται για προγράμματα μεγαλύτερα από τη διαθέσιμη μνήμη. Φορτώνουν και εκφορτώνουν διαφορετικά μέρη του προγράμματος στη μνήμη ανάλογα με τις ανάγκες. Αυτή είναι μια παλαιότερη τεχνική λιγότερο κοινή τώρα λόγω των δυνατοτήτων εικονικής μνήμης.
* Ειδικοί φορτωτές υλικού: Ορισμένοι φορτωτές ενδέχεται να είναι βαθιά ενσωματωμένοι με συγκεκριμένες αρχιτεκτονικές υλικού, χειρισμό εξειδικευμένης διαχείρισης μνήμης ή λειτουργίες I/O.
Είναι σημαντικό να σημειωθεί ότι αυτές οι κατηγορίες δεν είναι πάντα αμοιβαία αποκλειστικές. Για παράδειγμα, ένας φορτωτής μετεγκατάστασης θα μπορούσε επίσης να είναι ένας δυναμικός φορτωτής. Οι συγκεκριμένες λειτουργίες και οι δυνατότητες ενός φορτωτή εξαρτώνται σε μεγάλο βαθμό από το λειτουργικό σύστημα και την αρχιτεκτονική υλικού.
Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα