Le logiciel du BIOS est intégré au PC. Il s’agit du premier code exécuté par un PC lorsqu’il est allumé («firmware d’amorçage»). Lors du démarrage du PC, le premier travail du BIOS est le test automatique à la mise sous tension, qui initialise et identifie les périphériques du système, tels que le processeur, la mémoire vive, la carte vidéo, le clavier et la souris, le lecteur de disque dur, le lecteur de disque optique, etc. autre matériel. Le BIOS localise ensuite le logiciel de chargeur de démarrage stocké sur un périphérique (appelé «périphérique de démarrage»), tel qu'un disque dur ou un CD / DVD, puis charge et exécute ce logiciel en lui donnant le contrôle du PC [2]. Ce processus s'appelle amorçage ou amorçage, ce qui est synonyme d'amorçage.
Quelles conditions requises déterminent qu'un BIOS doit être installé sur un ordinateur?
Pourquoi le système opérationnel ne peut-il pas utiliser tout le BIOS?
Réponses:
Un BIOS est un morceau de code dépendant du matériel stocké sur la carte mère elle-même. Chaque carte mère a besoin d'un BIOS personnalisé écrit pour elle. Il serait donc impossible d'avoir un BIOS / OS générique tout-en-un (bien que le BIOS ne soit qu'un code stocké, vous pouvez donc théoriquement écrire un système d'exploitation pour une carte mère particulière). . Comme vous l'avez mentionné, le but du BIOS est de:
Notez que vous pouvez toujours démarrer un ordinateur sans stockage externe - c'est pourquoi le BIOS est une exigence pour un ordinateur. En d'autres termes, le BIOS fournit une interface logicielle commune permettant à un programme informatique stocké de communiquer avec divers périphériques matériels connectés à la carte mère.
Par exemple, si j'ai deux cartes mères différentes avec deux contrôleurs SATA différents, le BIOS me permet d'écrire un morceau de code qui peut fonctionner avec les deux, sans que je sache comment la carte mère envoie réellement des commandes au périphérique SATA. Je dois juste dire à l'ordinateur "lire le secteur X à partir de ce périphérique SATA", et le BIOS est responsable de l'envoi de ces commandes au matériel.
Les informations du "secteur de lecture X" proviennent en fait d'un programme stocké contenu dans le BIOS, qui ordonne généralement à l'ordinateur de démarrer la lecture à partir d'un chargeur de démarrage stocké dans un emplacement commun. Ces emplacements communs sont agréés par divers développeurs de logiciels et de matériel informatique et sont généralement communiqués au public afin d'accroître la compatibilité entre les systèmes.
Une fois que le niveau de base de l’interfaçage (à nouveau, l’interfaçage logique via le logiciel) est établi, le système d’exploitation lui-même crée une interface commune avec vos divers périphériques matériels (généralement à l’aide de "pilotes de périphérique"), qui peut alors contrôler le matériel.
Enfin, il convient de noter que le BIOS sert également à modifier les configurations matérielles de l’ordinateur et à les stocker dans la mémoire EEPROM intégrée (votre ordinateur se souviendra de ces modifications lors de votre prochain démarrage). Cependant, comme je l'ai indiqué précédemment, une fois que le système d'exploitation est chargé, il a le contrôle total de l'ordinateur.
Cela permet aux fabricants de cartes mères de développer un logiciel vous permettant d’effectuer ces modifications à partir de votre système d’exploitation, au lieu de devoir redémarrer dans le BIOS. Encore une fois, cela dépend beaucoup du matériel et des logiciels, mais cela montre que toutes les interfaces informatiques sont relatives. Le BIOS est exactement ce que son nom implique - un système d'entrées / sorties de base, permettant à une interface logicielle commune à un programme plus avancé ("système d'exploitation") de prendre le contrôle de la machine.
la source
Votre système d'exploitation se trouve sur votre disque dur. Si vous allumez votre ordinateur, il ne commencera pas comme par magie à lire ce disque dur. C'est le BIOS qui charge le chargeur de démarrage à partir du disque dur et effectue des tests et vous permet de configurer certains paramètres du BIOS.
Votre système d'exploitation ne peut pas le faire car il se trouve sur le disque dur et non dans votre ROM.
Par conséquent, vous avez besoin d'un BIOS ou d'une technologie similaire (mais différente) comme EFI ...
Il est possible de mettre une partie du système d'exploitation sur la ROM (responsable du chargement du chargeur de démarrage du système d'exploitation) par le fabricant; cependant, cela n’est pas largement applicable et il existe un BIOS ou une EFI de toute façon.
la source
Pas de vraie raison logique. C'est plus une question d'héritage et d'histoire.
Il n'est pas nécessaire qu'un ordinateur soit doté d'un BIOS. C'est l'héritage d'IBM PC. Bien que cela se soit avéré une bonne idée
Faire fonctionner le système d'exploitation ne changerait vraiment rien car il ferait toujours quelque chose comme le BIOS. Bien entendu, le système d'exploitation doit être dans une ROM et non sur un périphérique d'E / S. Le problème peut survenir pour des problèmes de monopole lorsqu'un constructeur de système d'exploitation décide de rendre son BIOS de système d'exploitation incompatible avec les autres systèmes d'exploitation. Le fait de séparer les fabricants de BIOS des systèmes d'exploitation améliore la liberté d'utilisation des logiciels.
la source
Quelque chose est requis pour démarrer le système d'exploitation. Si le système d'exploitation peut tenir dans une mémoire non volatile, il peut être démarré directement, mais avec les systèmes d'exploitation complets tels que Windows, OSX ou Linux, cela n'est pas possible.
Ce qu'il faut, c'est un petit "système d'exploitation" léger pouvant être chargé à la mise sous tension et effectuant les opérations de base, telles que l'accès à la mémoire et au disque, puis chargeant le système d'exploitation. Bien que cela puisse faire partie du système d'exploitation lui-même et non pas d'une entité séparée, vous pouvez souhaiter qu'un autre processus démarre en premier lieu:
Le processus est appelé amorçage .
la source
Le concept PC BIOS dépend de CP / M, un système d’exploitation très répandu sur les ordinateurs à bus Z-80 "S-100" 8 bits avant que le PC IBM ne prenne la relève.
Les fonctions dépendantes du matériel du CP / M devraient être dans une ROM (BIOS). Une autre partie, chargée hors du disque par le chargeur de démarrage, était le logiciel qui supportait le système de fichiers CP / M (BDOS), puis le processeur de commande ou "shell" (CCP). Le matériel que CP / M devait prendre en charge n’était pas très important: un lecteur de disque, un écran, un port série ou deux (ports COM ou AUX) pouvant être connectés à des imprimantes ou des modems.
Le BIOS du PC a exécuté une fonction d’amorçage de base similaire à celle utilisée par CP / M, et DOS a utilisé les fonctions du BIOS pour effectuer les entrées et les sorties de base, comme prévu. Les programmeurs ont fini par contourner ces fonctions car elles étaient lentes. Cela a conduit les fabricants de clones de PC au milieu des années 80 à recréer la plate-forme dans son ensemble (facile, car IBM a très bien documenté le PC d'origine à l'intérieur et à l'extérieur), au lieu de simplement fournir un BIOS avec des interfaces compatibles, bien qu'ils devaient le faire aussi.
À ce stade, nous pouvons dire que, pour un système d’exploitation moderne, le BIOS n’est pas vraiment nécessaire au-delà du démarrage du système. Toutefois ...
À partir du début des années 90, la notion de gestion de l’alimentation a pris forme et le BIOS s’est vu confier cette tâche. APM fonctionne bien avec un système d'exploitation mono-tâche tel que DOS, mais pas avec de véritables systèmes d'exploitation multitâches tels que Windows ou Linux. À peu près à la même époque, le 386 était en pleine vigueur, le processeur Intel prenant en charge le multitâche réel. DOS et le BIOS n'ont pas été mis à jour en réponse aux nouvelles fonctionnalités de ce processeur, principalement parce que tous les processeurs Intel continueront de fonctionner en mode de compatibilité 16 bits hérité pour lequel le BIOS PC d'origine a été conçu. Ainsi, les systèmes d’exploitation modernes ignorent / contournent pratiquement toutes les fonctionnalités d’entrée / sortie de type CP / M du BIOS, sauf éventuellement lors des premières étapes d’amorçage.
ACPI a finalement été développé, principalement dans le cadre du BIOS, qui prend en charge la gestion de l’alimentation et la configuration de composants spécifiques à la plate-forme (souvent les ordinateurs portables). ACPI gère également l'état final de mise en veille, de mise en veille ou d'arrêt de l'alimentation.
Donc, de nos jours, c’est ACPI et son successeur, EFI, qui fait que quelque chose comme le BIOS est une nécessité pour les PC. Le concept général est que ACPI doit être l’interface entre la plate-forme ou la carte mère et le système d’exploitation. doivent être fabriqués pour chaque type de carte mère.
Les cartes de développement qui hébergent des processeurs ARM sous Linux (ainsi que du matériel pour téléphones cellulaires) présentent ce problème. Généralement, ils viennent avec un micrologiciel pour chargeur de démarrage tel que U-boot, mais le système d’exploitation doit prendre en charge chaque carte en tant que plate-forme distincte.
la source
En un sens, vous avez raison. Le BIOS et le système d'exploitation font en partie les mêmes choses. La séparation dans le BIOS et le système d'exploitation est uniquement pour la flexibilité.
Le BIOS est généralement créé par un fabricant de matériel. Le matériel doit s'assurer qu'une fonctionnalité de base est présente, par exemple qu'un lecteur de disque peut être lu et qu'un affichage de base des diagnostics et des erreurs est affiché. D'où le nom "Système d'entrée-sortie de base".
Cela peut être fait, dans une certaine mesure, sans aucune connaissance supplémentaire des composants réels réellement présents sur le système spécifique, car ils doivent tous prendre en charge un certain petit standard du BIOS. Cela permet aux fournisseurs de créer un système complet sur mesure. Le BIOS doit juste en faire assez pour démarrer le système d'exploitation. Il existe certaines conventions pour indiquer où se trouvent ces points de départ, aussi essaye-t-il les uns après les autres. Cela permet également d'utiliser différents systèmes d'exploitation sur le même matériel. (il y a encore de la flexibilité)
Une fois que le système d'exploitation (ou au moins son chargeur de démarrage) est détecté et démarré par le BIOS, celui-ci devient en grande partie obsolète. Les systèmes d’exploitation modernes n’utilisent que très peu du BIOS de manière fonctionnelle après le chargement.
Si vous voulez que le système d’exploitation fasse tout le travail, vous devez le placer dans un emplacement accessible par le matériel, sans l’aide préalable d’un logiciel (ROM). Cela peut être possible pour certains systèmes fermés, où la flexibilité n'est pas un problème. Si vous envisagez d'intégrer un support matériel à un autre matériel, vous construisez à nouveau une sorte de BIOS ...
Une autre préoccupation concerne la taille de la mémoire et son coût. Les systèmes d'exploitation complets sont volumineux et il est coûteux d’obtenir un système d’exploitation de plusieurs gigaoctets dans la ROM, sans compter les problèmes de suivi liés à la correction et à la mise à jour.
Donc non, il n'y a pas de raison technique, mais de nombreuses raisons pratiques, en particulier pour la plate-forme PC flexible.
la source
Pour exécuter un programme sur un PC moderne, vous devez déjà avoir un programme en cours d'exécution qui sache utiliser le matériel et charger les programmes en mémoire. Ce problème de la poule et de l'œuf est résolu en implantant un programme de base dans le matériel lui-même.
Le système BIOS (Basic Input / Output System) est très petit et de portée très limitée, mais fournit une base suffisante pour que des chargeurs de démarrage de deuxième étape, tels que GRUB ou NTLDR , puissent être chargés et exécutés. Ces chargeurs de deuxième étape sont plus sophistiqués que le programme BIOS, ce qui leur permet de fournir une base plus robuste au système d'exploitation permettant de charger et d'assumer le contrôle.
la source
Si un processeur peut s’adresser directement à un disque dur sans s’appuyer sur le BIOS, l’EFI ou un autre code ROM (ou NVRAM, etc.), ce processeur peut théoriquement charger un système d’exploitation dans la RAM et commencer. l'exécuter.
En réalité, en théorie, un tel processeur pourrait même exécuter des instructions sans les charger dans la RAM. Il n'y a aucune raison théorique qu'un ordinateur ne puisse utiliser un disque dur comme stockage principal. Mais ce serait très, très lent.
Cela impliquerait d'avoir plus de code dans la CPU pour accéder au disque et de cerner dans le CPU certains concepts relatifs aux disques, tels que les tables de partition et les systèmes de fichiers. Les processeurs actuels sont assez gros pour le faire, mais ce ne serait pas une approche très flexible ou efficace pour concevoir un processeur.
la source
Il n'en a pas besoin!
Ce qu'on appelle souvent le BIOS est un ensemble de 3 choses.
la source