Publiqué esto en StackOverflow con la premisa de que cualquier programador (no un programador HTML, que no hace, estrictamente hablando, hace programación, aunque HTML requiere mucho conocimiento específico y tiene cierta semejanza con la programación) Debe estar familiarizado con esta información y ser capaz de responder. Sin embargo, tengo un voto negativo y una sugerencia para publicar aquí en su lugar. Así que estoy haciendo.
Me gustaría aclararme la siguiente área.
Consideremos el universo de los circuitos integrados. Un FPGA, un DSP, un chip controlador USB, una CPU y una GPU son ejemplos de IC. Sin embargo, me doy cuenta de que un controlador USB o un FPGA no puede "ejecutar un sistema operativo", mientras que una CPU sí puede. Otra fuente de confusión surgió cuando en una conferencia, nos dijeron que "Xeon PHI (el más antiguo, pre-Knights Landing) ejecuta un sistema operativo independiente y puede ser iniciado, por lo tanto, necesita comunicarse con él a través de la red". Según tengo entendido, esto diferencia al Phi de decir una GPU que, mientras está físicamente en el mismo bus PCI-E, es un dispositivo "esclavo" para la CPU.
Para que esta pregunta sea exacta, permítame resumir los siguientes puntos:
¿"Este IC es de arranque" es igual a "este IC puede ejecutar un sistema operativo"? ¿Qué hace que un IC sea capaz de lo anterior (por ejemplo, si comparamos un controlador ASMedia USB y una CPU, ambos son piezas de silicio que ejecuta código binario)?
¿Qué significa exactamente que un IC esté ejecutando un sistema operativo, en qué se diferencian los procesos en el silicio, por ejemplo, un controlador USB y una CPU?
Esto puede denominarse amplio, pero lo puse lo más preciso posible. Básicamente es una pregunta simple, pero dividida en partes para mayor claridad.