xv6: un sistema operativo simple para RISC-V
Si lo recuerdas, hace un tiempo publiqué un artículo sobre algunos recursos que podías usar para trabajar con RISC-V, y también otro con algunas de las placas basadas en esta arquitectura. Algo que seguro que les sirve a los desarrolladores. Pero ahora, le toca el turno a Xv6, un sistema operativo muy particular y que también tiene que ver con RISC-V como podrás comprobar.
Linux no es el único que soporta RISC-V, y vendrán más con seguridad. En el caso de Xv6 no es interesante a nivel de usuario como lo es GNU/Linux, pero sí lo es para el aprendizaje, ya que es un sistema simple con el que se pueden aprender muchas cosas interesantes analizando su funcionamiento y código fuente.
¿Qué es xv6?
xv6 es un sistema operativo con kernel monolítico. Se trata de una reimplemetnación moderna del UNIX 6th Edition (V6) escrita en ANSI C y ASM para procesadores x86 y también para RISC-V (arquitectura en la que se han centrado actualmente, en detrimento de x86). Fue creado en el MIT con fines pedagógicos, como Minix, y está bajo licencia MIT, para que puedas acceder a su código.
xv6 tuvo que hacer modificaciones sobre el código fuente original de V6 para adaptarlo a las nuevas máquinas, ya que éste fue escrito en su momento para máquinas DEC PDP-11. Además, fue escrito usando un lenguaje más arcaico antes del ANSI C.
A diferencia de otros sistemas de código abierto, como Linux o BSD, xv6 es suficientemente simple como para poderlo estudiar en un semestre del curso, además de mantener la coherencia y limpieza de UNIX. Por eso, te podría servir como aprendizaje de sistemas operativos y de cómo implementar el código dependiente de la arquitectura RISC-V.
Otra característica de xv6 es que el makefile de este código también puede producir un PDF con todo el código fuente comentado en este formato, para poderlo leer. El resultado es un documento de unas 99 páginas, incluidas las referencias cruzadas.
Si te decides a instalarlo para probar, debes saber que carece de entorno de escritorio. Funciona mediante una CLI, o línea de comandos. Además, está en inglés…
Más información – Sitio de Github para RISC-V / Sitio para x86
Si quieres descargarlo para probar xv6 en una máquina virtual o placa de desarrollo, o si quieres generar el PDF con el código fuente para estudiarlo, puedes seguir estos pasos:
#Asegúrate de tener las dependencias satisfechas, como make, pdflatex, etc. #Descarga el código fuente git clone https://github.com/mit-pdos/xv6-riscv #Entra en el directorio cd xv6-risc-v #Instala las dependencias make #Dentro del directorio encontrarás el book.pdf