Introducción
¡Hola! Este es mi manual personal de programación de sistemas operativos. Aquí resumo lo que llevo aprendido sobre el tema para que no se me olvide. El proyecto empezó con una libreta en papel, pero el desorden es ya tan grande que he decidido que mejor vamos a pasar las cosas a digital.
La interfaz está inspirada en el libro Butterick's Practical Typography, un libro maravilloso sobre tipografía. Si haces click en el margen a la derecha del todo, irás al siguiente capítulo. Si haces click en el margen de la izquierda, irás al capítulo anterior (o, en este caso, a la portada).
No me voy a poner aquí a hablar de la historia de los sistemas operativos, que es extensísima, ni de programación, ni de muchas cosas que sí incluiría un manual. La idea aquí es muy simple: ir al grano. Intentaré explicar las cosas en detalle para que las pueda entender cualquier novato (como yo), pero no vamos a entrar a ramificaciones que tengan poco que aportar a lo que es el código como tal.
Bueno, pues dicho y hecho. El manual está estructurado en bloques, que se dividen en capítulos. Si haces click en el margen de la derecha, irás directo a la introducción del bloque 1. ¡Que lo disfrutes!
Requerimientos mínimos
Para este tutorial, se asume que tienes una distribución de Linux instalada, y sabes instalar paquetes y abrir terminales en ella.
Si quieres meterte a programar sistemas operativos y no sabes instalar Linux, he de admitir que tu caso es bastante raro. Simplemente aprende antes. Si quieres una guía detallada te recomiendo la guía de instalación de Debian. Si eres como yo y no te gusta perderte en detalles, te recomiendo el tutorial de Karla's Project para instalar Ubuntu, que dura menos de media hora.