Les interruptions que tu cites sont logicielles (0x10 et 0x13), des interruptions matérielles sont par exemple 0x01 -- 0x07 (CPU generated) puis 0x08 (timer), etc.
Le BIOS est moche, clairement. Très basique, très crade... Mais il faisait son travail, il fournit une abstraction très primitive au matériel. On pouvait presque écrire un OS uniquement en faisant des appels au BIOS, comme DOS...
Je ne vois pas très bien ce qu'il y a de moche et crade dans le BIOS... son travail est de tester l'intégrité de la machine au démarrage, puis de charger le secteur d'amorçage et de lui passer la main... il n'a pas vocation à être aussi sophistiqué ou performant qu'un véritable OS.
À partir de l'éopque du 386, beaucoup de programmes utilisent un DOS-Extender, et à la rigueur, on pourrait presque considérer que le DOS-Extender est le véritable OS sous lequel tourne le programme!
Mais avec l'évolution du matériel, les limites sont apparues : le BIOS utilise un mode 16 bits ne lui permettant pas d'adresser toute la RAM, le boot par le réseau ou par CD est apparu, l'USB est arrivé...
Mon BIOS sait booter sur le réseau, sur un CD, sur une clef USB, et gère les périphériques USB (enfin, le clavier et la souris)... Pour la RAM, la limitation à 20 bits de l'adressage mémoire n'est pas un problème, le but du BIOS est de charger un démarreur d'OS.
Une autre limitation du BIOS est la taille rikiki du secteur d'amorçage: moins de 512 octets pour écrire un véritable boot-loader... c'est peu!
La plupart des boot-loaders sont donc fragmentés, le secteur d'amorçage charge le véritable boot-loader, qu'il s'agise de GRUB, du boot-loader de FreeBSD (un client BTX, BTX est une sorte de mini-noyau à écrire des boot-loader) ou celui de Windows.
Mais de tous ces petits problèmes, il est possible de s'accomoder: ce n'est pas très élégant mais marche et préserve la compatibilité avec le vieux matériel.
Les limitations induites par la table de partition sont véritablement celles qui vont déclencher le changement de norme.
Le premier qui dit que ça ressemble à DOS gagne un cadeau bonux...
# Interruption logicielle
Posté par Michaël (site web personnel) . En réponse au journal UEFI, à la découverte du nouveau BIOS.... Évalué à 10.
Les interruptions que tu cites sont logicielles (0x10 et 0x13), des interruptions matérielles sont par exemple 0x01 -- 0x07 (CPU generated) puis 0x08 (timer), etc.
Je ne vois pas très bien ce qu'il y a de moche et crade dans le BIOS... son travail est de tester l'intégrité de la machine au démarrage, puis de charger le secteur d'amorçage et de lui passer la main... il n'a pas vocation à être aussi sophistiqué ou performant qu'un véritable OS.
À partir de l'éopque du 386, beaucoup de programmes utilisent un DOS-Extender, et à la rigueur, on pourrait presque considérer que le DOS-Extender est le véritable OS sous lequel tourne le programme!
Mon BIOS sait booter sur le réseau, sur un CD, sur une clef USB, et gère les périphériques USB (enfin, le clavier et la souris)... Pour la RAM, la limitation à 20 bits de l'adressage mémoire n'est pas un problème, le but du BIOS est de charger un démarreur d'OS.
Une autre limitation du BIOS est la taille rikiki du secteur d'amorçage: moins de 512 octets pour écrire un véritable boot-loader... c'est peu!
La plupart des boot-loaders sont donc fragmentés, le secteur d'amorçage charge le véritable boot-loader, qu'il s'agise de GRUB, du boot-loader de FreeBSD (un client BTX, BTX est une sorte de mini-noyau à écrire des boot-loader) ou celui de Windows.
Mais de tous ces petits problèmes, il est possible de s'accomoder: ce n'est pas très élégant mais marche et préserve la compatibilité avec le vieux matériel.
Les limitations induites par la table de partition sont véritablement celles qui vont déclencher le changement de norme.
Ça ressemble à DOS! :-)