Skip to main content

Τι είναι το κλείδωμα λογισμικού;

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

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

Η κύρια αιτία του κλειδώματος λογισμικού δεν είναι σφάλμα per se, αλλά μάλλον χαρακτηριστικό.Σε έναν υπολογιστή με αρκετούς επεξεργαστές που συνδέονται μεταξύ τους, δεν υπάρχει κανένα πλεονέκτημα να έχουμε πολλαπλούς επεξεργαστές κάθε χειρισμό του ίδιου στοιχείου πληροφοριών.Στην πραγματικότητα, διαφορετικοί επεξεργαστές που προσπαθούν να τροποποιήσουν μια ενιαία πηγή δεδομένων μπορούν να καταστρέψουν την αρχική εγγραφή.Για να αποφευχθούν οι πολλαπλές μονάδες να ανοίξουν τις ίδιες πληροφορίες, επιτρέπεται μόνο ένας επεξεργαστής, ενώ τα υπόλοιπα εξαρτήματα επεξεργασίας "κλειδώνονται" του αρχείου.

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