Conozco la implementación básica de diferentes estructuras de datos como árboles, gráficos, colas y muchos más para inserción, eliminación, recorrido. Ahora, ¿cómo procedo a construir un sistema operativo?

Conocer las estructuras de datos y los algoritmos es bueno, pero no es suficiente para desarrollar un sistema operativo. Son las herramientas que pueden ayudarlo a codificar de una mejor manera. Pero escribir un sistema operativo requiere un conocimiento profundo de arquitectura, administración de memoria, interrupciones, manejo de excepciones, administración de procesos, seguridad, etc.
El desarrollo de un cargador de arranque en sí puede convertirse en un proyecto de un mes de duración, dependiendo de su conocimiento. Y luego, el sistema operativo en sí mismo es un curso semestral.

Seguramente es una tarea desalentadora escribir un sistema operativo. Cuando Linux Torvalds lanzó la primera versión de Linux (versión 0.01), tenía 10,239 líneas de código :). Entonces, prepárate para largas horas de estudio y codificación. No te desanimes :). Aprenderá muchas cosas que lo ayudarán como programador más adelante en su carrera. Además, puedo garantizar que es interesante.

Vamos a dar un paso a la vez. Es ideal tomar un curso sobre el sistema operativo para obtener una visión general.

1. UC Berkley tiene una conferencia sobre sistemas operativos. Puedes tomar ese curso gratis en youtube.
o
2. Obtenga una copia de “Sistemas operativos informáticos: diseño e implementación” de Andrew Tanenbaum. A diferencia de otros libros, este libro lo guiará a través del código de un sistema operativo real (MINIX) y le explicará los conceptos simultáneamente.

Una vez que haya terminado con este curso, ahora puede proceder a encontrar recursos en Internet que le pueden dar consejos sobre cómo escribir su propio sistema operativo.

Algunos de los muy buenos recursos que utilicé en la universidad fueron:

1. http://wiki.osdev.org/Main_Page: tiene muchos artículos buenos y puede consultarlos durante todo el desarrollo. Hay muchos artículos de calidad.

2. http://www.brokenthorn.com/Resou…: tienen un tutorial de desarrollo del sistema operativo de juguete. Atraviésalo.

3. Tutoriales de desarrollo del kernel de JamesM.

Vea lo que otros tienen que aconsejar sobre el desarrollo del sistema operativo:
@ ¿Qué debo aprender antes de comenzar a escribir mi propio sistema operativo?
@ Quiero construir mi propio sistema operativo desde cero. ¿Cómo empiezo?

Además de todo esto, lea sobre la historia de los sistemas operativos cuando tenga tiempo libre:
La guerra entre Microsoft y Apple sobre el sistema operativo en los primeros días.
La famosa guerra de palabras entre el desarrollador de MINIX Tanenbaum y el desarrollador de Linux Linus Torvalds sobre el diseño del kernel.
Qué es GNU, quién es Richard Stallman, etc.
Google es tu amigo, ¡sigue explorando!
Lecturas ocasionales como esta, aparte de las puramente técnicas, mantendrán las cosas interesantes.
Quedarse con hambre ! ¡Quédate tonto!
Buena suerte 🙂

Su pregunta es, OK, sé que la solución ahora me dice un problema … 😛