Archive for the “GNU/Hurd” Category

¿GNU/Linux?, no, habeis leído bien, GNU/Hurd. La imagen de la izquierda es el logotipo de GNU/Hurd.

Vayamos por partes.

Primero vamos a diferenciar entre dos tipos de núcleos (kernels), monolítico y microkernel.

Un kernel monolítico es el típico kernel de cualquier distribución Linux. Son núcleos muy grandes y complejos que engloban todas las funcionalidades posibles, como son la administración de memoria, sistema de archivos, control de hardware, comunicación entre procesos, etc. En definitiva, es un gran programa que engloba todo el sistema.

A diferencia del kernel monolítico, un microkernel sólo engloba una seríe de primitivas mñinimas para e funcionamiento del PC, como son comunicacion entre procesos, planificación y gestión del espacio de direcciones.

Un microkernel adopta le idea del “divide y vencerás”, es decir, en vez de tener un núcleo enorme que lo gestione todo, con el consiguiente peligro de que algo falle y arrastre (que lo hará) al resto del núcleo, tenemos un núcleo más pequeño que gestiona unas tareas mínimas y el resto son gestionadas como procesos (llamados servidores), en sí proporcionados por el núcleo, pero con la diferencia de que si un proceso falla no afecta ni al hardware ni al propio núcleo.

Un micronúcleo proporciona solamente una funcionalidad limitada: el mínimo nivel de abstracción que se precisa por encima del hardware para ejecutar el resto del sistema operativo en el espacio de usuario.

Bien, a grandes rasgos, esas son las diferencias entre un núcleo monolítico y otro microkernel.

Actualmente se debate sobre si los SO (libres…, el resto seguirá en su mundo) deben girar hacia los microkernels, ya que se considera el monolítico como obsoleto.

GNU/Hurd es el Sistema Operativo de GNU para el reemplazo del núcleo de UNIX y utiliza un microkernel llamado GNU/Mach, el cual, es el microkernel oficial del Proyecto GNU.

Desde el principio, el objetivo de GNU ha sido desarrollar un Sistema Operativo propio y completamente libre, pero esto es un desarrollo lento y costoso, por lo que provisionalmente se optó por el kernel de Linux.

El desarrollo de GNU/Hurd creo que es demasiado lento, ya sea por parte de GNU o por parte de otras distribuciones como Debian GNU/Hurd. De esta última, existe una Live CD para probarlo, la cual su última versión data del año 2005.

Aunque la última versión instalable es del 2006. La imagen de la última versión nos la podemos descargar de la siguiente dirección, un servidor FTP cuya web en inglés dice que está localizado en España. Decir que a día de hoy (04/10/07) la última versión de Debian GNU/Hurd es la k14, y que ni mucho menos es estable, es más, están buscando gente experimentada en C para ayudar en el desarrollo de este SO.

FTP de GNU/Hurd

Para descargarnos el Live CD, tenemos esta dirección (no es de la última versión completa).

Live CD de Debian GNU/Hurd

Si deseas participar en el proyecto, aquí tienes la dirección de la web en español donde viene toda la información.

Web de Deabian GNU/Hurd en español.

El desarrollo se está haciendo para plataformas i386, aunque se espera que una vez que el proyecto esté acabado y sea estable, se pueda ampliar a otras arquitecturas.

A parte de la distribución de Debian (OJO, aun no existe ninguna distribución oficial ya que el sistema aún está en desarrollo), existen otras dos Gentoo GNU/hurd y Bee GNU/Hurd.

Yo voy a usar Debian GNU/Hurd, más que nada por la fiabilidad de Debian en GNU/Linux, que respalda esta marca.

La instalación no es ni rápida ni sencilla, más bien todo lo contrario, lenta y complicada. Aunque según he leído por ahí, se ha avanzado en este aspecto, así que no me quiero imaginar como sería antes.

Lo primero que debemos hacer es bajarnos la última ISO del FTP anterior, a día de hoy (4/10/07) es la K-14.

Yo he intentado instalarlo en un PC dedicado, pero me ha sido imposible, me reconocía mal las particiones, no me las inicializaba, y cuando parece que lo tenía instalado, no me dejaba iniciar el kernel.

Luego he intentado virtualizarlo en Ubuntu con VirtualBox y más tarde en Debian y Damn Small Linux, cosa que no he conseguido.

Con todo esto se saca una conclusión, a Hurd le queda aún mucho camino por recorrer, pero lo que se dice mucho.

La mejor forma de hacerlo funcionar (yo no lo he conseguido) es emulándolo con Quemu, preferiblemente desde Debian GNU/Linux.

Una vez que tengamos nuestro SO montado en Quemu y lo iniciemos, obtendremos una pantalla en azul con diversas opciones en inglés. Debemos hacer caso a las siguientes.

  • Gestión de las particiones, hay que tener muy claro en que partición vamos a montar GNU/Hurd, ya que corremos el peligro de perder todos los datos del disco duro. Lo mejor es hacer una copia de seguridad de todos nuestros datos antes de proceder a instalar Debian GNU/Hurd. Hurd necesita dos tipos de particiones, ext2 y swap.
  • Inicialización de la partición swap, esto es necesario para la instalación de GNU/Hurd.
  • Inicialización del kernel GNU/Hurd, esto es necesario para la instalación de GNU/Hurd.
  • Instalación del sistema base, instalación propia de GNU/Hurd.

Una vez concluido todo, el sistema se reiniciará y arrancará el GRUB…, una pantalla negra donde pondrá “grub>”, y ahí deberemos iniciar el kernel y arrancar el sistema (aquí es lo más lejos que yo he llegado).

A partir de aquí, hay que teclear lo siguiente.

find /boot/gnumach.gz

Esto sirve para encontrar donde tenemos el boot.

A continuación…

kernel (hd0,1)/boot/gnumach.gz root=device:hd0s2

El número del hdX depende de lo devuelto por “find”, ya solo quedaría escribir “boot” y arrancaría el sistema.

Como he dicho, aún le falta mucho camino por recorrer a GNU/Hurd. A día de hoy el proyecto sigue activo aunque se avanza lentamente, y como he dicho, se buscan programadores en C y testers para probar el sistema en busca de errores…, aunque se debería mejorar la instalación para poder ofrecer el sistema a más usuarios y que la caza de errores fuera realizada por la mayor cantidad de usuarios posible.

Comments No Comments »

   Beat diabetes   Diabetes diet