Para explicar más sobre qué firmware es desde el sentido interno.
Firmware, es un código que se ejecuta en un hardware muy específico, lo que significa que los códigos de operación son específicos del hardware para el que está escrito, puede ser una familia de chips o interfaces o para un solo elemento.
Esencialmente, lo que hace el firmware es esto;
-
Tiene instrucciones cableadas para que un procesador determinado realice y ejecute, esto se denomina "bootstrap". ¿Qué equipos de arranque tienen esto en su BIOS?
-
Inicialice dicho hardware a través de las instrucciones en el firmware.
-
Cargar / subir la tabla de saltos.
-
Haga que el acceso a los registros en un dispositivo determinado sea accesible.
-
Entregue el control a la rutina de salida una vez que se haya usado la BIOS después de un arranque en frío (apagado) o un arranque en caliente (se ha usado el reinicio normal o el pin de reinicio).
-
La mayoría de los BIOS (firmware) están diseñados para un conjunto de chips específico en mente y eliminan todas las funciones de esos y completan cualquier información que se pueda adjuntar a una línea de bus determinada en una computadora o dispositivo integrado.
-
Los discos duros son un buen ejemplo de una solución de almacenamiento que en sí misma es un dispositivo integrado, que también tiene un BIOS y tiene una forma de firmware en un chip.
Esencialmente, todo el firmware es un conjunto de instrucciones que otro procesador realiza para obtener la funcionalidad de dicho dispositivo. Es un software que se carga en un dispositivo físico, al perder energía, estará allí cuando el dispositivo recupere la energía.
Técnicamente, puedes usar cualquier lenguaje de programación o scripting para crear archivos binarios. Solo tiene que saber cómo funciona el procesador al que se dirigirá, los códigos de operación reales, el registro interno (y mucho menos para qué sirven), para aprender sistemas de números binarios y hexadecimales y cómo crear un ensamblador que pueda guardar. Su código en lenguaje ensamblador. Una vez que haya finalizado, puede asignar otro programa para convertirlo en binario y luego guardarlo como un archivo .bin o .hex.
Si desea saber cómo Ada, C, C ++, D y otros lenguajes de programación convierten sus "tokens", que es su código nativo que se divide en pseudo-op-codes en lenguaje de máquina. Hay varios libros que te recomiendo leer, algunos son bastante elementales y se centran en procesadores muy específicos, pero es bueno aprender sobre ellos. Te daré un libro por el momento, porque no quiero ahogarte ni a nadie más que lea esto en información.
- Crafting A Compiler con 'C' de Charles N. Fischer & Richard J. LeBlanc, Jr.
- Visite este sitio, se basa en el conjunto de chips x86 que se encuentra en la PC de IBM;
enlace
Esta es la introducción a la programación en lenguaje ensamblador en PC desde el principio. Habla sobre cómo manejar las interrupciones (interrupciones de hardware y software) y muchos otros temas, explica más a fondo lo que realmente hace un BIOS y cómo trabajar con él.
A diferencia del lenguaje ensamblador y el lenguaje de máquina, puede obtener mucho más en Ada, C, C ++, D, si no conoce las especificaciones de su hardware. En ensamblador y lenguaje de máquina, si no sabe lo que está haciendo, o algo malo sucederá o el código no funcionará. Prefiero el último caso, no trabajar contra algo malo.
Nota: Acerca de la respuesta anterior, acerca de la memoria RAM flash, no existe tal cosa, hay ROM flash pero no RAM flash. Las ROM flash tienen el firmware, las RAM que están respaldadas por batería o condensador, o tienen otra ROM flash que contiene parámetros para las opciones de BIOS que ha establecido.
Hay un código en el firmware sobre cómo almacenar o borrar la memoria de datos (en comparación con la memoria del programa / firmware en sí), si se trata de una ROM flash o un chip de RAM. En las PC, si su contraseña de BIOS se confunde o no la recuerda (o alguien está jugando con usted), puede abrir el estuche y encontrar los dos pines llamados "CMOS CLR / CMOS CLEAR / BIOS RESET / BIOS RST", Cortocircuitar los dos pines también borra la memoria, todo lo que debe hacer después de eso es presionar el botón de reinicio, cuando los dos pines aún están en cortocircuito. Esto borra la contraseña y le permite acceso completo al BIOS de su PC (suponiendo que tenga una computadora más nueva a partir de la década de 1990).
En las PC nuevas, tiene memoria flash para el firmware y tiene SRAM respaldada por batería (no necesita actualizarse constantemente como los chips DRAM, se basa en una tecnología más antigua).