Explicar más de 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 sus códigos operativos son específicos del hardware para el que está escrito, puede ser una familia de chips o interfaces o solo para un elemento.
Esencialmente, lo que hace el firmware es esto;
Tiene instrucciones cableadas para que un procesador determinado las realice y ejecute, esto se denomina "bootstrap". Que las computadoras más arrancables tienen esto en su BIOS.
Inicialice dicho hardware a través de las instrucciones en el firmware.
Cargue / suba la mesa de salto.
Haga que el acceso a los registros en un dispositivo determinado sea accesible.
Pase el control a la rutina de salida una vez que el BIOS se haya utilizado después de un arranque en frío (estado apagado) o en caliente (se ha utilizado el pin de reinicio o reinicio normal).
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 dato de que algo podría estar conectado 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 una forma de firmware en un chip.
Esencialmente, todo el firmware es un montón de instrucciones que otro procesador hace 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, puede usar cualquier lenguaje de programación o scripting para crear archivos binarios. Solo tiene que saber cómo funciona el procesador al que va a apuntar, los códigos operativos 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 se haya completado, 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 pseudocódigos operativos en lenguaje máquina. Hay varios libros que le recomiendo que lea, algunos son bastante elementales y se centran en procesadores muy específicos, pero es bueno aprender sobre ellos. Por el momento, le daré un libro, porque no quiero ahogarlo a usted ni a nadie más que lea esto como información.
- Elaboración de un compilador con 'C' por Charles N. Fischer y Richard J. LeBlanc, Jr.
- Visite este sitio, se basa en el chipset x86 que se encuentra en la PC de IBM;
http://www.laynetworks.com/assembly%20tutorials.htm
Esa es la introducción a la programación en lenguaje ensamblador en PC desde el principio. Habla sobre el manejo de interrupciones (interrupciones de hardware y software) y muchos otros temas, explica más en profundidad qué hace realmente 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 los detalles de su hardware. En lenguaje ensamblador y de máquina, si no sabe lo que está haciendo, sucederá algo malo o el código no funcionará. Prefiero el último caso, no funciona frente a 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 configurado.
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 RAM. En las PC, si la contraseña de su BIOS se ve mal o no la recuerda (o alguien está jugando con usted), puede abrir la caja y encontrar los dos pines llamados "CMOS CLR / CMOS CLEAR / BIOS RESET / BIOS RST", el cortocircuito de esos dos pines juntos 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 corto. Eso 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 SRAM con respaldo de batería (no necesita actualizarse constantemente como los chips DRAM, se basa en una tecnología más antigua).