La survenance d'un lock-out de logiciels a été décrite par IBM ™ scientifique Stuart Madnick en 1968.
À ce stade précoce de l'histoire de l'informatique, Madnick prédit que
les ordinateurs personnels seraient devenus plus petits et moins coûteux
au cours des prochaines décennies, mais continueront à être limitées à
peu près les mêmes vitesses de transfert de données.
Cette prédiction s'est avérée être la plupart du temps correct, et la
puissance utile des ordinateurs est souvent augmentée en ajoutant
simplement des processeurs supplémentaires.
La principale cause de lock-out du logiciel n'est pas une erreur en soi, mais plutôt une caractéristique.
Dans un ordinateur avec plusieurs processeurs reliés entre eux, il n'y a
aucun avantage à processeurs multiples ayant le même traitement de
chaque élément d'information.
En fait, les différents processeurs chacun essayant de modifier une
source de données unique peut corrompre l'enregistrement original.
Pour éviter que plusieurs unités de l'ouverture de la même information,
un seul processeur est autorisé à accéder, tandis que les composants de
traitement restantes sont "verrouillés" du fichier.
Cette méthode de verrouillage est efficace pour les ordinateurs avec un faible nombre de processeurs. L'approche devient un problème, cependant, dans des dispositifs avec une large gamme d'unités de traitement liés. Logiciel lock-out limite sévèrement l'évolutivité et l'efficacité de l'ajout de plusieurs processeurs pour les ordinateurs, car il y a des limites à la quantité de données rapides peuvent être réparties entre l'espace de stockage et les processeurs.
Cette méthode de verrouillage est efficace pour les ordinateurs avec un faible nombre de processeurs. L'approche devient un problème, cependant, dans des dispositifs avec une large gamme d'unités de traitement liés. Logiciel lock-out limite sévèrement l'évolutivité et l'efficacité de l'ajout de plusieurs processeurs pour les ordinateurs, car il y a des limites à la quantité de données rapides peuvent être réparties entre l'espace de stockage et les processeurs.
Aucune machine, y compris un ordinateur, est totalement efficace, cette
inefficacité inhérente se combine à des ordinateurs multiprocesseurs.
Un ordinateur avec seize processeurs, par exemple, pourrait avoir une
de ses processeurs en attente à tout moment parce que les données ne
peuvent pas être distribués aussi rapidement que nécessaire.
À un certain point, l'inefficacité composé signifie qu'il n'est plus
utile pour augmenter le nombre de processeurs dans un ordinateur.
Ajout d'un millier de processeurs à un système est inutile, puisque la
vitesse des données est limitée et la majorité des processeurs
redondants serait coincé dans un lock-out de logiciels constante.
Le logiciel lock-out peut être minimisée par l'utilisation d'un système
d'exploitation qui est spécifiquement conçu pour les processeurs
multiples.
Un logiciel spécialisé est capable de briser une source de données en
plusieurs morceaux différents, et de distribuer ces parties aux
processeurs.
Cette approche réduit le besoin de verrouiller les processeurs, puisque
chaque unité peut traiter qu'une petite partie des données d'origine.
Essentiellement, le logiciel multiprocesseur fait en sorte que chaque
unité de traitement a toujours une tâche, et conserve les données
circulant d'une manière plus uniformément répartie et dispersée.