2Aug

¿Qué hace mi BIOS después del arranque?

Una vez que su computadora finaliza el proceso de arranque y está firmemente dentro del sistema operativo, ¿queda algo para que funcione el BIOS?

Pregunta de hoy &La sesión de respuesta nos llega por cortesía de SuperUser, una subdivisión de Stack Exchange, una agrupación de comandos de comunidad de sitios web de Q & A.

La pregunta

SuperUser reader Indrek plantea esta pregunta relacionada con BIOS:

Siempre me pregunté si el BIOS( aparte de realizar POST, iniciar el gestor de arranque y pasar el control al SO después de presionar el botón de encendido) tiene algún propósito o función mientras el operativosistema se está ejecutando?

¿El sistema operativo se comunica con el BIOS mientras se está ejecutando y, de ser así, cómo?

de hecho?¿Qué función tiene el BIOS además de su papel crítico en el arranque de la computadora?

Las respuestas

Cortesía del colaborador SuperUser Mechanical Snail, una descripción general de cómo el papel del BIOS ha cambiado con el tiempo y lo que es y lo que no ocurre hoy:

El rol del BIOS

Con sistemas operativos modernos, prácticamente ninguno .Se dice que Linus Torvalds dijo que su tarea es "cargar el sistema operativo y largarse de allí".

Los sistemas operativos antiguos, como MS-DOS, dependían del BIOS para muchas tareas( por ejemplo, acceso a disco), llamando a interrupciones.

Con los sistemas operativos modernos, el gestor de arranque cambia rápidamente al modo de 32 o 64 bits y ejecuta el kernel del sistema operativo. El kernel puede registrar sus propios manejadores de interrupción, que pueden ser llamados por aplicaciones de espacio de usuario. Las rutinas del kernel pueden ser más portátiles( ya que no dependen del hardware específico), más flexibles( los proveedores de sistemas operativos pueden cambiarlas a pedido en lugar de tener que usar lo que venga con el hardware), más sofisticadas( pueden ejecutar complejos arbitrariamentecódigo en lugar de lo programado en el BIOS) y más seguro( ya que el sistema operativo puede controlar el acceso a los recursos compartidos y evitar que los programas se peguen unos a otros, implementando sus propios esquemas de permisos arbitrarios).

Para interactuar con hardware específico, los sistemas operativos pueden cargar y usar sus propios controladores de dispositivo. Por lo tanto, no es necesario que el SO o las aplicaciones invoquen la mayoría de las rutinas BIOS.De hecho, por razones de seguridad, las interrupciones del BIOS están deshabilitadas. Dado que el BIOS vive en modo real de 16 bits, es más difícil llamar a sistemas operativos modernos.

Si bien el uso del BIOS es muy limitado mientras se ejecuta el sistema operativo, sus funciones aún se utilizan periféricamente. Por ejemplo, cuando una computadora duerme, el sistema operativo no se está ejecutando y, en última instancia, corresponde al firmware establecer el hardware en el estado correcto para pausar y reanudar el sistema operativo. Estos usos generalmente se limitan a llamadas ACPI en lugar de llamadas a la interfaz completa de la BIOS.ACPI es una extensión de BIOS que "lleva la administración de energía bajo el control del sistema operativo( OSPM), a diferencia del sistema BIOS-central anterior, que dependía del firmware específico de la plataforma para determinar la política de administración y configuración de energía".

Tenga en cuenta que oficialmente "BIOS" se refiere a una interfaz de firmware particular, pero el término se usa comúnmente para referirse al firmware de la computadora en general. Algunas computadoras recientes( especialmente las de Apple) han reemplazado al BIOS( sensu strictu) con UEFI, que por supuesto es lo que se llama para implementar estas funciones.

Para obtener más información acerca de cómo ha disminuido el papel del BIOS con el tiempo, consulte Wikipedia.

Otro contribuidor SuperUser, Simon Richter, nos da una visión general de las cosas que el BIOS aún hace:

El BIOS y la Administración de energía

El BIOS proporciona una serie de servicios a los sistemas operativos, la mayoría de los cuales están relacionados con la administración de energía:

  • la CPU y los relojes de bus
  • habilita / deshabilita los dispositivos de la placa base
  • puerto de expansión control de potencia
  • suspend-to-disk y suspender-a-RAM
  • reiniciar configuración de eventos

Suspend-to-disk se implementa en el sistema operativo la mayor parte del tiempo como SOpuede restablecer su estado más rápido( solo se vuelve a cargar el estado del kernel y se intercambia el estado del programa cuando es necesario, que es significativamente más rápido que volver a cargar toda la RAM), pero la característica permanece en la especificación.

Suspend-to-RAM no puede ser implementado por el sistema operativo, ya que depende de que la BIOS omita la prueba y la inicialización de la RAM, por lo que el sistema operativo necesita una API para indicar al BIOS que se reanudará con los contenidos actuales de la RAM.Para proporcionar este servicio, el BIOS le pide al sistema operativo que deje intacta una cierta área de RAM.

La interfaz para el sistema operativo para todos los servicios de BIOS es una pieza de código de máquina virtual que debe ejecutarse en un emulador y que genera las operaciones de E / S necesarias en el hardware. Para suspender, esto generalmente se implementa de manera que al ejecutar una de las escrituras de hardware se activa una interrupción, que transfiere el control al BIOS.

¿Tiene algo que agregar a la explicación? Suena apagado en los comentarios.¿Desea leer más respuestas de otros usuarios de Stack Exchange expertos en tecnología? Mira el hilo de discusión completo aquí.