Premier chargement du pc. Processus de téléchargement : étape par étape

Vous êtes-vous déjà demandé ce qui arrive au système d'exploitation au moment où il dessine son logo et dit « Démarrage de Windows » ? Et en général, pourquoi est-ce long à charger ? Après tout, au démarrage du système, aucune tâche complexe d'un point de vue informatique n'est certainement pas résolue !

Que signifie alors le chargement système opérateur? Il s'agit principalement de la projection de modules exécutables en mémoire et de l'initialisation des structures de données de service. Les structures de données vivent en mémoire, donc les opérations avec elles, en théorie, devraient être rapides. Tout porte à croire que le temps est consommé par le processus de chargement des modules exécutables en mémoire.

Par souci d'intérêt, déterminons quels modules, en quelle quantité et dans quel ordre sont chargés au démarrage du système d'exploitation. Pour le savoir, vous pouvez, par exemple, récupérer le journal de démarrage du système. Le système d'exploitation expérimental dans mon cas est Windows 7 Enterprise x64. Nous allons enregistrer le processus de démarrage à l'aide du débogueur du noyau. Il existe plusieurs options pour les débogueurs du noyau, je préfère personnellement WinDbg. Nous avons également besoin d'aides pour transformer magiquement la bûche en quelque chose de plus agréable à l'œil.

Exploitation minière et artisanat

La configuration du débogage est bien googlée, je ne décrirai donc pas ce processus en détail. Puisque nous sommes intéressés par tout ce qui se passe à partir du moment où le système démarre, nous devons vérifier l'élément "Cycle Initial Break", à l'aide duquel le débogueur s'arrêtera dès que le sous-système de débogage du noyau sera chargé dans le système débogué. Dupliquer la sortie dans un fichier peut se faire avec les commandes ".logopen" et ".logclose", c'est simple. Autre commande utile- ".cls". Il efface l'écran de commande, et oui, uniquement l'écran de commande.

La fonction qui nous intéresse est "MiCreateImageFileMap". Il s'agit d'une fonction interne du gestionnaire de mémoire qui projette un fichier exécutable en mémoire. La projection mémoire se produit lors de la création d'une section, par exemple lors du lancement d'un fichier exécutable. Cependant, gardez à l'esprit que si un exécutable est projeté en mémoire, ce n'est pas une garantie que son code sera exécuté ! Cette fonction crée simplement une projection, le plus souvent "en réserve", afin que si quelqu'un décide de lancer le module pour exécution, il soit possible de gagner son temps de chargement. Nous mettons un point d'arrêt de journalisation sur cette fonction.

Si vous avez assez de mana, saisissez la commande suivante :
bu nt! MiCreateImageFileMap "dt nt! _EPROCESS -d ImageFileName @ $ proc; dt nt! _FILE_OBJECT -d FileName @rcx; g"
La ligne magique signifie littéralement ce qui suit :

  • bu (Définir un point d'arrêt non résolu) - définit un point d'arrêt non résolu. Ce n'est pas que quelqu'un ou quelque chose ne l'a pas permis, c'est juste que pour l'installer, vous devez décider à quelle adresse l'installer. Le fait est qu'on ne sait pas à l'avance à quelle adresse il doit être situé. Lors du chargement d'un module, la présence dans celui-ci est vérifiée fonction nécessaire, et si une telle fonction est trouvée, le point d'arrêt est défini automatiquement. Cette méthode d'installation est indispensable lorsque l'ASLR est activé - la randomisation de l'espace d'adressage, car les modules seront chargés à des adresses différentes à chaque fois, et un point d'arrêt défini à une adresse fixe est susceptible d'être sans travail.
  • MiCreateImageFileMap - le symbole auquel s'arrêter. WinDbg accepte une entrée de la forme "nom_module! nom_fonction". Dans ce cas, nt est un alias prédéfini pour ntoskrnl.exe.
  • ce qui suit est une partie du script WinDbg qui sera exécuté chaque fois que vous vous arrêterez à cette fonction. « Dt nt! _EPROCESS -d ImageFileName @ $ proc » en russe signifie « afficher le champ ImageFileName de la structure _EPROCESS du module nt, à condition qu'il soit affiché à l'adresse définie dans le « processus en cours » pseudo-registre ». Après le séparateur ";" la commande signifie à peu près la même chose, seule l'adresse de la structure est extraite du registre rcx, dans lequel le premier paramètre de la fonction est passé dans l'ABI Microsoft x64. "G" signifie "aller", c'est-à-dire continuer l'exécution.

Une petite recommandation pour l'utilisation des points d'arrêt de journalisation : essayez de ne pas utiliser d'extensions de débogueur (commandes commençant par " !"), car dans ce cas, la journalisation sera d'un ordre de grandeur plus lente.

Aller! Relâchez le frein de point d'arrêt et attendez. J'ai attendu que le bureau soit chargé, c'est-à-dire Je me suis connecté. Le "recadrage" résultant est légèrement modifié, tout ce qui est inutile est coupé pour la commodité d'un traitement ultérieur et transmis à l'ami du python. Ne nous concentrons pas sur l'analyse du journal. Nous remarquons seulement que le graphique s'insère dans la forme de la spirale d'Archimède avec une correction manuelle supplémentaire, puisque les nœuds étaient superposés les uns aux autres. Le graphe résultant prend en compte l'ordre dans lequel les bibliothèques sont chargées. Malheureusement, j'ai dû sacrifier l'ordre de chargement des exécutables par rapport aux bibliothèques pour des raisons de lisibilité du graphe.

Carte des étoiles


Sélectionnons conditionnellement plusieurs groupes de chargement.

L'OC commence à fonctionner dans le module ntoskrnl.exe, qui est le noyau du système d'exploitation. Et plus précisément, avec la fonction KiSystemStartup(). Avec les composants système chargeables, il constitue la base du système d'exploitation : séparation des modes de fonctionnement, services de base pour applications personnalisées etc. Ce groupe comprend également les pilotes marqués pour le chargement au démarrage du système. En un mot, c'est là que Windows est né.

Le nœud suivant est le gestionnaire de session. Il est représenté par le premier après le démarrage du processus système sous Windows - smss.exe. Le processus est remarquable pour être natif Processus Windows c'est-à-dire qu'il n'utilise pas le sous-système Win32, qui n'est généralement pas encore chargé. Ce processus utilise uniquement les services du système d'exploitation natif via ntdll.dll, qui est une interface en mode utilisateur pour les services du système d'exploitation. De plus, ce processus est un composant de confiance du système d'exploitation et possède des droits exclusifs, par exemple, il peut créer des jetons de sécurité. Mais son objectif principal est de créer des sessions et d'initialiser des sous-systèmes, à la fois graphiques et divers exécutables (Windows, POSIX). Cette coquille récompense chacun selon ses besoins.

Le groupe d'ouverture de session se compose de plusieurs processus. En général, ils sont responsables de l'initialisation des sessions. Cela inclut l'affichage d'un écran de bienvenue, la création de bureaux, le démarrage des processus de démarrage et l'initialisation du moteur de sécurité, etc. Ce balai balaie tous les étrangers.

Le groupe de services s'est avéré être le plus massif. Il doit une grande partie de son volume au service SuperFetch. C'est celui dont ils disent qu'il se charge à l'avance le week-end suite bureautique, et au début de la semaine de travail - Vapeur avec des jouets. Superfetch charge un grand nombre de modules au démarrage du système, de sorte que plus tard « tout fonctionnera plus rapidement ». Et à part lui, le système a suffisamment d'applications de service et de pilotes à exécution automatique. Je pense que tout le monde a vu le composant logiciel enfichable Services et applications. Cette star de la vie allume tout ce qui est nécessaire et pas grand-chose dans le système.

Le dernier à noter est le bien-aimé explorer.exe. Il est à noter qu'au moment où il démarre, tous les modules qu'il utilise sont déjà chargés en mémoire. La capture d'écran comprend également un certain vcredist_x64.exe - le pauvre garçon était allongé sur le bureau de la machine virtuelle expérimentale et a été chargé en mémoire par le conducteur.

En général, un module a plusieurs façons d'être chargé en mémoire. Par exemple, il suffit de demander des informations aux ressources du fichier exécutable, y compris son icône. Plus précisément, dans cet exemple, Explorer a vérifié si le programme était élevé, c'est-à-dire s'il vaut la peine de compléter le dessin correspondant avec un bouclier jaune-bleu à l'icône. Encore une fois, je constate que charger un module en mémoire ne signifie pas exécuter son code !

Personnellement, je garde l'image résultante à portée de main. Les dépendances, par exemple, les drivers sont bien tracés dessus. De plus, associé à l'utilitaire Sysinternals Autoruns, vous pouvez voir à quel stade de chargement certains modules sont extraits.

Le graphique de démarrage a été conçu pour Windows 7 Entreprise x64 installé sur machine virtuelle VMware. Ci-dessous se trouvent les image vectorielle graphique et directement un fichier au format gml, avec lequel vous pouvez jouer dans n'importe quel éditeur de graphique.

Démarrage du système d'exploitation

Les fichiers du système d'exploitation se trouvent sur un disque (disque dur ou disquette). Cependant, les programmes ne peuvent être exécutés que s'ils sont en mémoire vive les fichiers du système d'exploitation doivent donc être chargés dans la RAM.

Lorsque l'ordinateur est allumé, il teste ses appareils et essaie de charger le système d'exploitation, le programme qui contrôle l'ordinateur.

Ce processus est appelé amorcer. Il s'exécute automatiquement lorsque l'ordinateur est allumé.

Après avoir allumé l'ordinateur, le système d'exploitation est chargé à partir du disque système dans la RAM, ce qui doit être effectué conformément au programme de démarrage.

L'ordinateur contient une mémoire morte (ROM) contenant des programmes pour tester l'ordinateur et la première étape de chargement du système d'exploitation, appelés BIOS ( système d'entrée/sortie de base). La ROM est située sur la carte système et est alimentée par une batterie, de sorte que les programmes qui y sont écrits ne sont pas effacés lorsque l'ordinateur est éteint.

Après avoir allumé l'ordinateur, ces programmes commencent à s'exécuter et des informations sur la progression de ce processus s'affichent sur l'écran d'affichage. Tout d'abord, le matériel est testé et réglé, puis le système d'exploitation est chargé.

A ce stade, le processeur accède au disque et recherche à un endroit précis (dans 1 secteur du disque) la présence d'un tout petit programme de chargement Démarrage principal. Si le disque est un disque système, alors Master Boot est en place, lu en mémoire et le contrôle y est transféré. À son tour, Master Boot recherche le chargeur de démarrage principal sur le disque Secteur de démarrage, le charge en mémoire et lui transfère le contrôle. Ensuite, le chargeur principal recherche le reste des modules du système d'exploitation et les charge dans la RAM.

Si le lecteur n'est pas inséré disque système ou s'il n'y a pas de disque du tout, le message suivant apparaît sur l'écran du moniteur : Pas de disque système, et l'ordinateur se bloque.

Une fois le chargement du système d'exploitation terminé, le contrôle est transféré au processeur de commandes. En cas d'utilisation de l'interface ligne de commande l'invite du système apparaît à l'écran, sinon il se charge interface graphique.

Tous les fichiers d'un système d'exploitation ne peuvent pas être localisés simultanément dans la RAM, car le volume des systèmes d'exploitation modernes est de dizaines et de centaines de mégaoctets. Pour que l'ordinateur fonctionne, le module qui gère le système de fichiers, le processeur de commandes et les pilotes des appareils connectés doivent être dans la RAM. Les modules du système d'exploitation fournissant une interface graphique peuvent être chargés dans la RAM à la demande de l'utilisateur.

Questions d'autocontrôle 1. A quoi sert un système d'exploitation ? 2. Quels composants sont inclus dans le système d'exploitation ? 3. Qu'est-ce qu'un fichier, comment son nom est-il spécifié ? 4. Quelles extensions peuvent être fichiers texte? 5. Quelle est la différence entre rapide et formatage complet disque? 6. Quelle est la différence entre les structures de fichiers à un seul niveau et hiérarchiques ? 7. Quelles opérations avec les fichiers sont possibles ? 8. Quelles sont les principales étapes de chargement du système d'exploitation ?
Personnalisation Interface Windows Questions à étudier : 1. Bureau Windows. 1.1. Icônes et étiquettes d'objets. 1.2. Fenêtre. 1.3. Barre des tâches. 1.4. Panneau d'affichage. 2. La structure de la fenêtre du dossier. 2.1. Ligne de titre. 2.2. Boutons de contrôle de la taille de la fenêtre. 2.3. Icône du système. 2.4. Barre de menu. 2.5. Barre d'outils. 2.6. Barre d'adresse. 2.7. Champ de travail. 2.8. Barre d'état.

Les systèmes d'exploitation de la famille Windows sont les plus polyvalents. Ils peuvent être utilisés pour travailler avec programmes de bureau, pour le travail de consommation sur Internet, à des fins éducatives et de divertissement. Comme toutes les salles d'opération

De nombreux utilisateurs pensent que l'ordinateur démarre à l'aide du système d'exploitation, mais en fait, ce n'est que partiellement vrai. Dans ce matériel, vous apprendrez comment le PC démarre réellement et vous familiariserez avec des concepts aussi importants que BIOS, CMOS, UEFI et autres.

introduction

Pour de nombreuses personnes, le travail avec un ordinateur commence après le démarrage du système d'exploitation. Et ce n'est pas surprenant, puisque la grande majorité du temps, les PC modernes sont vraiment utilisés avec un graphisme pratique. shell Windows ou tout autre système d'exploitation. Dans cet environnement convivial pour nous, nous exécutons non seulement des programmes, des applications ou des jeux, mais nous effectuons également des réglages et configurons les paramètres du système pour nos propres besoins.

Mais, malgré toute sa multifonctionnalité, le système d'exploitation ne peut pas tout faire, et dans certains points clés, et est tout simplement impuissant. En particulier, cela concerne le démarrage initial de l'ordinateur, qui se produit complètement sans sa participation. De plus, le lancement de l'OS lui-même dépend largement du succès de cette procédure, ce qui peut ne pas arriver en cas de problème.

Pour certains, cela peut être une nouveauté, mais en réalité Windows n'est pas responsable du chargement de l'ordinateur "depuis et vers", il ne le poursuit qu'à un certain stade et se termine. L'acteur clé ici est un firmware complètement différent - le BIOS, dont nous parlerons de l'objectif et des fonctions principales dans cet article.

Qu'est-ce que le BIOS et pourquoi est-il nécessaire

Les composants clés de tout appareil informatique sont un ensemble de processeurs et de RAM, et pour cause. Le processeur est appelé à juste titre le cœur et le cerveau de tout PC, puisque toutes les principales opérations mathématiques lui sont confiées. Dans ce cas, toutes les commandes et données pour les calculs, le CPU ne peut prendre que de la RAM. Il y envoie également les résultats de son travail. Le processeur n'interagit directement avec aucun autre stockage d'informations, par exemple avec des disques durs.

C'est là que réside le principal problème. Pour que le processeur commence à exécuter les commandes du système d'exploitation, celles-ci doivent être en RAM. Mais lorsque le PC est allumé, la RAM est vide, car elle est volatile et ne peut pas stocker d'informations lorsque l'ordinateur est éteint. Dans le même temps, par eux-mêmes, sans la participation du système, les appareils informatiques ne peuvent pas mettre en mémoire les données nécessaires. Et nous voici face à une situation paradoxale. Il s'avère que pour charger l'OS en mémoire, le système d'exploitation doit déjà être en RAM.

Pour résoudre cette situation, même à l'aube de l'ère des ordinateurs personnels, les ingénieurs d'IBM ont suggéré d'utiliser un petit programme spécial appelé BIOS, parfois appelé chargeur de démarrage.

Mot BIOS(BYOS) est une abréviation des quatre mots anglais Basic Input/Output System, qui se traduit en russe signifie : « Basic input/output system ». Ce nom a été donné à un ensemble de micrologiciels responsables du fonctionnement des fonctions de base des adaptateurs vidéo, écrans, Disques durs, lecteurs de disque, claviers, souris et autres périphériques d'entrée/sortie de base.

Les principales fonctions du BIOS sont le démarrage initial du PC, les tests et la configuration matérielle initiale, l'allocation des ressources entre les appareils et l'activation de la procédure de démarrage du système d'exploitation.

Où est stocké le BIOS et qu'est-ce que le CMOS

Étant donné que le BIOS est responsable de la toute première étape du démarrage d'un ordinateur, quelle que soit sa configuration, ce programme devrait être disponible pour les périphériques de base immédiatement après avoir appuyé sur le bouton d'alimentation du PC. C'est pourquoi il n'est pas stocké sur le disque dur, comme la plupart des applications courantes, mais est écrit sur une puce de mémoire flash spéciale située sur la carte mère. Ainsi, l'accès au BIOS et le démarrage de l'ordinateur sont possibles même si aucun support de stockage n'est connecté au PC.

Les premiers ordinateurs utilisaient des puces pour stocker le BIOS mémoire permanente(ROM ou ROM), sur lequel le code du programme lui-même a été enregistré une fois en usine. Un peu plus tard, ils ont commencé à utiliser des puces EPROM et EEROM, dans lesquelles il était possible, si nécessaire, de réécrire le BIOS, mais uniquement à l'aide d'un équipement spécial.

Dans le personnel moderne Ordinateurs BIOS est stocké dans des microcircuits créés sur la base d'une mémoire flash, qui peut être réécrit à l'aide de programmes spéciaux directement sur un PC à la maison. Cette procédure est généralement appelée clignotant et est nécessaire pour mettre à jour le firmware vers de nouvelles versions ou le remplacer en cas de dommage.

De nombreuses puces BIOS ne sont pas soudées sur la carte mère, comme tous les autres composants, mais sont installées dans un petit connecteur spécial, ce qui vous permet de le remplacer à tout moment. Vérité, opportunité donnée il est peu probable que cela vous soit utile, car les cas nécessitant le remplacement de la puce BIOS sont très rares et ne se produisent presque jamais chez les utilisateurs à domicile.

La mémoire flash pour le stockage du BIOS peut être de différentes capacités. Autrefois, ce volume était très petit et ne dépassait pas 512 Ko. Les versions modernes du programme sont devenues un peu plus volumineuses et ont un volume de plusieurs mégaoctets. Mais en tout cas, en arrière plan applications modernes et les fichiers multimédias sont tout simplement minuscules.

Dans certaines cartes mères avancées, les fabricants peuvent installer non pas une, mais deux puces BIOS à la fois - la principale et la sauvegarde. Dans ce cas, si quelque chose arrive à la puce principale, l'ordinateur démarrera à partir de la sauvegarde.

En plus de la mémoire flash, qui stocke le BIOS lui-même, il existe un autre type de mémoire sur la carte mère qui est fourni pour stocker les paramètres de configuration de ce programme. Il est fabriqué à l'aide d'un semi-conducteur à oxyde métallique complémentaire ou CMOS(Oxyde métallique semi-conducteur complémentaire). C'est cette abréviation que l'on appelle la mémoire spécialisée, qui contient les données de démarrage de l'ordinateur utilisées par le BIOS.

La mémoire CMOS est alimentée par une batterie installée sur la carte mère. Grâce à cela, lorsque vous débranchez l'ordinateur de la prise, tous les paramètres du BIOS sont enregistrés. Dans les ordinateurs plus anciens, les fonctions de mémoire CMOS étaient affectées à un microcircuit séparé. Dans les PC modernes, il fait partie du chipset.

Procédure POST et démarrage initial du PC

Voyons maintenant à quoi ressemble le processus de démarrage initial et quel rôle le BIOS y joue.

Après avoir appuyé sur le bouton d'alimentation de l'ordinateur, l'alimentation démarre en premier, commençant à fournir une tension à la carte mère. Si c'est normal, le chipset donne une commande pour réinitialiser la mémoire interne du processeur central et le démarrer. Après cela, le processeur commence à lire et à exécuter séquentiellement les commandes écrites dans la mémoire système, dont le rôle est joué par la puce BIOS.

Au tout début, le processeur reçoit une commande pour effectuer un auto-test des composants de l'ordinateur ( PUBLIER- Auto-test à la mise sous tension). La procédure POST comprend plusieurs étapes, dont vous pouvez voir le passage pour la plupart sur l'écran du PC immédiatement après l'avoir allumé. La séquence de ce qui se passe avant de démarrer le démarrage du système d'exploitation est la suivante :

1. Tout d'abord, les principaux périphériques du système sont identifiés.

3. La troisième étape consiste à configurer l'ensemble logique du système, ou plus simplement, un chipset.

4. Ensuite, il y a une recherche et une définition de la carte vidéo. Si un adaptateur vidéo externe (autonome) est installé sur l'ordinateur, il disposera de son propre BIOS, que le BIOS du système principal recherchera dans une certaine plage d'adresses mémoire. Si une carte graphique externe est trouvée, la première chose que vous verrez à l'écran sera une image avec le nom de la carte vidéo, générée par son BIOS.

5. Après avoir trouvé adaptateur graphique, la vérification de l'intégrité des paramètres du BIOS et de l'état de la batterie commence. À ce moment, l'une après l'autre, ces mystérieuses inscriptions blanches commencent à apparaître sur l'écran du moniteur, provoquant l'admiration des utilisateurs inexpérimentés en raison d'un manque de compréhension de ce qui se passe. Mais en fait, rien de surnaturel ne se produit en ce moment, comme vous le verrez vous-même maintenant. La première inscription, la plus haute, contient généralement le logo des développeurs du BIOS et des informations sur sa version installée.

6. Ensuite, le test du processeur central commence, après quoi l'écran affiche des données sur la puce installée: le nom du fabricant, le modèle et sa fréquence d'horloge.

7. Ensuite commence à tester la RAM. Si tout se passe bien, la quantité totale de RAM installée s'affiche avec l'inscription OK.

8. À la fin de la vérification des principaux composants du PC, la recherche du clavier et le test des autres ports d'E/S commencent. Dans certains cas, à ce stade, l'ordinateur peut arrêter de démarrer si le système ne parvient pas à détecter le clavier connecté. Dans ce cas, un avertissement s'affichera immédiatement à l'écran.

9. Ensuite, la définition des lecteurs connectés à l'ordinateur, y compris les lecteurs optiques, disques durs et des lecteurs flash. Les informations sur les appareils trouvés s'affichent. Dans le cas où plusieurs contrôleurs de fabricants différents sont installés sur la carte mère, la procédure pour leur initialisation peut être affichée sur différents écrans.

Écran de définition du contrôleurEn sérieATA ayant son propreBIOS, avec la sortie de tous les périphériques qui y sont connectés.

10. Au stade final, les ressources sont allouées entre les périphériques internes trouvés du PC. Dans les anciens ordinateurs, après cela, un tableau récapitulatif de tous les équipements détectés s'affiche à l'écran. V machines modernes le tableau n'est plus affiché.

11. Enfin, si la procédure POST réussit, le BIOS commence à rechercher les lecteurs connectés Zone de démarrage principale(MBR), qui contient des informations sur le démarrage du système d'exploitation et le périphérique de démarrage auquel le contrôle doit être transféré.

Selon la version du BIOS installée sur l'ordinateur, la procédure POST peut avoir lieu avec de légères modifications par rapport à l'ordre décrit ci-dessus, mais en général, toutes les étapes principales que nous avons indiquées seront effectuées au démarrage de chaque PC.

Utilitaire de configuration du BIOS

Le BIOS est un système configurable et a propre programme réglage de certains paramètres du matériel du PC, appelés Configuration du BIOS Utilitaire ou Utilitaire de configuration CMOS... Il est appelé en appuyant sur une touche spéciale pendant la procédure d'autotest POST. Dans les ordinateurs de bureau, la touche Suppr est le plus souvent utilisée à cette fin, et dans les ordinateurs portables F2.

L'interface graphique de l'utilitaire de configuration matérielle est très austère et n'a pas beaucoup changé depuis les années 1980. Tous les réglages ici sont effectués à l'aide du clavier uniquement - aucune opération de souris n'est fournie.

La configuration CMOS / BIOS comporte de nombreux paramètres, mais les plus demandés par un utilisateur ordinaire sont les suivants : réglage de l'heure et de la date du système, choix de l'ordre périphériques de démarrage, activer/désactiver les équipements supplémentaires intégrés à la carte mère (son, vidéo ou adaptateurs réseau), gérer le système de refroidissement et surveiller la température du processeur, ainsi que changer la fréquence bus système(overclocking).

Pour différents modèles de cartes mères, le nombre de paramètres BIOS configurables peut varier considérablement. La plus large gamme de paramètres se trouve généralement dans les cartes mères de bureau coûteuses, destinées aux passionnés, aux amateurs jeux d'ordinateur et l'overclocking. En règle générale, l'arsenal le plus maigre se trouve dans les tableaux budgétaires conçus pour être installés dans des ordinateurs de bureau... Ils ne brillent pas non plus avec la variété Paramètres du BIOSécrasante majorité appareils mobiles... En savoir plus sur différents réglages Le BIOS et leur impact sur l'ordinateur seront discutés dans un article séparé.

Développement et mise à jour du BIOS

En règle générale, pratiquement pour chaque modèle de carte mère, sa propre version du BIOS est développée, qui prend en compte ses caractéristiques techniques individuelles: le type de chipset utilisé et les types d'équipements périphériques soudés.

Le développement du BIOS peut être divisé en deux étapes. Tout d'abord, une version de base du firmware est créée, qui implémente toutes les fonctions, quel que soit le modèle de chipset. Aujourd'hui, ces versions sont principalement développées par des entreprises Mégatendances américaines(AMIBIOS) et Phoenix Technologies, qui a acquis le acteur majeur sur ce marché - Award Software (AwardBIOS, Award Modular BIOS, Award WorkstationBIOS).

À la deuxième étape, les fabricants sont impliqués dans le développement du BIOS. cartes mères... A ce stade, la version de base est modifiée et améliorée pour chaque modèle spécifique carte, en tenant compte de ses caractéristiques. Dans le même temps, une fois la carte mère entrée sur le marché, le travail sur sa version du BIOS ne s'arrête pas. Les développeurs publient régulièrement des mises à jour qui peuvent corriger les bogues trouvés, ajouter la prise en charge du nouveau matériel et étendre les fonctionnalités du programme. Dans certains cas, la mise à jour du BIOS permet de redonner une seconde vie à une carte mère apparemment obsolète, par exemple en ajoutant la prise en charge d'une nouvelle génération de processeurs.

Qu'est-ce que le BIOS UEFI

Les principes de base du BIOS système pour les ordinateurs de bureau ont été formés dans les années 80 lointaines du siècle dernier. Au cours des dernières décennies, l'industrie informatique s'est développée rapidement et, pendant cette période, il y avait constamment des situations où de nouveaux modèles d'appareils se sont avérés incompatibles avec certaines versions du BIOS. Pour résoudre ces problèmes, les développeurs devaient constamment modifier le code du système d'E/S de base, mais au final, un certain nombre de limitations logicielles sont restées inchangées depuis les premiers PC domestiques. Cette situation a conduit au fait que le BIOS dans sa version classique a finalement cessé de répondre aux exigences du matériel informatique moderne, empêchant sa propagation dans le secteur des PC de masse. Il est devenu clair que quelque chose devait être changé.

En 2011, avec le lancement des cartes mères pour processeurs Intel Génération Sandy Bridge, installé dans le socket LGA1155, a commencé l'introduction massive d'une nouvelle interface logicielle pour le démarrage initial de l'ordinateur - UEFI.

En fait, la première version de cette alternative au BIOS conventionnel a été développée et utilisée avec succès par Intel dans les systèmes de serveurs à la fin des années 90. Ensuite, la nouvelle interface d'amorçage d'un PC s'appelait EFI (Extensible Firmware Interface), mais en 2005, sa nouvelle spécification s'appelait UEFI (Unified Extensible Firmware Interface). Aujourd'hui, ces deux abréviations sont considérées comme synonymes.

Comme vous pouvez le voir, les fabricants de cartes mères n'étaient pas pressés de passer à la nouvelle norme, essayant d'améliorer les variations traditionnelles du BIOS jusqu'au dernier. Mais le retard évident de ce système, y compris son interface 16 bits, l'impossibilité d'utiliser plus de 1 Mo d'espace mémoire adressable, le manque de prise en charge des disques d'un volume supérieur à 2 To et d'autres problèmes constants de compatibilité insolubles avec les nouveaux l'équipement est encore devenu un argument sérieux pour passer à une nouvelle solution logicielle. ...

Quels changements la nouvelle interface de démarrage d'Intel a-t-elle apportée et en quoi diffère-t-elle du BIOS ? Comme dans le cas du BIOS, la tâche principale de l'UEFI est de détecter correctement le matériel immédiatement après la mise sous tension du PC et de transférer le contrôle de l'ordinateur au système d'exploitation. Mais en même temps, les changements dans l'UEFI sont si profonds qu'il serait tout simplement incorrect de le comparer avec le BIOS.

Le BIOS est pratiquement immuable code de programme, cousu dans un microcircuit spécial et interagissant directement avec l'équipement informatique en utilisant ses propres outils logiciels... La procédure de démarrage d'un ordinateur à l'aide du BIOS est simple: immédiatement après avoir allumé l'ordinateur, le matériel est vérifié et simple pilotes universels pour les composants matériels de base. Le BIOS trouve ensuite le chargeur de démarrage du système d'exploitation et l'active. Ensuite, le système d'exploitation est chargé.

Le système UEFI peut être appelé une couche entre les composants matériels de l'ordinateur, avec leur propre micrologiciel, micrologiciel et système d'exploitation, ce qui lui permet également d'exécuter les fonctions du BIOS. Mais contrairement au BIOS, UEFI est une interface programmable modulaire qui comprend des services de test, de travail et de démarrage, des pilotes de périphérique, des protocoles de communication, des extensions fonctionnelles et son propre shell graphique, ce qui le fait ressembler à un système d'exploitation très léger. Dans le même temps, l'interface utilisateur de l'UEFI est moderne, prend en charge le contrôle de la souris et peut être localisée dans plusieurs langues, dont le russe.

Un avantage important d'EFI est son indépendance vis-à-vis de l'architecture multiplateforme et du processeur. Les spécifications de ce système lui permettent de fonctionner avec presque toutes les combinaisons de puces, que ce soit l'architecture x86 (Intel, AMD) ou ARM. De plus, l'UEFI a un accès direct à tout le matériel informatique et aux pilotes indépendants de la plate-forme, ce qui permet d'organiser, par exemple, l'accès à Internet ou sauvegarde disques.

Contrairement au BIOS, le code UEFI et toutes ses informations de service peuvent être stockés non seulement dans un microcircuit spécial, mais également sur des partitions internes et externes. disques durs, ainsi que le stockage en réseau. À son tour, le fait que les données de démarrage puissent être placées sur des disques de grande capacité permet en raison de architecture modulaire donner des fonctionnalités riches en EFI. Par exemple, il peut s'agir d'outils de diagnostic avancés, ou utilitaires utiles, qui peut être utilisé à la fois au stade du démarrage initial du PC et après le démarrage du système d'exploitation.

Un de plus caractéristique clé L'UEFI est la capacité de travailler avec des disques durs d'énormes volumes, marqués selon la norme GPT (Guid Partition Table). Ce dernier n'est pris en charge par aucune modification du BIOS, car il possède des adresses de secteur 64 bits.

Le démarrage d'un PC basé sur UEFI, comme avec le BIOS, commence par l'initialisation des périphériques. Mais en même temps, cette procédure est beaucoup plus rapide, car UEFI peut détecter plusieurs composants à la fois en mode parallèle (le BIOS initialise tous les appareils à tour de rôle). Ensuite, le système UEFI lui-même est chargé, sous le contrôle duquel un ensemble d'actions nécessaires est effectué (chargement des pilotes, initialisation du lecteur de démarrage, démarrage des services de démarrage, etc.), et seulement après le démarrage du système d'exploitation.

Il peut sembler qu'une telle procédure en plusieurs étapes devrait augmenter le temps de démarrage global du PC, mais en fait, c'est le contraire qui est vrai. Avec UEFI, le système démarre beaucoup plus rapidement grâce aux pilotes intégrés et à son propre chargeur de démarrage. En conséquence, avant de démarrer, le système d'exploitation reçoit des informations complètes sur le matériel de l'ordinateur, ce qui lui permet de démarrer en quelques secondes.

Malgré toute la progressivité de l'UEFI, il existe encore un certain nombre de restrictions qui entravent le développement et la distribution actifs de ce chargeur de démarrage. Le fait est que pour implémenter toutes les capacités de la nouvelle interface de démarrage, sa prise en charge complète des systèmes d'exploitation est requise. À ce jour, seul Windows 8 permet l'utilisation complète des capacités UEFI. Les versions 64 bits de Windows 7, Vista et Linux avec le noyau 3.2 et supérieur ont une prise en charge limitée de la nouvelle interface. Les capacités UEFI sont également utilisées dans le gestionnaire de démarrage BootCamp par Apple sur leurs propres systèmes Mac OS X.

Eh bien, comment l'ordinateur démarre-t-il à partir de l'UEFI s'il utilise un système d'exploitation non pris en charge (WindowsXP, Windows 7 32 bits) ou balisage de fichier(MBR) ? Pour de tels cas, la nouvelle interface de démarrage a un module de prise en charge de la compatibilité(Compatibility Support Module), qui est essentiellement un BIOS traditionnel. C'est pourquoi, vous pouvez voir combien d'ordinateurs modernes équipés de cartes mères avec UEFI, démarrez de manière traditionnelle en mode émulation BIOS. Le plus souvent, cela se produit parce que leurs propriétaires continuent d'utiliser des partitions de disque dur avec MBR traditionnel et ne veulent pas passer au partitionnement GPT.

Conclusion

De toute évidence, contrairement au BIOS traditionnel, l'UEFI est capable de bien plus que le simple processus de démarrage. La possibilité de lancer des services et des applications fonctionnels, à la fois au stade initial du démarrage du PC et après le lancement du système d'exploitation, ouvre un large éventail de nouvelles opportunités pour les développeurs et les utilisateurs finaux.

Mais en même temps, il est encore prématuré de parler d'un rejet complet du système d'E/S de base dans un avenir proche. Tout d'abord, vous devez vous rappeler que jusqu'à présent, la plupart des ordinateurs exécutaient WindowsXP et Windows 7 32 bits, qui ne sont pas pris en charge par UEFI. Et les disques durs marqués selon la norme GPT ne se trouvent pour la plupart que dans les nouveaux modèles d'ordinateurs portables sur Basé sur Windows 8.

Ainsi, tant que la majorité des utilisateurs, en raison de leurs habitudes ou pour une autre raison, seront liés aux anciennes versions du système d'exploitation et aux méthodes traditionnelles de partitionnement des disques durs, le BIOS restera le système principal de démarrage d'un ordinateur.

Passer d'un système d'exploitation à un autre pendant une longue période, s'il y en a deux installés sur l'ordinateur, ne fonctionnera pas. Après avoir soigneusement étudié les deux, vous devrez tôt ou tard en choisir un seul - le principal, avec lequel les travaux seront effectués principalement. Si pour la plupart un seul système Windows est utilisé, ses autres versions ou éditions situées sur d'autres partitions du disque, ne doit pas être supprimé. Bien sûr, à condition que l'espace disque dur pas limité en taille.


La possibilité de travailler à l'avenir avec d'autres systèmes informatiques peut être laissée, mais pour plus de commodité, simplifiez l'entrée du principal en supprimant temporairement ceux qui ne sont pas utilisés du coffre. Dans ce cas, le démarrage de l'ordinateur sera simplifié en ne chargeant automatiquement que le système d'exploitation requis. Une autre option pour faciliter le démarrage de votre ordinateur n'est pas de supprimer la fenêtre de sélection de démarrage pour tous les systèmes, mais de définir la version souhaitée de Windows comme démarrage par défaut et de réduire le temps nécessaire pour sélectionner d'autres options dans la fenêtre du chargeur de démarrage .

Comment modifier le processus de chargement de plusieurs salles d'opération Systèmes Windows installé sur un ordinateur - plus d'informations ci-dessous.

Donc, dans notre cas, nous avons un ordinateur avec des versions installées de Windows 7 et 8.1. Lorsque vous allumez l'ordinateur, nous voyons la fenêtre du chargeur de démarrage avec une liste de systèmes parmi lesquels choisir.

Chaque fois que vous démarrez votre ordinateur, entrez dans le système souhaité vous pouvez en faisant le choix approprié. Sinon, au bout d'un certain temps - et par défaut c'est 30 secondes- Windows se chargera automatiquement, le premier de la liste. Dans notre cas c'est Windows 7, car c'est le dernier installé sur l'ordinateur, et c'est son bootloader, comme on peut le voir, qui nous rencontre après le démarrage de l'ordinateur.

Eh bien, changeons cela. Configurons le démarrage automatique du système principal - Windows 8.1. Pour cela, bien sûr, il est nécessaire d'y entrer.

Nous avons besoin d'une section de paramètres, et dans Windows 8.1, vous pouvez y accéder en utilisant le menu contextuel sur le bouton.

Dans la fenêtre système, sélectionnez Options supplémentaires.

Vous pouvez également accéder à la section des paramètres dans Windows 7 à l'aide du menu contextuel, mais appelé sur l'icône "Un ordinateur" dans l'explorateur. Parmi les équipes, vous devez choisir.

Sous Windows 7, sélectionnez également Options supplémentaires.

Les étapes suivantes dans les deux systèmes sont identiques.

Dans la fenêtre des propriétés système apparue dans l'onglet "En outre" appuyez sur le bouton paramètres dans dernière partie.

Vous pouvez maintenant commencer à éditer le démarrage de plusieurs systèmes. Changer le logiciel téléchargé Windows par défaut parmi les options de la liste déroulante. Dans notre cas, nous changeons le Windows 7 préinstallé en Windows 8.1.

Comme mentionné, par défaut, le chargeur de démarrage Windows attend une demi-minute afin que l'utilisateur puisse faire le choix du système d'exploitation.

Si principalement le travail est effectué dans un seul système, cela n'a aucun sens de laisser une demi-minute d'attente pour son téléchargement automatique. Un autre système d'exploitation peut ne pas être privé de la possibilité de démarrer, mais le temps prédéfini pour choisir les options de démarrage peut être raccourci. Dans l'affichage de la liste des systèmes amorçables, dans notre cas, définissez 5 secondes attendre avant que le système principal Windows 8.1 démarre automatiquement. Ce temps sera plus que suffisant pour faire un choix si vous devez soudainement vous connecter à Windows 7.

Pour supprimer complètement un autre système de la liste de démarrage, vous devez décocher l'option affichage de la liste du système... Dans ce cas, seul le système sélectionné pour le démarrage par défaut démarrera sans délai.

Si le deuxième système d'exploitation est nécessaire, vous pouvez le saisir en faisant cette option actif à nouveau.

Après avoir apporté les modifications, cliquez sur "D'ACCORD" au bas de cette fenêtre, ainsi qu'au bas de la fenêtre des propriétés du système.

C'est tout - la liste de démarrage du système d'exploitation a été modifiée.

Ci-dessus, nous avons examiné la modification du démarrage des systèmes d'exploitation existants. Mais souvent, lors du démarrage de l'ordinateur, nous pouvons voir une liste des systèmes d'exploitation qui sont déjà sur l'ordinateur. Non... Il s'agit d'une évolution naturelle après la suppression du deuxième système d'exploitation par le formatage habituel de la partition de disque ou la destruction. fichiers système manuellement, mais en même temps l'entrée sur la possibilité de son chargement dans la configuration du système n'a pas été supprimée. Le chargeur de démarrage peut également afficher une option pour démarrer un Windows principal inexistant après que le système a été réinstallé... Soit dit en passant, ce n'est pas le principal, mais l'une des raisons pour lesquelles les spécialistes du système conseillent de mettre en œuvre le soi-disant propre Installation de Windows- sans enregistrer les fichiers système précédent et avec le formatage de la partition de disque.

Il est préférable de supprimer complètement un système d'exploitation inexistant des options de démarrage afin que cela ne retarde pas le processus de démarrage de Windows principal.

Dans le système principal, nous appelons la commande. Sous Windows 8.1 accès rapideà elle est implémentée dans le menu contextuel sur le bouton.

Nous avons besoin section configuration du système... Saisissez la valeur dans le champ de commande :

Nous appuyons "D'ACCORD".

Sous Windows 7, il est plus simple de lancer la fenêtre de configuration du système en tapant une requête clé dans le champ de recherche du menu.

La fenêtre de configuration du système apparaîtra, allez dans l'onglet. Nous sélectionnons l'entrée concernant le chargement d'un système inexistant et la supprimons.

Dans notre cas, la liste de téléchargement contenait différentes versions Windows, et décidez de la suppression "Sept" ce n'était clairement pas difficile pour nous. Mais si la liste de téléchargement contient des entrées sur deux Versions Windows, dans l'orientation avec celui à supprimer, les descriptions des systèmes aideront. Les fenêtres, dans lesquelles nous sommes en fait, seront désignées comme courantes.

Enregistrez les modifications apportées avec le bouton . Après avoir cliqué "D'ACCORD" le système proposera redémarrer.

Après le redémarrage de l'ordinateur, nous pouvons observer le démarrage immédiat du système principal.

Pour un fonctionnement normal de l'ordinateur, il est nécessaire que les principaux modules du système d'exploitation soient en RAM. Par conséquent, après avoir allumé l'ordinateur, une réécriture (chargement) automatique du système d'exploitation du disque dans la RAM est organisée.

Le logiciel fonctionne mieux lorsqu'il est divisé en niveaux, chaque niveau remplissant une fonction et libérant les autres niveaux plus élevés de se soucier des détails de leur niveau. Basé sur cette philosophie, le système d'exploitation MS-DOS est construit sur une base modulaire et se compose des composants suivants :

    Chargeur de système d'exploitation;

    Fichiers système IO.SYS et MSDOS.SYS ;

    Pilotes de périphérique.

    Processeur de commandes MS DOS (fichier COMMAND.COM);

    Commandes MS DOS externes.

De plus, MS-DOS, comme tous les autres systèmes d'exploitation pour IBM PC, utilise un logiciel informatique intégré appelé Système d'entrée/sortie de base (BIOS).

Considérons les modules de programme spécifiés dans l'ordre dans lequel ils sont chargés dans la RAM après avoir allumé le PC.

Système d'entrée/sortie de base est le niveau de contrôle le plus bas, une sorte d'interface entre le matériel et les logiciels de l'ordinateur. Le BIOS contrôle directement le matériel de l'ordinateur et évite aux autres programmes de savoir comment procéder. Les programmes du BIOS sont écrits dans la ROM de l'ordinateur par le fabricant et effectuent :

    auto-test de l'ordinateur lorsqu'il est allumé (programme POST);

    initialisation, c'est-à-dire teinture de matériel informatique (déterminée La configuration d'un ordinateur, les valeurs nécessaires de certains registres sont définies);

    exécuter des fonctions de service et gérer les interruptions matérielles ;

    chargement du système d'exploitation enregistré sur disque magnétique(programme BOOT).

Immédiatement après avoir allumé l'ordinateur, le programme POST commence à fonctionner, vérifiant le fonctionnement de la RAM et des autres composants de l'ordinateur. Le BIOS s'initialise alors et essaie de lire à partir du disque du lecteur A : le chargeur de démarrage du système d'exploitation afin de lui transférer le contrôle et de poursuivre le processus de démarrage DOS. Si les fichiers requis ou la disquette elle-même sont manquants, la recherche continue à disques durs C :, D :, E : etc. Si le disque de démarrage (ou, en d'autres termes, le système) n'est pas trouvé, un message à ce sujet s'affiche sur le moniteur.

Notez qu'une fois le démarrage terminé, les fonctions de service du BIOS (par exemple, la sortie d'octets individuels sur le disque ou l'écran d'affichage, la lecture d'un caractère sur le clavier, la lecture de l'horloge en temps réel, etc.) sont appelées à l'aide d'interruptions. Interrompre est un mécanisme matériel qui amène le processeur à interrompre l'exécution de la tâche en cours et à commencer à traiter un événement externe. Un tel événement peut être un signal provenant de périphériques d'E/S externes, une demande de programme, ou une erreur (division par zéro, un entier trop grand, etc.).

Chargeur de système d'exploitation est un programme très court situé dans le premier secteur de chaque disquette et disque dur (disque dur) avec le système d'exploitation MS DOS. La fonction de ce programme est de lire à partir de disque de démarrage dans la RAM des fichiers système DOS.

Fichier système IO.SYS est une extension du BIOS. Ce module ajuste le système d'exploitation pour une configuration spécifique du complexe informatique et permet de connecter de nouveaux pilotes à des périphériques d'E/S non standard,

Fichier systèmeMSDOS.SYS- module de gestion des interruptions. Fondamentalement, il maintient le système de fichiers et gère l'allocation de RAM.

Après avoir été lus par le bootloader, les fichiers système se trouvent en permanence dans la RAM de l'ordinateur, c'est-à-dire qu'il s'agit de programmes résidents.

Si les fichiers système sont chargés avec succès, le module de programme IO.SYS définit la configuration requise du système informatique. A cet effet, il place les pilotes des périphériques externes dans la RAM de l'ordinateur.

Pilotes externes Les périphériques sont des fichiers de programme distincts qui permettent une interaction avec des périphériques externes. La liste des pilotes de plug-in est contenue dans le fichier de configuration CONFIG.SYS. ...

Processeur de commandes termine le processus de démarrage du système d'exploitation. Une fois le contrôle de l'ordinateur transféré au processeur de commandes, ce dernier lance automatiquement l'exécution d'un programme spécial. fichier de commandes- AUTOEXEC.BAT (si un tel fichier est présent dans le répertoire racine de la disquette de démarrage). Le fichier AUTOEXEC.BAT spécifie les commandes et les programmes qui sont exécutés à chaque démarrage de l'ordinateur. A l'aide de ce fichier, vous pouvez configurer les paramètres de l'environnement d'exploitation. Par exemple, créer un disque virtuel, proposer un changement de mode d'impression, charger des programmes auxiliaires, etc.

Les fichiers avec l'extension .BAT jouent un rôle particulier lorsque vous travaillez dans l'environnement système. Ils contiennent un ensemble de commandes du système d'exploitation ou de noms de fichiers exécutables. Après avoir démarré le fichier avec l'extension .BAT, toutes les commandes qui y sont enregistrées sont exécutées automatiquement les unes après les autres.

Si le fichier AUTOEXEC.BAT n'est pas trouvé dans le répertoire racine du disque à partir duquel le système d'exploitation est chargé, alors MS DOS demande à l'utilisateur la date et l'heure actuelles.

Après avoir exécuté le fichier AUTOEXEC.BAT, le processus de démarrage du système d'exploitation se termine. Le processeur de commandes émet une invite indiquant que MS-DOS est prêt à recevoir des commandes. L'invitation ressemble généralement à R : \> ou par exemple C : \>, si le téléchargement a été effectué à partir du disque dur.

Vous avez aimé l'article ? A partager avec des amis :