Je me suis toujours demandé si le BIOS (mis à part le POST, le démarrage du chargeur de démarrage et le transfert du contrôle au système d'exploitation après avoir appuyé sur le bouton d'alimentation) avait un objectif ou une fonction pendant le fonctionnement du système d'exploitation?
Le système d'exploitation communique-t-il avec le BIOS lors de l'exécution et, le cas échéant, comment?
Réponses:
Avec les systèmes d'exploitation modernes, pratiquement aucun . Linus Torvalds aurait déclaré que sa tâche était de "charger simplement le système d'exploitation et de se sortir de là".
Les systèmes d'exploitation plus anciens comme MS-DOS s'appuyaient sur le BIOS pour de nombreuses tâches (accès au disque, par exemple) en appelant des interruptions.
Avec les systèmes d'exploitation modernes, le chargeur de démarrage bascule rapidement en mode 32 ou 64 bits et exécute le noyau du système d'exploitation. Le noyau peut enregistrer ses propres gestionnaires d'interruptions, qui peuvent être appelés par les applications de l'espace utilisateur. Les routines du noyau peuvent être plus portables (puisqu'elles ne dépendent pas du matériel spécifique), plus souples (les fournisseurs de systèmes d'exploitation peuvent les modifier à la demande plutôt que d'utiliser tout le matériel fourni avec le matériel), plus sophistiquées (elles peuvent exécuter des tâches arbitrairement complexes). plus sûr (car le système d’exploitation peut contrôler l’accès aux ressources partagées et empêcher les programmes de s’embrasser, mettant en oeuvre ses propres systèmes de permissions arbitraires).
Pour interagir avec un matériel spécifique, les systèmes d’exploitation peuvent charger et utiliser leurs propres pilotes de périphérique. Il n’est donc pas nécessaire que le système d’exploitation ou les applications appellent la plupart des routines du BIOS. En fait, pour des raisons de sécurité, les interruptions du BIOS sont même désactivées. Étant donné que le BIOS vit en mode réel 16 bits, il est plus difficile de faire appel aux systèmes d'exploitation modernes.
Bien que l'utilisation du BIOS soit très limitée pendant que le système d'exploitation fonctionne, ses fonctions sont toujours utilisées de manière périphérique. Par exemple, lorsqu'un ordinateur est en veille , le système d'exploitation ne fonctionne pas et il incombe en dernier ressort au micrologiciel de définir le matériel à l'état approprié pour mettre en pause et reprendre le système d'exploitation. Ces utilisations sont généralement limitées aux appels ACPI plutôt qu'aux appels à l'interface complète du BIOS. ACPI est une extension du BIOS qui "met la gestion de l’énergie sous le contrôle du système d’exploitation (OSPM), par opposition au système central BIOS précédent, qui reposait sur un micrologiciel spécifique à la plate-forme pour déterminer la politique de gestion et de configuration de la gestion de l’alimentation" .
Notez qu'officiellement «BIOS» fait référence à une interface de micrologiciel particulière, mais le terme est couramment utilisé pour désigner le micrologiciel de l'ordinateur en général. Certains ordinateurs récents (notamment ceux d’Apple) ont remplacé le BIOS (sensu strictu) par UEFI , qui est bien entendu ce qui est appelé pour implémenter ces fonctions.
Pour plus d'informations sur la diminution progressive du rôle du BIOS, voir Wikipedia .
la source
Le BIOS fournit un certain nombre de services aux systèmes d’exploitation, dont la plupart sont liés à la gestion de l’alimentation:
La suspension sur disque est la plupart du temps implémentée dans le système d'exploitation, car celui-ci peut restaurer son état plus rapidement (seul l'état du noyau est rechargé et l'état du programme est échangé si nécessaire, ce qui est nettement plus rapide que le rechargement de la totalité de la RAM). la fonctionnalité reste dans la spécification.
Suspend-to-RAM ne peut pas être implémenté par le système d'exploitation, car il repose sur le BIOS ignorant l'initialisation et le test de la RAM. Par conséquent, le système d'exploitation a besoin d'une API pour indiquer au BIOS qu'il a l'intention de reprendre avec le contenu actuel de la RAM. Afin de fournir ce service, le BIOS demande au système d'exploitation de laisser intacte une certaine zone de RAM.
L’interface du système d’exploitation pour tous les services du BIOS est un élément de code de machine virtuelle qui doit être exécuté sur un émulateur et qui génère les opérations d’E / S nécessaires dans le matériel. Pour suspendre, ceci est généralement implémenté de sorte que l'exécution d'une des écritures matérielles déclenche une interruption qui transfère le contrôle au BIOS.
la source
Il existe trois domaines principaux dans lesquels un système d’exploitation utilise le BIOS dans les systèmes modernes, tels que ceux utilisant le standard UEFI. Le premier est une série de services appelés services d’exécution UEFI. Ces services permettent au système d'exploitation de récupérer des informations que seul le BIOS connaît, telles que l'heure d'utilisation du BIOS, la séquence d'amorçage, le profil de sécurité actuel de l'utilisateur, les informations relatives à la carte mère, les modules DIMM, etc.
Le second est le mode de gestion du système, qui est une partie de mémoire cachée (SMRAM) à laquelle on accède par une interruption de priorité élevée (SMM). De nombreux BIOS l'utilisent pour implémenter des fonctionnalités OEM hautement sécurisées ou pour contourner des problèmes de matériel.
Le troisième est ACPI. ACPI fournit la configuration, la gestion de l'alimentation, les données matérielles et le code utilisés par le système d'exploitation pour améliorer les informations que les pilotes du système d'exploitation peuvent découvrir à l'aide d'un pilote standard ou d'un pilote de périphérique. Par exemple, existe-t-il un signal spécial permettant de contrôler l’alimentation du disque dur ou existe-t-il un moyen spécial de communiquer avec la batterie qui n’est pas couverte par une norme?
Tim
la source
Les systèmes d’exploitation modernes utilisent le BIOS principalement pour le chargement, mais il existe encore quelques utilisations, notamment:
incluses).
la source
En plus de ce qui a été noté ci-dessus, Intel commence à basculer dans la direction opposée en fournissant un accès hors bande au matériel via la technologie de gestion active intégrée au bios et à la carte mère, qui peut être contrôlée indépendamment du système d'exploitation. Avec ces conseils, vous pouvez en faire beaucoup. Que vous considériez qu’il s’agisse d’un système d’exploitation intégré ou d’un second système d’exploitation est une autre chose, mais comme il a du matériel embarqué et des composants dans le BIOS, je me tiens au système intégré.
intels marketing guff
la source