Pues no se, aunque no sea mi campo, he discutido con chatGPT el tema, y por lo visto, de entre esos "fundamentos" que mencionas, estarían:
- Sistemas Operativos: Estudio de la gestión de recursos del sistema, incluyendo procesos, memoria y dispositivos de hardware.
- Programación de Bajo Nivel: Uso de lenguajes como ensamblador y C para interactuar directamente con el hardware.
- Redes de Computadoras: Diseño y gestión de sistemas de comunicación de datos.
- Seguridad Informática: Implementación de medidas para proteger sistemas contra amenazas y vulnerabilidades.
- Sistemas Empotrados: Desarrollo de software para dispositivos con recursos limitados, integrados en hardware específico.
- Arquitectura de Computadoras: Comprensión de la estructura y funcionamiento interno de los sistemas informáticos.
- Compiladores y Lenguajes de Programación: Diseño de herramientas que traducen código de alto nivel a instrucciones ejecutables por la máquina.
- Análisis Estructurado: Método de análisis de sistemas que utiliza diagramas de estructura para organizar y visualizar la arquitectura de programas complejos.
Luego a eso habría que sumar lo habitual de programación de alto nivel: lenguaje orientado a objetos, interfaces graficas, bases de datos, etc.
¿Todo esto lo puede aprender una persona en una sola ingeniería? Lo pregunto en serio, porque yo no lo sé, porque tiene pinta de ser una barbaridad.
Sí, todo eso se da en un grado común de 3-4 años.
1. Sí. La UPM por ejemplo suele usar Minix 3 como ejemplo de sistema operativo a estudiar. Todo eso son conceptos que no lleva mucho tiempo entender. En las prácticas se implementa alguna llamada al sistema, algún driver y cosas así para ese sistema operativo.
2. Sí. Pero no es que se dé programación a bajo nivel en sí, sino que se hacen prácticas en asignaturas como arquitectura de computadores. Por ejemplo, la UPM hace años se usaba asm del MIPS en esa asignatura. Se da a nivel superficial, lo importante es entender los conceptos de arquitectura de computadores.
3. Sí. Hay una asignatura de redes en la mayoría de planes de estudios de carreras de informática (que ahora hay diversos grados) EN la UPM estaba "Teleinformática y Redes" hace años. Pero son los conceptos teóricos, no te enseñan a instalar redes o mantenerlas. Eso es otro tema. Eso quizá hay optativas, pero lo dudo. Son cosas que ya te especializas trabajando. Si vas a montar y mantener redes, tampoco es que necesites estudiar una carrea. Mejor irse a algo mas práctico.
4. Sí. Pero se dan conceptos teórico referentes a cifrado, protocolos y poco más. No se da a un nivel práctico de implementación y mantenimiento. Eso ya te tienes que especializar mientras trabajas o con cursos.
5. Lo cierto es que de sistemas empotrados no hay mucho o yo no lo he visto. Quizá alguna optativa. Recuerdo que en el Grado de Computadores de la UPM está "Sistemas Integrados" que era un poco de eso. Ahí hacían cosas con FPGA.
6. Me remito a 2.
7. Sí, Hay una asignatura de compiladores y teoría de autómatas y lenguajes formales.
8. Sí. Se da en las asignaturas de programación, que hay varias.
Todo eso, a nivel conceptos fundamentales y conocimiento general, da tiempo en 3-4 años. Obviamente hay mucho más, pero más o menos cubre bien (o intenta) los conceptos fundamentales y generales.