Soy un nuevo estudiante graduado en EE y estoy tratando de aprovechar al máximo mi tiempo aquí en la universidad. Siempre quise entender cómo hacer que Linux se ejecute en plataformas integradas, pero desde el exterior se ve realmente extraño. A continuación se enumeran algunas de las cosas que debe conocer, cada una con su propio nido de complejidades:
- Cadenas de arranque, consiguiendo que una computadora cargue / ejecute su código de kernel.
- Haciendo kernels de Linux con controladores para el sistema
- Compilación cruzada, cadenas de herramientas de desarrollo
- Implementación, depuración y comunicación a través de hardware como uart.
- Hacer que el usuario haga lo que usted quiere (supongo que cuando llegue aquí se convierte en una aplicación específica para discusión general)
Puede que me falten algunos pasos.
¿Qué recursos puedo usar para aprender sobre estas cosas?
Supuse que habría algunas clases que ofrecieran una breve descripción de estos temas, pero al mirar las listas de cursos, parece que hay diferentes niveles de "sistemas integrados". Muchas de las clases se centran en el desarrollo de software para computadoras extremadamente limitadas. Durante la licenciatura, una famosa clase de 'sistemas embebidos' de EE culminó con la programación de los estudiantes desde cero en su propio sistema operativo en tiempo real para una máquina expendedora hipotética. Si bien eso es genial, no es lo que estoy buscando.