Le concept d'un système d'exploitation. Les principales étapes de développement des systèmes d'exploitation. L'évolution des systèmes d'exploitation informatiques de différents types

L'histoire de l'OS a environ un demi-siècle. Il a été largement déterminé et déterminé par le développement de la base de l'élément et de l'équipement informatique.

  Première génération.

Les années 40.  Les premiers ordinateurs numériques sans OS. L'organisation du processus informatique est décidée par le programmeur depuis le panneau de contrôle.

  Deuxième génération.

Les années 50.  L'apparition du prototype OS - systèmes de surveillance qui implémentent un système de traitement par lots de tâches.

  Mode batch

La nécessité d'une utilisation optimale de ressources informatiques coûteuses a conduit à l'émergence du concept de "mode batch" d'exécution de programme. Le mode batch suppose qu'il existe une file d'attente de programmes à exécuter et que le système d'exploitation peut garantir que le programme est chargé à partir de supports de stockage externes dans la RAM sans attendre la fin de l'exécution du programme précédent, évitant ainsi les temps d'arrêt du processeur.

  Troisième génération.

1965-1980  Passage aux circuits intégrés. IBM / 360. Presque tous les concepts de base inhérents aux systèmes d'exploitation modernes sont mis en œuvre: partage de temps  et multitâche, séparation des pouvoirs, temps réelstructures de fichiers et systèmes de fichiers. La mise en œuvre de la multiprogrammation a nécessité l'introduction de modifications très importantes du matériel informatique: modes privilégiés et utilisateur, moyens de protection des zones mémoire, système d'interruption développé.

  Partage de temps et multitâche

Déjà le mode batch dans sa version développée nécessite la séparation du temps processeur entre l'exécution de plusieurs programmes. Le besoin de partage du temps (multitâche, multiprogrammation) s'est manifesté encore plus lorsque les télétypes (et plus tard, les terminaux avec affichage par faisceau d'électrons) ont été distribués comme dispositifs d'entrée / sortie (années 1960). Étant donné que la vitesse de saisie au clavier (et même de lecture à l'écran) des données par un opérateur est bien inférieure à la vitesse de traitement de ces données par un ordinateur, l'utilisation d'un ordinateur en mode "exclusif" (avec un seul opérateur) pourrait entraîner des temps d'arrêt de ressources informatiques coûteuses.

La séparation du temps a permis de créer des systèmes «multi-utilisateurs» dans lesquels un processeur central (et en règle générale) et un bloc de RAM étaient connectés à de nombreux terminaux. Dans le même temps, une partie des tâches (telles que la saisie ou la modification de données par l'opérateur) pourrait être exécutée en mode dialogue, tandis que d'autres tâches (telles que des calculs massifs) pourraient être exécutées en mode batch.

  Séparation des pouvoirs

La prolifération des systèmes multi-utilisateurs nécessitait de résoudre le problème de la séparation des pouvoirs, qui évitait la possibilité de modifier un programme exécutable ou les données d'un programme dans la mémoire d'un autre programme (contenant une erreur ou préparé de manière malveillante), ainsi que de modifier l'OS lui-même avec un programme d'application.

La mise en œuvre de la séparation des pouvoirs dans le système d'exploitation a été prise en charge par les développeurs de processeurs qui ont proposé des architectures avec deux modes de fonctionnement du processeur - «réel» (dans lequel l'intégralité de l'espace d'adressage de l'ordinateur est accessible au programme exécutable) et «protégé» (dans lequel la disponibilité de l'espace d'adressage est limitée par la plage allouée au démarrage du programme. exécution).

  Échelle en temps réel

L'utilisation d'ordinateurs universels pour contrôler les processus de production a nécessité la mise en œuvre d'une «échelle en temps réel» («temps réel») - synchronisation de l'exécution du programme avec les processus physiques externes.

L'inclusion de la fonction temps réel dans l'OS a permis de créer des systèmes qui servent simultanément les processus de production et résolvent d'autres problèmes (en mode batch et (ou) en mode temps partagé).

Ces systèmes d'exploitation sont appelés Systèmes d'exploitation de planification en temps réel  ou abrégé en RTOS.

  Systèmes et structures de fichiers

Remplacement progressif des supports d'accès séquentiel (bande perforée, cartes perforées et bandes magnétiques) par des lecteurs à accès aléatoire (sur un disque magnétique)

  Quatrième génération.

La fin des années 70.  Une version de travail de la pile de protocoles TCP / IP a été créée. En 1983, il a été standardisé. L'indépendance vis-à-vis des fabricants, la flexibilité et l'efficacité, prouvées par le bon fonctionnement d'Internet, ont fait de cette pile de protocoles la pile principale de la plupart des systèmes d'exploitation.

Le début des années 80.  L'avènement des ordinateurs personnels. La croissance rapide des réseaux locaux. La prise en charge des fonctions réseau est devenue une condition préalable.

  Les années 80. Les principales normes pour les technologies de communication des réseaux locaux ont été adoptées: Ethernet, Token Ring, FDDI. Cela a permis d'assurer la compatibilité des systèmes d'exploitation réseau à des niveaux inférieurs.

Le début des années 90. Presque tous les systèmes d'exploitation sont devenus en réseau. Des systèmes d'exploitation réseau spécialisés sont apparus (par exemple, IOS fonctionnant dans des routeurs)

La dernière décennie.  Une attention particulière est accordée aux systèmes d'exploitation de réseau d'entreprise, qui se caractérisent par un haut niveau d'évolutivité, la prise en charge du fonctionnement du réseau, des fonctionnalités de sécurité avancées, la possibilité de travailler dans un environnement hétérogène et la disponibilité d'outils d'administration centralisée.

Étapes de développement des systèmes d'exploitation

Résumé du chapitre 1

1. La partie principale du composant logiciel des systèmes informatiques est le système d'exploitation. Exerçant une fonction de contrôle, il détermine l'apparence du système informatique.

2. Le système d'exploitation est le principal programme du système informatique. La conception du système d'exploitation s'effectue de la même manière que les autres programmes (appliqués et instrumentaux).

3. Une grande variété de systèmes d'exploitation a nécessité leur classification. Les OS sont classés selon les critères suivants: par le nombre de tâches exécutées simultanément, par le nombre d'utilisateurs travaillant simultanément, par le nombre de processeurs contrôlés simultanément et par le mode de fonctionnement.

4. La construction de systèmes d'exploitation modernes est basée sur neuf principes, dont chacun peut être extrapolé au développement de programmes d'application.

Questions de sécurité pour le chapitre 1

1. Quelle est la différence entre les systèmes d'exploitation et les autres programmes? 2. Quelles sont les principales fonctions du système d'exploitation? 3. Quels types de logiciels connaissez-vous? 4. Quelle est la partie principale du système d'exploitation? 5. Quelles catégories de systèmes d'exploitation connaissez-vous? 6. Est-il possible d'extrapoler (étendre) les principes de construction de systèmes d'exploitation au développement de programmes d'application?


CHAPITRE 2. HISTOIRE DU DÉVELOPPEMENT DES SYSTÈMES OPÉRATIONNELS

La première période (1945 -1955): les années 40 du 20e siècle ont été marquées par l'avènement de l'informatique, mais il n'y avait pas de systèmes d'exploitation, l'accès aux ressources informatiques consistait en un codage machine. La première génération de systèmes d'exploitation (années 50) - systèmes de traitement par lots. Dans de tels systèmes, le travail est traité comme une séquence de paquets, et pendant le traitement, il n'y a aucune interaction entre l'utilisateur et son travail.

Au milieu des années 40, les premiers appareils informatiques à tubes ont été créés. À cette époque, le même groupe de personnes a participé à la conception, au fonctionnement et à la programmation de l'ordinateur. Il s'agissait davantage d'un travail de recherche dans le domaine de la technologie informatique, plutôt que de l'utilisation d'ordinateurs comme outil pour résoudre des problèmes pratiques dans d'autres domaines d'application. La programmation a été réalisée exclusivement en langage machine. Il n'y avait pas de système d'exploitation, toutes les tâches d'organisation du processus informatique ont été résolues manuellement par chaque programmeur depuis le panneau de contrôle. Il n'y avait aucun logiciel système autre que les bibliothèques de routines mathématiques et utilitaires.

La deuxième période (1955 - 1965): au milieu des années 50, une nouvelle période a commencé dans le développement de la technologie informatique, associée à l'émergence d'une nouvelle base technique - les éléments semi-conducteurs. Les ordinateurs de la deuxième génération sont devenus plus fiables, maintenant ils étaient capables de travailler en continu pendant si longtemps qu'ils pouvaient être chargés de l'exécution de tâches réellement importantes. C'est au cours de cette période que le personnel a été divisé en programmeurs et opérateurs, opérateurs et développeurs d'ordinateurs.



Au cours de ces années, les premiers langages algorithmiques sont apparus, et donc les premiers programmes système - les compilateurs. Le coût du temps processeur a augmenté, ce qui a nécessité une réduction du temps improductif passé entre les lancements de programmes. Les premiers systèmes de traitement par lots sont apparus qui automatisaient simplement le lancement d'un programme après l'autre et augmentaient ainsi le facteur de charge du processeur. Les systèmes de traitement par lots étaient le prototype des systèmes d'exploitation modernes; ils sont devenus les premiers programmes système conçus pour contrôler le processus informatique. Au cours de la mise en œuvre des systèmes de traitement par lots, un langage de gestion des tâches formalisé a été développé, avec l'aide duquel le programmeur a informé le système et l'opérateur du travail qu'il souhaite effectuer sur un ordinateur. L'ensemble de plusieurs tâches, généralement sous la forme d'un jeu de cartes perforées, était appelé l'ensemble de tâches.

La deuxième génération de systèmes d'exploitation (années 60) - systèmes avec multiprogrammation et les premiers systèmes de type multiprocesseur. Des systèmes d'exploitation à temps partagé sont en cours de développement (systèmes qui fournissent des services à de nombreux utilisateurs qui peuvent interagir avec leurs tâches) et les premiers systèmes d'exploitation en temps réel (systèmes qui fournissent une réponse immédiate aux influences externes; des systèmes d'interruption sont développés dans de tels environnements).

La troisième période (1965 - 1980): la prochaine période importante dans le développement des ordinateurs se réfère aux années 1965-1980 (respectivement 3e et 4e génération de l'OS). À cette époque, la base technique a subi une transition des éléments semi-conducteurs individuels tels que les transistors aux circuits intégrés, ce qui a donné de grandes opportunités à la nouvelle génération d'ordinateurs de troisième génération.

La création de familles de machines compatibles logiciels est également caractéristique de cette période. La première famille de machines compatibles avec les logiciels construites sur des circuits intégrés était une série de machines IBM / 360. Construite au début des années 60, cette famille a largement dépassé les voitures de deuxième génération en termes de prix / performances. Bientôt, l'idée de machines compatibles avec les logiciels est devenue largement acceptée.

La compatibilité logicielle exigeait également la compatibilité du système d'exploitation. Ces systèmes d'exploitation devraient fonctionner à la fois sur de grands et petits systèmes informatiques, avec un grand nombre et un petit nombre de périphériques divers, dans le domaine commercial et dans le domaine de la recherche scientifique. Les systèmes d'exploitation construits avec l'intention de satisfaire toutes ces exigences contradictoires se sont avérés être des «monstres» extrêmement complexes. Ils se composaient de plusieurs millions de lignes d'assembleurs écrites par des milliers de programmeurs et contenaient des milliers d'erreurs provoquant un flux sans fin de corrections. Dans chaque nouvelle version du système d'exploitation, certaines erreurs ont été corrigées et d'autres ont été introduites.

Ainsi, la troisième génération de systèmes d'exploitation (à partir du milieu des années 60) est un système d'exploitation multimode qui peut fonctionner simultanément en mode de traitement par lots, en mode de partage de temps, en mode temps réel et en mode de traitement multiprocesseur.

La quatrième génération (depuis le milieu des années 70) - systèmes d'exploitation permettant d'accéder à des ordinateurs géographiquement répartis - systèmes d'exploitation de réseau.

Malgré la taille immense et les nombreux problèmes, les systèmes d'exploitation des machines de troisième génération ont en effet satisfait la plupart des exigences des consommateurs. La réalisation la plus importante du système d'exploitation de cette génération a été la mise en œuvre de la multiprogrammation. Multiprogrammation  - C'est une façon d'organiser un processus informatique dans lequel plusieurs programmes sont exécutés alternativement sur le même processeur. Alors qu'un programme effectue une opération d'entrée-sortie, le processeur ne reste pas inactif, comme cela s'est produit lors de l'exécution séquentielle de programmes (mode programme unique), mais exécute un autre programme (mode multi-programme). Dans ce cas, chaque programme est chargé dans sa propre zone de RAM, appelée partition.

Une autre innovation est bobinage (bobinage) La mise en file d'attente à cette époque était définie comme un moyen d'organiser un processus de calcul, selon lequel les tâches étaient lues des cartes perforées sur le disque au rythme auquel elles apparaissaient dans les locaux du centre de calcul, puis, lorsque la tâche suivante était terminée, une nouvelle tâche était chargée du disque dans la section libérée .

Parallèlement à la mise en œuvre multiprogrammes de systèmes de traitement par lots, un nouveau type de système d'exploitation est apparu - les systèmes à temps partagé. L'option de multiprogrammation utilisée dans les systèmes de temps partagé vise à créer pour chaque utilisateur individuel l'illusion de l'usage exclusif d'un ordinateur.

Quatrième période (1980 à nos jours): cette période de l'évolution des systèmes d'exploitation est associée à l'avènement des grands circuits intégrés (LSI). Au cours de ces années, il y a eu une forte augmentation du degré d'intégration et de la réduction des coûts des puces. L'ordinateur est devenu accessible à l'individu, et l'ère des ordinateurs personnels est arrivée. En termes d'architecture, les ordinateurs personnels n'étaient pas différents de la classe des mini-ordinateurs tels que PDP-11mais leur prix était sensiblement différent. Si le mini-ordinateur permettait à un département d'entreprise ou à une université d'avoir son propre ordinateur, alors un ordinateur personnel le permettait à une personne individuelle.

Les ordinateurs ont commencé à être largement utilisés par des non-spécialistes, ce qui a nécessité le développement de logiciels "conviviaux".

Deux systèmes dominaient le marché des systèmes d'exploitation: Mme doset Unix. Système d'exploitation mono-utilisateur à programme unique   Mme dos  largement utilisé pour les ordinateurs basés sur des microprocesseurs Intel  8088, puis 80286, 80386 et 80486. Système d'exploitation multi-utilisateur multi-programme   Unix  dominé l'environnement des ordinateurs "non Intel", en particulier ceux construits sur la base de hautes performances RISCprocesseurs.

Au milieu des années 80, les réseaux informatiques personnels ont commencé à se développer rapidement, fonctionnant sous le contrôle de systèmes d'exploitation en réseau ou distribués.

Dans les systèmes d'exploitation réseau, les utilisateurs doivent être conscients de la présence d'autres ordinateurs et doivent se connecter à un autre ordinateur afin d'utiliser ses ressources, principalement les fichiers. Chaque machine du réseau exécute son propre système d'exploitation local, qui diffère du système d'exploitation d'un ordinateur autonome par la présence d'outils supplémentaires qui permettent à l'ordinateur de travailler sur le réseau. Le système d'exploitation du réseau ne présente pas de différences fondamentales par rapport au système d'exploitation d'un ordinateur à processeur unique. Il contient nécessairement un support logiciel pour les périphériques d'interface réseau (un pilote de carte réseau), ainsi que des moyens pour se connecter à distance à d'autres ordinateurs du réseau et des moyens pour accéder à des fichiers distants, mais ces modules complémentaires ne modifient pas de manière significative la structure du système d'exploitation lui-même.


Ministère de l'éducation et des sciences de la Fédération de Russie

Établissement d'enseignement public

enseignement professionnel supérieur

Université technique d'État de Magnitogorsk

eux. G.I. Nosova

Département de l'informatique et de la sécurité de l'information

Test de travail

sur la discipline "Informatique"

Résumé sur le thème "Evolution des systèmes d'exploitation des ordinateurs de différents types"

Complété par: élève du groupe 1304006-11-1

Numéro d'option 13

Sagdetdinov D.F.

Vérifié: Maître de conférences

Korinchenko G.M.

Magnitogorsk 2014

  • 1. L'évolution des systèmes d'exploitation des ordinateurs de différents types
    • 1.2 L'avènement des systèmes d'exploitation mainframe multiprogrammes
  • 2. Affectation selon MathCAD n ° 1 "Construction de graphiques bidimensionnels dans MathCAD"
    • 2.1 Énoncé de la tâche
    • 2.2 Résultat - calendrier reçu
  • 3. Affectation selon MathCAD n ° 2 «Solution de SLAU»
    • 3.1 Déclaration de mission
  • 4. Affectation selon MathCAD n ° 3 "Solution de systèmes d'équations non linéaires"
    • 4.1 Déclaration de mission
  • 5. Tâche selon MathCAD n ° 4 "Solution d'équations non linéaires"
    • 5.1 Énoncé de la tâche

1. L'évolution des systèmes d'exploitation des ordinateurs de différents types

Pendant près d'un demi-siècle d'existence, les systèmes d'exploitation (OS) ont parcouru un long chemin, remplis de nombreux événements importants. Le développement des systèmes d'exploitation a été grandement influencé par les succès dans l'amélioration de la base des éléments et des équipements informatiques, par conséquent, de nombreuses étapes de leur développement sont étroitement liées à l'émergence de nouveaux types de plates-formes matérielles, telles que les mini-ordinateurs ou les ordinateurs personnels.

Les systèmes d'exploitation ont subi une sérieuse évolution en lien avec le nouveau rôle des ordinateurs dans les réseaux locaux et mondiaux. Le facteur le plus important de leur développement est devenu Internet.

1.1 L'avènement des premiers systèmes d'exploitation

La naissance des ordinateurs numériques s'est produite peu de temps après la fin de la Seconde Guerre mondiale. Au milieu des années 40, les premiers appareils informatiques à tubes ont été créés.

La programmation à cette époque était réalisée exclusivement en langage machine. Il n'y avait pas de logiciel système, sauf des bibliothèques de routines mathématiques et utilitaires, que le programmeur pouvait utiliser pour éviter d'écrire à chaque fois des codes qui calculaient la valeur d'une fonction mathématique ou contrôlaient un périphérique d'entrée-sortie standard.

Les systèmes d'exploitation n'apparaissent toujours pas, toutes les tâches d'organisation du processus informatique ont été résolues manuellement par chaque programmeur à partir du panneau de commande, qui était un dispositif d'entrée-sortie primitif composé de boutons, commutateurs et indicateurs.

Au milieu des années 50, une nouvelle période a commencé dans le développement de la technologie informatique, associée à l'avènement d'une nouvelle base technique - les éléments semi-conducteurs. La vitesse des processeurs a augmenté, les volumes de RAM et de mémoire externe ont augmenté. Les ordinateurs sont devenus plus fiables, maintenant ils pouvaient travailler en continu pendant si longtemps qu'ils pouvaient être affectés à l'exécution de tâches vraiment importantes.

Dans le même temps, les premiers systèmes de traitement par lots ont été développés qui automatisaient toute la séquence des actions de l'opérateur pour organiser le processus informatique. Les premiers systèmes de traitement par lots étaient le prototype de systèmes d'exploitation modernes; ils sont devenus les premiers programmes système conçus non pas pour le traitement des données, mais pour contrôler le processus informatique.

Les systèmes de traitement par lots ont considérablement réduit le temps consacré aux activités de support pour organiser le processus informatique, ce qui signifie qu'une autre mesure a été prise pour accroître l'efficacité de l'utilisation de l'ordinateur.

Cependant, dans le même temps, les programmeurs utilisateurs ont perdu l'accès direct à l'ordinateur, ce qui a réduit l'efficacité de leur travail - les corrections nécessaires ont nécessité beaucoup plus de temps que lors d'un travail interactif sur la télécommande de la machine.

1.2 L'avènement des systèmes d'exploitation mainframe multiprogrammation

La prochaine période importante dans le développement des systèmes d'exploitation remonte à 1965-1975.

À cette époque, dans la base technique des ordinateurs, il y a eu une transition d'éléments semi-conducteurs individuels tels que des transistors vers des circuits intégrés, ce qui a ouvert la voie à l'apparition de la prochaine génération d'ordinateurs.

Au cours de cette période, presque tous les mécanismes de base inhérents aux systèmes d'exploitation modernes ont été mis en œuvre:

Multiprogrammation

Multiprocessing,

Prise en charge du mode multi-utilisateur multi-terminal,

Mémoire virtuelle

Systèmes de fichiers

Contrôle d'accès

Travail en réseau.

L'événement révolutionnaire de cette étape a été la mise en œuvre industrielle de la multiprogrammation. Dans des conditions de capacités informatiques fortement accrues pour le traitement et le stockage des données, l'exécution d'un seul programme à la fois était extrêmement inefficace. La solution était la multiprogrammation, une façon d’organiser un processus de calcul dans lequel plusieurs programmes alternant simultanément sur le même processeur étaient dans la mémoire de l’ordinateur.

Ces améliorations ont considérablement amélioré l'efficacité du système informatique: l'ordinateur pouvait désormais être utilisé presque constamment, et pas moins de la moitié du temps de fonctionnement de l'ordinateur, comme c'était le cas auparavant.

La multiprogrammation a été mise en œuvre en deux versions - dans les systèmes de traitement par lots et le partage de temps.

1.3 Systèmes d'exploitation et réseaux étendus

Au début des années 70 du siècle dernier, les premiers systèmes d'exploitation de réseau sont apparus, qui, contrairement aux systèmes multi-terminaux, permettaient non seulement de disperser les utilisateurs, mais aussi d'organiser le stockage distribué et le traitement des données entre plusieurs ordinateurs connectés par des connexions électriques.

Tout système d'exploitation réseau, d'une part, remplit toutes les fonctions d'un système d'exploitation local et, d'autre part, dispose de quelques outils supplémentaires qui lui permettent d'interagir sur le réseau avec les systèmes d'exploitation d'autres ordinateurs.

Les modules logiciels qui implémentent les fonctions réseau sont apparus progressivement dans les systèmes d'exploitation, avec le développement des technologies réseau, la base matérielle des ordinateurs et l'émergence de nouvelles tâches nécessitant un traitement réseau.

En 1969, le département américain de la Défense a entrepris de fusionner les superordinateurs de défense et de recherche en un seul réseau. Ce réseau s'appelait ARPANET et était le point de départ pour créer le réseau mondial le plus célèbre de nos jours - Internet. Le réseau ARPANET combinait des ordinateurs de différents types exécutant divers systèmes d'exploitation avec des modules supplémentaires qui implémentent des protocoles de communication communs à tous les ordinateurs du réseau.

En 1974, IBM a annoncé sa propre architecture de réseau pour son ordinateur central, appelée SNA (System Network Architecture).

Cette architecture à plusieurs niveaux, à bien des égards similaire au modèle OSI standard, qui est apparu un peu plus tard, prévoyait l'interaction des types «terminal-terminal», «terminal-ordinateur» et «ordinateur-à-ordinateur» pour les connexions globales.

1.4 Systèmes d'exploitation mini-ordinateurs. Les premiers réseaux locaux

Au milieu des années 70, avec les ordinateurs centraux, les mini-ordinateurs étaient largement utilisés. Ils ont été les premiers à exploiter les avantages des grands circuits intégrés, qui ont permis de mettre en œuvre des fonctions suffisamment puissantes à un coût relativement faible pour un ordinateur.

L'architecture des mini-ordinateurs a été considérablement simplifiée par rapport aux ordinateurs centraux, ce qui se reflète dans leurs systèmes d'exploitation. De nombreuses fonctions des OS multiprogrammes et multi-utilisateurs ont été tronquées, étant donné les ressources limitées des mini-ordinateurs.

Les systèmes d'exploitation des mini-ordinateurs se sont souvent spécialisés, par exemple uniquement pour le contrôle en temps réel ou uniquement pour le maintien du mode de partage de temps.

Un jalon important dans l'histoire des mini-ordinateurs et en général dans l'histoire des systèmes d'exploitation a été la création du système d'exploitation UNIX. Son utilisation de masse a commencé au milieu des années 70. À ce moment, le code du programme UNIX était écrit à 90% en langage C de haut niveau.

La disponibilité de mini-ordinateurs et, par conséquent, leur prévalence dans les entreprises ont fortement incité à la création de réseaux locaux. L'entreprise pouvait se permettre d'avoir plusieurs mini-ordinateurs situés dans un même bâtiment ou même dans une seule pièce. Naturellement, il fallait échanger des informations entre eux et partager des équipements périphériques coûteux.

Les premiers réseaux locaux ont été construits à l'aide d'équipements de communication non standard, dans le cas le plus simple, en connectant directement les ports série des ordinateurs. Le logiciel n'était pas non plus standard et a été implémenté en tant qu'applications personnalisées.

1.5 Développement de systèmes d'exploitation dans les années 80

Les événements les plus importants de cette décennie comprennent:

Développement de pile TCP / IP,

La montée d'Internet,

Standardisation des technologies LAN,

L'avènement des ordinateurs personnels,

Et les systèmes d'exploitation pour eux.

Une version de travail de la pile de protocoles TCP / IP a été créée à la fin des années 70.

En 1983, la pile de protocoles TCP / IP a été adoptée par le département américain de la Défense comme norme militaire.

L'introduction de protocoles TCP / IP dans ARPANET a donné à ce réseau toutes les fonctionnalités de base qui distinguent l'Internet moderne.

Toute la décennie a été marquée par l’émergence constante de nouvelles versions plus avancées du système d’exploitation UNIX. Parmi celles-ci se trouvaient des versions de marque d'UNIX: SunOS, HP-UX, Irix, AIX et bien d'autres, dans lesquelles les fabricants d'ordinateurs ont adapté le code du noyau et les utilitaires système à leur matériel.

Le début des années 80 a été associé à un autre événement marquant de l’histoire des systèmes d’exploitation: l’avènement des ordinateurs personnels.

Ils ont été un puissant catalyseur de la croissance rapide des réseaux locaux, créant pour cela une excellente base matérielle sous la forme de dizaines et de centaines d'ordinateurs appartenant à une entreprise et situés dans le même bâtiment. En conséquence, la prise en charge des fonctions réseau est devenue une condition préalable pour les systèmes d’exploitation d’ordinateurs personnels.

Les fonctions réseau ont été principalement implémentées par des shells de réseau fonctionnant sur le système d'exploitation. Lors du fonctionnement du réseau, il est toujours nécessaire de prendre en charge le mode multi-utilisateur, dans lequel un utilisateur est interactif, le reste ayant accès aux ressources de l'ordinateur via le réseau. Dans ce cas, le système d'exploitation requiert au moins une prise en charge fonctionnelle minimale pour le mode multi-utilisateur.

En 1987, à la suite des efforts conjoints de Microsoft et d'IBM, le premier système d'exploitation multitâche pour ordinateurs personnels doté d'un processeur Intel 80286 est apparu, exploitant pleinement les fonctionnalités du mode protégé OS / 2. Ce système a été bien pensé. Il prenait en charge le multitâche préemptif, la mémoire virtuelle, une interface utilisateur graphique et une machine virtuelle pour l'exécution d'applications DOS.

Dans les années 80, les principales normes relatives aux technologies de communication pour les réseaux locaux ont été adoptées: en 1980 - Ethernet, en 1985 - en anneau à jeton, à la fin des années 80 - en FDDI. Cela a permis d’assurer la compatibilité des systèmes d’exploitation réseau des niveaux inférieurs et de normaliser l’interface du système d’exploitation avec les pilotes de carte réseau.

1.6 Caractéristiques du stade actuel de développement des systèmes d'exploitation

Dans les années 90, presque tous les systèmes d’exploitation, qui occupent une place de choix sur le marché, ont été mis en réseau. Les fonctions réseau sont maintenant intégrées au noyau de l'OS, qui en fait partie intégrante. Les systèmes d'exploitation ont reçu des fonds pour utiliser toutes les technologies principales des réseaux locaux, ainsi que des outils pour créer des réseaux composites.

Les systèmes d'exploitation utilisent le multiplexage de plusieurs piles de protocoles, ce qui permet aux ordinateurs de prendre en charge le travail réseau simultané avec des clients et des serveurs hétérogènes.

Dans la seconde moitié des années 90, tous les fabricants de systèmes d'exploitation ont considérablement accru leur capacité à travailler avec Internet. Outre la pile TCP / IP elle-même, le package a commencé à inclure des utilitaires qui implémentent des services Internet populaires tels que telnet, ftp, DNS et Web.

L’influence d’Internet s’est manifestée par le fait que l’ordinateur est passé d’un dispositif purement informatique à un moyen de communication doté de capacités informatiques avancées.

Une attention particulière a été accordée au cours de la dernière décennie aux systèmes d’exploitation des réseaux d’entreprise. Leur développement est l’une des tâches les plus importantes dans un avenir proche.

Le système d'exploitation de l'entreprise se distingue par sa capacité à fonctionner correctement et régulièrement dans les grands réseaux, caractéristiques des grandes entreprises ayant des succursales dans des dizaines de villes et éventuellement dans différents pays. De tels réseaux sont caractérisés organiquement par un degré élevé d'hétérogénéité des logiciels et du matériel. Par conséquent, un système d'exploitation d'entreprise devrait interagir de manière transparente avec différents types de systèmes d'exploitation et fonctionner sur différentes plates-formes matérielles.

La création d'un centre d'assistance multifonctionnel et évolutif constitue une orientation stratégique dans l'évolution du système d'exploitation. Un tel service est nécessaire pour transformer Internet en un système prévisible et gérable, par exemple, pour fournir la qualité requise du service de trafic utilisateur, prendre en charge des applications distribuées volumineuses et créer un système de messagerie efficace.

Au stade actuel du développement des systèmes d'exploitation, les outils de sécurité ont été mis en avant. Cela est dû à la valeur croissante des informations traitées par les ordinateurs, ainsi qu'au nombre croissant de menaces qui existent lors de la transmission de données sur des réseaux, en particulier sur des réseaux publics tels qu'Internet. Aujourd'hui, de nombreux systèmes d'exploitation ont développé des moyens de protéger les informations basées sur le cryptage, l'authentification et l'autorisation des données.

La multiplicité des plateformes est inhérente aux systèmes d’exploitation modernes, c’est-à-dire la capacité de travailler sur des types d’ordinateurs complètement différents. De nombreux systèmes d'exploitation ont des versions spéciales pour prendre en charge les architectures de cluster offrant des performances élevées et une tolérance aux pannes.

Au cours des dernières années, la tendance à long terme visant à accroître la convivialité d’une personne disposant d’un ordinateur s’est encore développée. L'efficacité d'une personne devient le facteur principal déterminant l'efficacité du système informatique dans son ensemble.

La commodité du travail interactif avec un ordinateur est constamment améliorée grâce à l'intégration d'interfaces graphiques développées dans le système d'exploitation, qui utilisent des images sonores et vidéo ainsi que des graphiques. L’interface utilisateur du système d’exploitation devient de plus en plus intelligente, dirigeant les actions humaines dans des situations typiques et prenant les décisions qui s’imposent.

2. Affectation selon MathCAD n ° 1 "Construction de graphiques bidimensionnels dans MathCAD"

2.1 Énoncé de la tâche

Construis deux graphiques. Affiche une table de valeurs de la fonction spécifiée dans la forme paramétrique.

Tableau 1

Données source

2.2 Résultat - le calendrier résultant

Figure 1 - Tâche 1

3. Affectation selon MathCAD n ° 2 «Solution de SLAU»

3.1 Déclaration de mission

Trouver une solution à SLAU:

1. en utilisant la matrice inverse;

2. en utilisant la fonction intégrée lsolve;

3. Utilisation de l’unité informatique Given-Find.

3.2 Résultat - une solution complète

Figure 2 - Tâche 2

4. Affectation selon MathCAD n ° 3 "Solution de systèmes d'équations non linéaires"

4.1 Déclaration de mission

Résoudre un système d'équations non linéaires.

Construire des graphiques de fonctions qui définissent les équations du système.

Vérifiez graphiquement que la solution est correcte.

système d'exploitation réseau mathcad

4.2 Résultat - une solution complète

Figure 3 - Tâche 3

5. Tâche selon MathCAD n ° 4 "Solution d'équations non linéaires"

5.1 Énoncé de la tâche

Trouvez une solution à l'équation non linéaire:

1. en utilisant la fonction racine intégrée;

2. en utilisant la fonction polyroots intégrée;

5.2 Résultat - une solution complète

Figure 4 - Tâche 4

Documents similaires

    Caractéristiques du stade moderne de développement des systèmes d'exploitation. But des systèmes d'exploitation, leurs principaux types. Systèmes d'exploitation pour mini-ordinateurs. Le principe de fonctionnement de l’imprimante matricielle, la conception et la lecture de caractères arbitraires pour eux.

    term paper ajouté le 23/06/2011

    Concepts de base sur les systèmes d'exploitation. Types de systèmes d'exploitation modernes. L'histoire du développement des systèmes d'exploitation de la famille Windows. Caractéristiques des systèmes d'exploitation de la famille Windows. Nouvelles fonctionnalités du système d'exploitation Windows 7.

    term paper, ajouté le 18/02/2012

    Evolution et classification du système d'exploitation. Systèmes d'exploitation réseau. Gestion de la mémoire. Concepts modernes et technologies de conception pour les systèmes d'exploitation. Famille de systèmes d'exploitation UNIX. Produits réseau Novell Système d'exploitation Microsoft Network

    travail créatif, ajouté le 11/7/2007

    Description de la nature, du but, des fonctions des systèmes d'exploitation. Particularités de leur évolution. Caractéristiques des algorithmes de gestion des ressources. Concepts et technologies modernes pour la conception de systèmes d'exploitation, les exigences des systèmes d'exploitation du XXIe siècle.

    term paper, ajouté le 1/8/2011

    L’historique du développement et de l’amélioration des systèmes d’exploitation Microsoft, leurs caractéristiques et leurs caractéristiques distinctives des systèmes d’autres marques, avantages et inconvénients. Etat actuel et capacités des systèmes d'exploitation Microsoft et des prospects.

    résumé, ajouté le 22 novembre 2009

    But et fonctions principales des systèmes d'exploitation. Télécharger sur la RAM les programmes à exécuter. Servir toutes les opérations d'E / S. Evolution, classification des systèmes d'exploitation. Formation de la masse salariale, tri par département.

    terme ajouté le 17/03/2009

    Objet, classification, composition et objectif des composants des systèmes d'exploitation. Développement de systèmes d'information complexes, de systèmes logiciels et d'applications individuelles. Fonctionnalité des systèmes d'exploitation Windows, Linux, Android, Solaris, Symbian OS et Mac OS.

    term paper ajoutée le 19/11/2014

    Le concept et les fonctions fondamentales des systèmes d'exploitation, leur structure typique et leur principe de fonctionnement. Bref historique de la formation et du développement des systèmes d’exploitation Windows, leurs variétés et caractéristiques générales, configuration matérielle de base.

    présentation ajoutée le 07/12/2011

    Concepts de base des systèmes d'exploitation. Synchronisation et zones critiques. Signaux et interaction entre les processus. Gestion de la mémoire. Pilotes de périphérique Caractéristiques des systèmes d'exploitation modernes. Processeur central, puces d'horloge et de minuterie.

    guide d'étude ajouté le 24/01/2014

    Le concept de systèmes d'exploitation, leur classification et leurs variétés, leurs caractéristiques distinctives et leurs propriétés de base. Le contenu des systèmes d'exploitation, l'ordre d'interaction et la fonction de leurs composants. Organisation de l'espace disque. Description du système d'exploitation moderne.

Nous examinerons l’histoire du développement de l’informatique plutôt que des systèmes d’exploitation, car le matériel et les logiciels ont évolué ensemble, exerçant une influence réciproque. L'avènement de nouvelles capacités techniques a conduit à une avancée décisive dans le domaine de la création de programmes pratiques, efficaces et sûrs. De nouvelles idées dans le domaine des programmes ont stimulé la recherche de nouvelles solutions techniques. Ces critères - commodité, efficacité et sécurité - ont joué le rôle de facteurs de sélection naturelle dans l'évolution des systèmes informatiques.

Dans la première période de développement (1945-1955) Les ordinateurs étaient des machines à tubes sans système d'exploitation. Les premières étapes dans le développement des ordinateurs électroniques ont été franchies à la fin de la Seconde Guerre mondiale. Vers le milieu des années 40, les premiers dispositifs de calcul sur tubes ont été créés et le principe d’un programme enregistré dans la mémoire de la machine est apparu (John Von Neumann, juin 1945). À cette époque, le même groupe de personnes participait à la conception, au fonctionnement et à la programmation de l'ordinateur. Il s’agissait plus d’un travail de recherche dans le domaine de la technologie informatique que d’une utilisation régulière d’ordinateurs pour résoudre des problèmes pratiques provenant d’autres domaines d’application. La programmation a été réalisée exclusivement en langage machine. On ne parlait pas de système d'exploitation, toutes les tâches d'organisation du processus informatique étaient résolues manuellement par chaque programmeur à partir du panneau de commande. Un seul utilisateur peut être derrière la console. Le programme a été chargé au mieux dans la mémoire de la machine à partir d’un jeu de cartes perforées, et généralement à l’aide du panneau de commutation.

Le système informatique n'a effectué qu'une opération à la fois (entrée-sortie ou calcul réel). Le débogage du programme a été effectué à partir du panneau de commande en examinant l'état de la mémoire et les registres de la machine. À la fin de cette période, le premier logiciel système est apparu: en 1951-1952. Des prototypes des premiers compilateurs de langages symboliques apparaissent (Fortran et autres) et, en 1954, Nat Rochester développa Assembler pour IBM-701.

Une grande partie du temps a été consacrée à la préparation du lancement du programme et les programmes eux-mêmes ont été réalisés de manière strictement séquentielle. Ce mode de fonctionnement s'appelle traitement séquentiel des données. En général, la première période est caractérisée par le coût extrêmement élevé des systèmes informatiques, leur faible nombre et leur faible efficacité d'utilisation.

La deuxième période a commencé au milieu des années 1950. dans l'évolution de la technologie informatique, associée à l'émergence d'une nouvelle base technique - les éléments semi-conducteurs. L'utilisation de transistors au lieu de tubes électroniques souvent grillés a permis d'accroître la fiabilité des ordinateurs. Désormais, les machines peuvent fonctionner en permanence suffisamment longtemps pour pouvoir se voir confier la réalisation de tâches importantes. La consommation d’ordinateur est réduite, les systèmes de refroidissement sont en cours d’amélioration. La taille des ordinateurs a diminué. Les coûts d'exploitation et de maintenance de la technologie informatique ont diminué. L'utilisation d'ordinateurs par des entreprises commerciales a commencé. Parallèlement, on observe un développement rapide des langages algorithmiques (LISP, COBOL, ALGOL-60, PL-1, etc.). Les premiers véritables compilateurs, éditeurs de liens, bibliothèques de routines mathématiques et utilitaires apparaissent. Le processus de programmation est simplifié. Il n'est pas nécessaire de charger le même processus de développement et d'utilisation d'ordinateurs auprès des mêmes personnes. C'est durant cette période que le personnel a été divisé en programmeurs et opérateurs, spécialistes de l'exploitation et développeurs d'ordinateurs.

Le processus d'exécution des programmes change. Maintenant, l'utilisateur apporte le programme avec les données d'entrée sous la forme d'un jeu de cartes perforées et indique les ressources nécessaires. Ce pont s'appelle missions. L’opérateur charge la tâche dans la mémoire de la machine et la lance pour l’exécution. Les données de sortie reçues sont imprimées sur l'imprimante et l'utilisateur les reçoit après un certain temps (plutôt long).

Si vous modifiez les ressources demandées, le programme se met en pause. Le processeur est donc souvent inactif. Pour augmenter l’efficacité d’utilisation d’un ordinateur, les tâches avec des ressources similaires commencent à être assemblées, créant ainsi paquet de travail.

Apparaît d'abord systèmes de traitement par lots, qui automatise simplement le lancement d’un programme d’un paquet à l’autre, augmentant ainsi le facteur de charge du processeur. Lors de la mise en œuvre de systèmes de traitement par lots, un langage de gestion des tâches formalisé a été développé. Le programmeur a ainsi informé le système et l'opérateur du travail qu'il souhaitait effectuer sur un ordinateur. Les systèmes de traitement par lots sont devenus le prototype des systèmes d'exploitation modernes, à savoir les premiers programmes système conçus pour contrôler le processus informatique.

La prochaine période de développement importante Les machines informatiques remontent au début des années 60 - 1980. À cette époque, la base technique subissait une transition d'éléments individuels à semi-conducteurs tels que des transistors vers des circuits intégrés. L'informatique devient de plus en plus fiable et moins chère. La complexité et le nombre de tâches résolues par les ordinateurs augmentent. Augmentation des performances du processeur.

L'amélioration de l'efficacité d'utilisation du temps processeur est entravée par la faible vitesse des dispositifs d'entrée-sortie mécaniques (un lecteur de cartes perforées rapide peut traiter 1 200 cartes perforées par minute, des imprimantes imprimées jusqu'à 600 lignes par minute). Au lieu de lire directement le paquet de travaux des cartes perforées dans la mémoire, ils commencent à utiliser son enregistrement préliminaire, d'abord sur une bande magnétique, puis sur un disque. Lorsque la saisie de données est requise lors de l'exécution d'une tâche, elle est lue à partir du disque. De la même manière, les informations de sortie sont d'abord copiées dans la mémoire tampon du système, puis écrites sur une bande ou un disque, puis imprimées une fois le travail terminé. Initialement, les opérations d'E / S valides étaient effectuées hors ligne, c'est-à-dire en utilisant d'autres ordinateurs plus simples et autonomes. À l'avenir, ils commenceront à s'exécuter sur le même ordinateur que celui qui effectue les calculs, c'est-à-dire en mode en ligne. Cette technique s'appelle bobinage  (abréviation de fonctionnement simultané des périphériques en ligne) ou échange de données. L’introduction de la technique de pompage-pompage dans les systèmes de traitement par lots a permis de combiner les opérations d’entrées / sorties réelles d’une tâche à l’exécution d’une autre tâche, mais elle a nécessité la mise au point d’un dispositif d’interruption pour informer le processeur de la fin de ces opérations.

Les bandes magnétiques étaient des dispositifs à accès séquentiel, c’est-à-dire que les informations leur étaient lues dans l’ordre dans lequel elles avaient été enregistrées. L’apparition d’un disque magnétique, pour lequel l’ordre de lecture des informations, c’est-à-dire des dispositifs à accès direct, n’a pas d’importance, a conduit à la poursuite du développement des systèmes informatiques. Lors du traitement d'un paquet de tâches sur une bande magnétique, l'ordre dans lequel les tâches ont été démarrées a été déterminé par l'ordre dans lequel elles ont été entrées. Lors du traitement d’un paquet de tâches sur un disque magnétique, il devenait possible de sélectionner la tâche suivante à exécuter. Les systèmes de traitement par lots commencent à fonctionner ordonnancement des travaux: en fonction de la disponibilité des ressources demandées, de l'urgence des calculs, etc. telle ou telle tâche est sélectionnée sur le compte.

Une nouvelle augmentation de l’efficacité du processeur a été obtenue avec multiprogrammation. L'idée de la multiprogrammation est la suivante: lorsqu'un programme exécute une opération entrée-sortie, le processeur ne reste pas inactif, comme il le faisait en mode mono-programme, mais exécute un autre programme. Lorsque l'opération d'E / S est terminée, le processeur revient au premier programme. Cette idée ressemble au comportement d’un enseignant et d’élèves lors d’un examen. Lorsqu'un étudiant (programme) étudie la réponse à la question (opération entrée-sortie), l'enseignant (processeur) écoute la réponse d'un autre étudiant (calcul). Naturellement, cette situation nécessite plusieurs étudiants dans la salle. De même, la multiprogrammation nécessite la présence de plusieurs programmes en mémoire en même temps. Dans ce cas, chaque programme est chargé dans sa propre zone de RAM, appelée section, et ne devrait pas affecter l’exécution d’un autre programme (les étudiants sont assis à des tables séparées et ne se sollicitent pas mutuellement).

L'avènement de la multiprogrammation nécessite une véritable révolution dans la structure d'un système informatique. Le support matériel joue ici un rôle particulier (de nombreuses innovations matérielles sont apparues au stade précédent d’évolution), dont les principales caractéristiques sont énumérées ci-dessous.

- Mise en place de mécanismes de défense . Les programmes ne doivent pas avoir un accès indépendant à l’allocation de ressources, ce qui conduit à privilégié  et non privilégié  équipes. Les commandes privilégiées, telles que les commandes d'E / S, ne peuvent être exécutées que par le système d'exploitation. Ils disent que cela fonctionne en mode privilégié. Le passage du contrôle du programme d'application au système d'exploitation s'accompagne d'un changement de mode contrôlé. En outre, il s’agit d’une protection de la mémoire qui vous permet d’isoler les programmes utilisateurs concurrents les uns des autres et le système d’exploitation des programmes utilisateurs.

- La présence d'interruptions . Les interruptions externes informent le système d'exploitation qu'un événement asynchrone s'est produit, par exemple qu'une opération d'E / S est terminée. Des interruptions internes (désormais appelées situations exceptionnelles) se produisent lorsque l'exécution d'un programme entraîne une situation nécessitant une intervention du système d'exploitation, par exemple une division par zéro ou une tentative de violation de la protection.

- Le développement de la simultanéité en architecture . L'accès direct à la mémoire et l'organisation des canaux d'entrée-sortie ont libéré le processeur central des opérations de routine.

Le rôle du système d'exploitation est également important dans l'organisation de la multiprogrammation. Elle est responsable des opérations suivantes:

Organisation de l'interface entre le programme d'application et le système d'exploitation à l'aide d'appels système;

Mise en file d'attente des tâches en mémoire et affectation d'un processeur à l'une des tâches requises pour la planification de l'utilisation du processeur;

Pour passer d'une tâche à une autre, il faut gérer le contenu des registres et les structures de données nécessaires à la tâche, autrement dit le contexte afin de garantir la continuité des calculs;

La mémoire étant une ressource limitée, des stratégies de gestion de la mémoire sont nécessaires, c’est-à-dire qu’il est nécessaire de rationaliser les processus de placement, de remplacement et de récupération des informations de la mémoire;

Organisation du stockage d'informations sur des supports externes sous la forme de fichiers et fourniture d'un accès à un fichier spécifique uniquement à certaines catégories d'utilisateurs;

Les programmes pouvant nécessiter un échange de données autorisé, il est nécessaire de leur fournir des outils de communication;

Pour un échange correct de données, il est nécessaire de résoudre les situations de conflit qui surviennent lorsqu’on travaille avec diverses ressources et d’assurer la coordination des programmes de leurs actions, c.-à-d. équiper le système avec des outils de synchronisation.

Les systèmes de multiprogrammation ont permis d’utiliser plus efficacement les ressources du système (par exemple, processeur, mémoire, périphériques), mais ils sont restés longtemps par lots. L'utilisateur ne pouvait pas interagir directement avec la tâche et devait prévoir à l'aide de cartes de contrôle toutes les situations possibles. Les programmes de débogage prenaient encore beaucoup de temps et nécessitaient d’étudier des impressions multi-pages du contenu de la mémoire et des registres ou l’utilisation de l’impression de débogage.

L'avènement des écrans à rayons cathodiques et la refonte des applications de clavier ont mis la solution à ce problème. L’extension logique des systèmes de multiprogrammation est les systèmes à temps partagé, ou systèmes à temps partagé. Dans ces applications, le processeur bascule entre les tâches non seulement pendant la durée des opérations d'E / S, mais simplement après un certain temps. Ces commutateurs sont si fréquents que les utilisateurs peuvent interagir avec leurs programmes lors de leur exécution, c'est-à-dire de manière interactive. En conséquence, il devient possible pour plusieurs utilisateurs de travailler simultanément sur le même système informatique. Pour cela, chaque utilisateur doit avoir au moins un programme en mémoire. Afin de réduire les restrictions sur le nombre d’utilisateurs actifs, l’idée a été introduite de la découverte incomplète d’un programme exécutable en RAM. La partie principale du programme se trouve sur le disque et le fragment qui doit être exécuté pour le moment peut être chargé dans la RAM, et le fragment inutile peut être téléchargé sur le disque. Ceci est implémenté en utilisant mécanisme de mémoire virtuelle. Le principal avantage d'un tel mécanisme est la création de l'illusion d'une mémoire illimitée de mainframe.

Dans les systèmes à temps partagé, l'utilisateur était capable de déboguer le programme de manière interactive et d'écrire efficacement des informations sur le disque, sans utiliser de cartes perforées, mais directement à partir du clavier. L’émergence des fichiers en ligne a conduit à la nécessité de développer des systèmes de fichiers.

Parallèlement à l'évolution interne des systèmes informatiques, leur évolution externe s'est également produite. Avant le début de cette période, les systèmes informatiques étaient généralement incompatibles. Chacun avait son propre système d'exploitation, son propre système de commande, etc. En conséquence, un programme qui s'exécutait avec succès sur un type d'ordinateur devait être complètement réécrit et débogué pour s'exécuter à nouveau sur des ordinateurs d'un type différent. Au début de la troisième période, l'idée de créer des familles de machines compatibles avec les logiciels et fonctionnant sous le même système d'exploitation est apparue. La première famille d'ordinateurs compatibles avec les logiciels, construit sur des circuits intégrés, est devenu une série de machines IBM / 360. Développée au début des années 60, cette famille a largement dépassé les voitures de deuxième génération en termes de rapport qualité / prix. Il était suivi par une gamme d'ordinateurs PDP incompatibles avec la ligne IBM, et le PDP-11 était le meilleur modèle.

La force de «une famille» était en même temps sa faiblesse. Les vastes possibilités de ce concept (disponibilité de tous les modèles: des mini-ordinateurs aux machines gigantesques, à une multitude de périphériques divers, à des environnements variés, à des utilisateurs variés) ont donné lieu à un système d’exploitation complexe et encombrant. Des millions de lignes d'assembleur écrites par des milliers de programmeurs contenaient de nombreuses erreurs, ce qui provoquait un flot continu de publications à leur sujet et tentait de les corriger. Seul le système d'exploitation OS / 360 contenait plus de 1000 erreurs connues. Cependant l'idée de standardiser les systèmes d'exploitation  Il a été largement introduit dans l’esprit des utilisateurs et a été activement développé.

Prochaine période d'évolution  systèmes informatiques est associé à l’avènement des grands circuits intégrés (LSI). Ces années (de 1980 à nos jours)   le degré d'intégration et le coût des microcircuits ont fortement augmenté. Un ordinateur dont l'architecture et le prix ne diffèrent pas du PDP-11 en termes de prix et de facilité d'utilisation est désormais disponible pour un particulier et non pour un département d'une entreprise ou d'une université. L'ère des ordinateurs personnels est venue. Initialement, les ordinateurs personnels étaient destinés à être utilisés par un utilisateur unique en mode programme unique, ce qui entraînait la dégradation de l'architecture de ces ordinateurs et de leurs systèmes d'exploitation (en particulier, la nécessité de protéger les fichiers et la mémoire, de planifier des tâches, etc.).

Les ordinateurs ont commencé à être utilisés non seulement par des spécialistes, ce qui a nécessité le développement de logiciels "conviviaux".

Cependant, la complexité croissante et la variété des tâches résolues sur les ordinateurs personnels, la nécessité d'améliorer la fiabilité de leur travail ont conduit à la renaissance de presque toutes les fonctionnalités caractéristiques de l'architecture des grands systèmes informatiques.

Au milieu des années 80 a commencé à se développer rapidement réseau informatique, y compris personnels, gérés par systèmes d'exploitation réseau ou distribués.

Dans les systèmes d'exploitation de réseau  les utilisateurs peuvent accéder aux ressources d'un autre ordinateur du réseau, ils ont seulement besoin de connaître leur disponibilité et de pouvoir le faire. Chaque machine du réseau exécute son propre système d'exploitation local. Ce dernier diffère du système d'exploitation d'un ordinateur autonome par la disponibilité d'outils supplémentaires (prise en charge logicielle des périphériques d'interface réseau et accès aux ressources distantes), mais ces ajouts ne modifient pas la structure du système d'exploitation.

Système distribuéAu contraire, cela ressemble à un système autonome normal. L'utilisateur ne sait pas et ne doit pas savoir où ses fichiers sont stockés - sur un ordinateur local ou distant - et où ses programmes sont exécutés. Il se peut même qu'il ne sache pas si son ordinateur est connecté au réseau. La structure interne d'un système d'exploitation distribué présente des différences significatives par rapport aux systèmes autonomes.

Dans ce qui suit, nous appellerons systèmes d'exploitation autonomes les systèmes d'exploitation classiques.

Après avoir passé en revue les étapes de développement des systèmes informatiques, nous pouvons souligner six fonctions principalesqui a exécuté des systèmes d'exploitation classiques au cours de l'évolution:

Planification des tâches et utilisation du processeur;

Fournir des programmes avec des outils de communication et de synchronisation;

Gestion de la mémoire;

Gestion du système de fichiers;

Gestion des E / S;

La sécurité

Chacune de ces fonctions est généralement implémentée en tant que sous-système, composant structurel du système d'exploitation. Dans chaque système d'exploitation, ces fonctions ont bien entendu été implémentées à leur manière, dans des volumes différents. Ils n'étaient pas à l'origine inventés en tant que composants de systèmes d'exploitation, mais sont apparus au cours du processus de développement, les systèmes informatiques devenant plus pratiques, plus efficaces et plus sûrs. L’évolution des systèmes informatiques créés par l’homme a emprunté une telle voie, mais personne n’a encore prouvé qu’il s’agissait de la seule voie possible pour leur développement. Les systèmes d’exploitation existent parce qu’ils sont pour le moment une manière raisonnable d’utiliser des systèmes informatiques.

Lorsqu’on examine l’évolution du système d’exploitation, il convient de garder à l’esprit que la différence de temps entre la mise en œuvre de certains principes de l’organisation de systèmes d’exploitation individuels jusqu’à ce qu’ils soient généralement reconnus, ainsi que l’incertitude terminologique, ne permettent pas de donner une chronologie précise du développement du système d’exploitation. Cependant, il est désormais possible de déterminer avec précision les principales étapes de l'évolution des systèmes d'exploitation.

Il existe également différentes approches pour déterminer la génération du système d'exploitation. On sait que le système d’exploitation est divisé en générations en fonction des générations d’ordinateurs et de systèmes [ 5 , 9 , 10 , 13 ]. Une telle division ne peut être considérée comme totalement satisfaisante, car le développement des méthodes d’organisation des systèmes d’exploitation dans le cadre d’une génération informatique unique, comme le montre l’expérience de leur création, se situe dans une assez large gamme. Un autre point de vue ne relie pas la génération de système d'exploitation aux générations d'ordinateur correspondantes. Ainsi, par exemple, la définition des générations de systèmes d’exploitation est connue par les niveaux de langage informatique d’entrée, les modes d’utilisation des processeurs centraux, les formes de fonctionnement des systèmes, etc. [ 5 , 13 ].

Apparemment, le plus approprié devrait être de répartir les étapes de développement du système d’exploitation dans le cadre de générations individuelles d’ordinateurs et d’aéronefs.

La première étape du développement du logiciel système peut être considérée comme l’utilisation de programmes de bibliothèque, de routines standard et utilitaires et de macros. Le concept de routines de bibliothèque est le plus ancien et remonte à 1949 [ 4 , 17 ]. Avec l'avènement des bibliothèques, des outils de support automatiques - téléchargeurs et éditeurs de liens - se sont développés. Ces outils étaient utilisés dans les ordinateurs de première génération, lorsque les systèmes d'exploitation en tant que tels n'existaient pas encore.

Le désir de supprimer le décalage entre les performances des processeurs et la vitesse des dispositifs d’entrée-sortie électromécaniques, d’une part, et l’utilisation de lecteurs suffisamment rapides sur bandes et tambours magnétiques (NML et NMB), puis sur disques magnétiques (NMD), d’autre part, ont conduit à la nécessité de résoudre les problèmes de mise en mémoire tampon et de blocage des données. Des programmes spéciaux de méthodes d'accès sont apparus qui ont été introduits dans les objets des modules d'éditeur de liens (par la suite, les principes de la mémoire tampon ont commencé à être utilisés). Des programmes de diagnostic ont été créés pour maintenir l’opérabilité et faciliter le fonctionnement des machines. Ainsi, le logiciel système de base a été créé.

Avec l'amélioration des caractéristiques des ordinateurs et la croissance de leur productivité, il est devenu évident que les logiciels de base existants (logiciels) ne suffisent pas. Il y avait des systèmes d'exploitation de traitement par lots au début - les moniteurs. Dans le cadre du système de traitement par lots, lors de l'exécution de tout travail du lot (traduction, assemblage, exécution du programme terminé), aucune partie du logiciel système n'était en mémoire vive, car toute la mémoire avait été fournie pour le travail en cours. Viennent ensuite les systèmes de contrôle dans lesquels la RAM est divisée en trois zones: une zone fixe du système de contrôle, une zone utilisateur et une zone de mémoire partagée (pour stocker les données pouvant être échangées par les modules d’objets).

Le développement intensif des méthodes de gestion des données a commencé, une fonction importante du système d'exploitation est apparue, telle que la mise en œuvre d'entrées-sorties sans la participation du processus central - le spooling (tiré de l'anglais SPOOL - Opération de périphérique simultané en ligne).

L’apparition de nouveaux développements matériels (1959-1963) - systèmes d’interruption, minuteries, canaux - a stimulé le développement ultérieur du système d’exploitation [ 4 , 5 , 9 ]. Des systèmes exécutifs sont apparus, qui consistaient en un ensemble de programmes destinés à la distribution de ressources informatiques, à la communication avec l'opérateur, au contrôle du processus de calcul et au contrôle des E / S. Ces systèmes exécutifs permettaient alors de mettre en place une forme relativement efficace d’exploitation informatique à l’époque: le traitement par lots à programme unique. Ces systèmes fournissaient à l'utilisateur des outils tels que des points de contrôle, des temporisateurs logiques, la possibilité de créer une structure de superposition de programmes, de détecter les violations par des programmes de restrictions adoptées dans le système, de gérer des fichiers, de collecter des informations comptables, etc.

Cependant, le traitement par lots à programme unique avec des performances informatiques croissantes ne pouvait fournir un niveau de fonctionnement de la machine économiquement acceptable. La solution était la multiprogrammation - une façon d’organiser un processus de calcul dans lequel plusieurs programmes de la mémoire de l’ordinateur étaient exécutés en alternance par un processeur. Pour démarrer ou continuer à compter pour un programme, il n’était pas nécessaire de compléter les autres. Dans un environnement multi-programmes, les problèmes d’allocation et de protection des ressources sont devenus plus aigus et difficiles à résoudre.

La théorie des systèmes d'exploitation du bâtiment au cours de cette période s'est enrichie d'un certain nombre d'idées fructueuses. Divers modes de fonctionnement multi-programmes sont apparus, notamment le partage du temps - un mode qui assure le fonctionnement d'un système multi-terminal. Le concept de mémoire virtuelle, puis de machines virtuelles, a été créé et développé. Le mode de partage du temps a permis à l'utilisateur d'interagir de manière interactive avec ses programmes, comme avant l'avènement des systèmes de traitement par lots.

Le système d’exploitation MCP (programme de contrôle principal) créé par Burroughs pour ses ordinateurs B5000 en 1963 est l’un des premiers systèmes d’exploitation utilisant ces dernières solutions. De nombreux concepts et idées ont été mis en œuvre dans ce système d'exploitation, qui est ensuite devenu standard pour de nombreux systèmes d'exploitation:

    la multiprogrammation;

    traitement multiprocesseur;

    mémoire virtuelle;

    la possibilité de déboguer des programmes dans la langue source;

    Écrire un système d'exploitation dans un langage de haut niveau.

Le célèbre système de partage du temps de cette période était le CTSS (Système compatible de partage du temps), un système compatible mis au point par le Massachusetts Institute of Technology (1963) pour l'ordinateur IBM-7094 [ 37 ]. Ce système a été utilisé pour développer dans le même institut, conjointement avec Bell Labs et General Electric, le système de partage du temps de nouvelle génération MULTICS (service d'information et d'informatique multiplexé). Il est à noter que ce système d'exploitation a été écrit principalement dans le langage de haut niveau EPL (la première version du langage PL / 1 a été créée par IBM).

L’un des événements les plus importants de l’histoire des systèmes d’exploitation est l’apparition en 1964 d’une famille d’ordinateurs appelée System / 360 d’IBM, et plus tard - System / 370 [ 11 ]. Ce fut la première implémentation du concept d’une famille d’ordinateurs compatibles avec les logiciels et l’information, qui devint plus tard standard pour toutes les entreprises du secteur de l’informatique.

Il convient de noter que la principale forme d'utilisation des ordinateurs, à la fois dans les systèmes à temps partagé et dans les systèmes de traitement par lots, est devenue le mode multi-terminal. Parallèlement, non seulement l'opérateur, mais également tous les utilisateurs ont eu la possibilité de formuler leurs tâches et de gérer leur mise en œuvre à partir de leur terminal. Étant donné que les complexes de terminaux ont rapidement été placés à distance de l’ordinateur (grâce aux connexions téléphoniques modernes), des systèmes de saisie à distance et de traitement à distance sont apparus. Des modules mettant en œuvre des protocoles de communication ont été ajoutés à l'OS [ 10 , 13 ].

À ce moment-là, la répartition des fonctions entre le matériel et les logiciels de l'ordinateur avait considérablement changé. Le système d'exploitation devient une "partie intégrante de l'ordinateur", comme une continuation du matériel. Dans les processeurs, apparaissaient des modes de fonctionnement privilégiés (superviseur sous OS / 360) et utilisateur (tâche sous OS / 360), un système d’interruption puissant, une protection de la mémoire, des registres spéciaux permettant de changer rapidement de programme, des outils de support de la mémoire virtuelle, etc.

Au début des années 70, sont apparus les premiers systèmes d’exploitation de réseau, qui permettaient non seulement de disperser les utilisateurs, comme dans les systèmes de télétraitement, mais également d’organiser le stockage et le traitement distribués des données entre ordinateurs connectés par des connexions électriques. Le célèbre projet ARPANET MO USA. En 1974, IBM a annoncé la création de sa propre architecture de réseau SNA pour ses ordinateurs centraux, fournissant des communications de terminal à terminal, de terminal à ordinateur et d’ordinateur à ordinateur. En Europe, la technologie a été activement développée pour la construction de réseaux à commutation de paquets basés sur les protocoles X.25.

Au milieu des années 70, avec les ordinateurs centraux, les mini-ordinateurs (PDP-11, Nova, HP) étaient largement utilisés. L'architecture des mini-ordinateurs était beaucoup plus simple, de nombreuses fonctions du système d'exploitation mainframe multiprogramme étaient tronquées. Les systèmes d'exploitation pour mini-ordinateurs ont commencé à être spécialisés (RSX-11M - partage du temps, RT-11 - OC en temps réel) et pas toujours multi-utilisateurs.

La création du système d'exploitation UNIX a été une étape importante dans l'histoire des mini-ordinateurs et en général dans celle des systèmes d'exploitation. Ce système a été écrit par Ken Thompson, l'un des experts en informatique de BELL Labs, qui a travaillé sur le projet MULTICS. En réalité, son système UNIX est une version mono-utilisateur tronquée du système MULTICS. Le nom d'origine de ce système est UNICS (Service d'information et de calcul uniplexé - Information primitive et service informatique). Ce système a été qualifié de plaisanterie, car MULTICS (service d’information et d’informatique multiplexé) est un service d’information et informatique multiplexé. Depuis le milieu des années 70, le système d'exploitation UNIX, écrit à 90% en langage C, était utilisé à grande échelle. Grâce à l'utilisation généralisée des compilateurs C, UNIX était un OC portable unique et, puisqu'il était fourni avec le code source, il était devenu le premier système d'exploitation ouvert. La souplesse, l’élégance, les fonctionnalités puissantes et l’ouverture lui ont permis d’occuper une place de choix dans toutes les catégories d’ordinateurs - des ordinateurs personnels aux super-ordinateurs.

La disponibilité de mini-ordinateurs a stimulé la création de réseaux locaux. Dans les réseaux locaux les plus simples, les ordinateurs étaient connectés via des ports série. La première application réseau pour OS UNIX - UUCP (programme de copie Unix à Unix) - est apparue en 1976.

Développement ultérieur des systèmes de réseau avec la pile de protocoles TCP / IP: en 1983, il a été adopté par le MO américain comme norme et utilisé dans le réseau ARPANET. La même année, ARPANET se sépare en MILNET (pour l’armée américaine) et le nouvel ARPANET, connu sous le nom d’Internet.

Les années quatre-vingt sont caractérisées par l’apparition de versions de plus en plus avancées d’UNIX: systèmes d’exploitation Sun, HP-UX, Irix, AIX, etc. Pour résoudre le problème de leur compatibilité, les normes POSIX et XPG ont été adoptées qui définissent les interfaces de ces systèmes pour les applications.

L’apparition des ordinateurs personnels au début des années 80 a également marqué l’histoire des systèmes d’exploitation. Ils ont fortement stimulé la distribution des réseaux locaux. En conséquence, la prise en charge des fonctions réseau est devenue une condition préalable au système d’exploitation PC. Cependant, l'interface conviviale et les fonctions réseau n'apparaissaient pas immédiatement sur le système d'exploitation du PC [ 13 ].

La version la plus populaire du système d'exploitation à ses débuts dans le développement des ordinateurs personnels était le système d'exploitation MS-DOS de Microsoft, à programme unique et utilisateur unique, doté d'une interface à ligne de commande. Plusieurs autres fonctions, telles que Norton Commander, PC Tools, etc., fournissaient de nombreuses fonctions offrant un grand confort d'utilisation. Sous Windows, la plus grande influence sur le développement du logiciel PC était l'influence de l'environnement d'exploitation Windows, dont la première version a été publiée en 1985. Les fonctions réseau ont également été implémentées à l'aide de shells réseau et sont apparues dans MS-DOS version 3.1. Au même moment, les produits réseau de Microsoft sont apparus - MS-NET, et plus tard - LAN Manager, Windows pour Workgroup, puis Windows NT.

Novell a fait l'inverse: son produit NetWare est un système d'exploitation avec des fonctionnalités réseau intégrées. Le système d’exploitation NetWare a été distribué en tant que système d’exploitation pour le serveur central du réseau local et, en raison de la spécialisation des fonctions du serveur de fichiers, a fourni un accès distant très rapide aux fichiers et une sécurité accrue des données. Cependant, ce système d’exploitation possédait une interface de programmation (API) spécifique, ce qui rendait le développement d’applications difficile.

En 1987, le premier système d’exploitation multitâche pour PC est apparu - OS / 2, développé par Microsoft en collaboration avec IBM. Il s’agissait d’un système bien conçu avec une mémoire virtuelle, une interface graphique et la possibilité d’exécuter des applications DOS. Des shells de réseau LAN Manager (Microsoft) et LAN Server (IBM) ont été créés et répartis pour cela. Les performances de ces shells étaient inférieures à celles du serveur de fichiers NetWare et consommaient davantage de ressources matérielles, mais présentaient des avantages importants. Ils vous permettaient d'exécuter sur le serveur n'importe quel programme conçu pour OS / 2, MS-DOS et Windows. En outre, vous pouviez utiliser l'ordinateur sur lequel ils travaillaient en tant que station de travail. Le destin infructueux d'OS / 2 sur le marché ne permettait pas aux systèmes LAN-Manager et LAN-Server de conquérir une part de marché importante, mais les principes de fonctionnement de ces systèmes de réseau étaient largement incarnés dans le système d'exploitation des années 90 - MS Windows NT.

Dans les années 80, les principales normes relatives aux technologies de communication pour les réseaux locaux ont été adoptées: en 1980 - Ethernet, en 1985 - en anneau à jeton, à la fin des années 80 - en FDDI (Fibre Distributed Data Interface), une interface de transmission distribuée de données canaux en fibre optique, double anneau avec marqueur. Cela a permis d'assurer la compatibilité des systèmes d'exploitation réseau aux niveaux inférieurs et de normaliser les systèmes d'exploitation avec les pilotes de carte réseau.

Pour les PC, non seulement les systèmes d’exploitation spécialement conçus pour eux (MS-Dos, NetWare, OS / 2) ont été utilisés, mais les systèmes d’exploitation existants, en particulier UNIX, ont été adaptés. Le système le plus célèbre de ce type était la version UNIX de Santa Cruz Operation (SCO UNIX).

Dans les années 90, presque tous les systèmes d’exploitation, qui occupent une place de choix sur le marché, ont été mis en réseau. Les fonctions réseau sont intégrées au noyau du système d'exploitation et en font partie intégrante. Le système d'exploitation utilise le moyen de multiplexer plusieurs piles de protocoles, ce qui permet aux ordinateurs de prendre en charge le travail simultané avec des serveurs et des clients hétérogènes. Des systèmes d'exploitation spécialisés sont apparus, par exemple, Cisco System Network IOS fonctionnant dans des routeurs. Dans la seconde moitié des années 90, tous les fabricants de systèmes d’exploitation ont accru leur capacité à utiliser des interfaces. Outre la pile de protocoles TCP / IP, le package a commencé à inclure des utilitaires qui implémentent les services Internet les plus populaires: telnet, ftp, DNS, Web, etc.

Une attention particulière a été accordée au cours de la dernière décennie et porte actuellement sur les systèmes d'exploitation de réseau d'entreprise. C’est l’une des tâches les plus importantes dans un avenir prévisible. Les systèmes d'exploitation d'entreprise doivent fonctionner correctement et de manière stable dans les grands réseaux caractéristiques des grandes organisations (entreprises, banques, etc.) ayant des succursales dans de nombreuses villes et éventuellement dans différents pays. Un système d'exploitation d'entreprise doit interagir de manière transparente avec différents types de systèmes d'exploitation et fonctionner sur différentes plates-formes matérielles. Les leaders de la classe de système d'exploitation d'entreprise sont maintenant définis: il s'agit des systèmes MS Windows 2000/2003, UNIX et Linux, ainsi que de Novell NetWare 6.5.

Aimez-vous l'article? Partager avec des amis: