logo

Chargement statique et dynamique dans le système d'exploitation

Le système d'exploitation charge une bibliothèque de fonctions lors de l'exécution de divers programmes. Au fur et à mesure du traitement des programmes, les fichiers sont placés dans les mémoires requises. Il existe deux types de processus de chargement : statique et dynamique . Dans cet article, vous découvrirez la différence entre les systèmes de chargement statiques et dynamiques dans les systèmes d'exploitation. Mais avant de discuter des différences, vous devez connaître le chargement statique et dynamique du système d'exploitation.

Chargement statique

Chargement statique est le processus de chargement du programme complet dans la mémoire principale avant son exécution.

c exemples de programmes de programmation

Chargement dynamique

Le programme complet et toutes les données de processus doivent être mémoire physique pour exécuter un processus. Par conséquent, la taille du processus est limitée par la quantité de mémoire physique disponible. Le chargement dynamique est utilisé pour garantir consommation mémoire optimale . En chargement dynamique, une routine n’est chargée que lorsqu’elle est invoquée. Toutes les routines sont stockées sur disque dans un format de chargement rechargeable . Les principaux avantages du chargement dynamique sont que les nouvelles routines ne sont jamais chargées. Ce chargement est utile lorsqu'une énorme quantité de code est nécessaire pour le gérer efficacement.

erreur d'attribut python

Principales différences entre le chargement statique et dynamique dans le système d'exploitation

Chargement statique et dynamique dans le système d'exploitation

Ici, vous apprendrez les principales différences entre le chargement statique et dynamique dans les systèmes d'exploitation. Certaines des principales différences entre le chargement statique et dynamique dans les systèmes d'exploitation sont les suivantes :

  1. Le chargement statique est le processus de chargement du programme complet dans la mémoire principale avant de commencer l'exécution du programme. En revanche, le chargement dynamique fait référence au processus de chargement d'un programme dans la mémoire principale à la demande.
  2. Chargement statique des liens et construit le programme complet sans avoir besoin de logiciel supplémentaire. En revanche, tous les modules sont chargés dynamiquement en chargement dynamique. Le développeur référence tous ces éléments et le reste du travail est terminé au moment de l'exécution.
  3. Le chargement statique n'est effectué que dans le cas de langages de programmation structurés comme langage C . En revanche, le chargement dynamique se produit dans les langages POO comme C++, Java,
  4. Le chargement statique a un temps de traitement plus rapide car aucun fichier n'est modifié pendant le processus. En revanche, la vitesse de traitement du chargement dynamique est plus lente car les fichiers sont téléchargés au moment du traitement.
  5. En chargement statique, le code peut ou non être exécuté une fois chargé en mémoire. En revanche, lors du chargement dynamique, l'exécution n'a lieu qu'en cas de besoin.
  6. L'éditeur de liens rejoint le programme objet et d'autres modules objets pour former un seul programme à chargement statique. D'un autre côté, lors du chargement dynamique, le processus de liaison se produit dynamiquement sous une forme déplaçable. Les données ne sont chargées en mémoire que lorsque le programme l'exige.
  7. Le principal inconvénient du chargement statique est qu’il gaspille de la mémoire car le code peut ou non être exécuté une fois chargé. D’un autre côté, le chargement dynamique profite grandement à une utilisation efficace de la mémoire.

Comparaison directe entre le chargement statique et dynamique dans le système d'exploitation

Ici, vous apprendrez la comparaison directe entre le chargement statique et dynamique dans le système d'exploitation. Certaines des comparaisons directes entre le chargement statique et dynamique dans les systèmes d'exploitation sont les suivantes :

Chargement statique Chargement dynamique
Le chargement statique fait référence au chargement de l'intégralité du programme dans la mémoire principale avant de l'exécuter. Le chargement dynamique fait référence au processus de chargement d'un programme dans la mémoire principale à la demande.
Elle n'est réalisée que dans des langages de programmation structurés tels que C. Cela se produit dans les langages POO tels que C++, Java et autres.
Le chargement statique lie et compile l'intégralité du programme sans avoir besoin de logiciel supplémentaire. Tous les modules sont chargés dynamiquement. Le développeur référence tous ces éléments et le reste du travail est terminé au moment de l'exécution.
L'éditeur de liens rejoint le programme objet et d'autres modules objets pour former un seul programme à chargement statique. Le processus de liaison se produit dynamiquement sous une forme déplaçable. Les données ne sont chargées en mémoire que lorsque le programme l'exige.
Les données illimitées et le programme sont chargés en mémoire pour commencer l'exécution. Au moment de l'exécution, les données et les informations sont chargées petit à petit.
Lorsque le chargement statique est utilisé, la liaison statique est également utilisée. Lorsque le chargement dynamique est utilisé, la liaison dynamique est également utilisée.
Une fois le code chargé en mémoire, il peut être exécuté ou non. Ce n'est que lorsque cela est nécessaire qu'une exécution est effectuée.
Le temps de traitement est plus rapide car aucun fichier n’est modifié pendant le processus. La vitesse de traitement du chargement dynamique est plus lente car les fichiers sont téléchargés au moment du traitement.