Está en la página 1de 19

The GNU Hurd

Sistemas de Operacin II o

Sabrina Fernndez & Manuel Gmez. a o


Universidad Simn Bol o var.

23 de mayo de 2011

Sabrina Fernndez & Manuel Gmez. (USB) a o

The GNU Hurd

23 de mayo de 2011

1 / 19

Esquema

Conceptos Bsicos a Antecedentes Histricos o Arquitectura Curiosidades Bibliograf a

Sabrina Fernndez & Manuel Gmez. (USB) a o

The GNU Hurd

23 de mayo de 2011

2 / 19

Conceptos Bsicos a

Conceptos Bsicos a

GNU: Es un proyecto de desarrollo de un Sistema Operativo totalmente libre que sigue la losof Unix. Su meta es ofrecer un a sistema completo, desde el ncleo a bajo nivel, hasta aplicaciones u de usuario, ya sea en servidores, estaciones de trabajo, entre otros. Microncleo: es un principio de diseo para un Sistema Operativo u n en el que se incluye la cantidad m nima necesaria de funcionalidad en el ncleo del Sistema Operativo, delegando todo lo que se u pueda a procesos proveedores de servicios de sistemas en espacio de usuario.

Sabrina Fernndez & Manuel Gmez. (USB) a o

The GNU Hurd

23 de mayo de 2011

3 / 19

Conceptos Bsicos a

Conceptos Bsicos a

Microncleo GNU Mach: Es una implemetacin de Mach y el microncleo u o u ocial del proyecto GNU. Adems de esto, se considera a GNU Mach como a una familia de microncleos, con varias implementaciones, incluyendo los u nucleos de OS X, varios BSD y el GNU Hurd. El mismo funciona unicamente en arquitecturas Intel de 32 bits. Mach: Es un microncleo de primera generacin. Mach incluye espacios de u o direcciones virtuales en forma de tareas, contextos de ejecucin en forma o de hilos, IPC (Comunicacin Inter Proceso), capacidades en forma de o puertos, y objetos de memoria, los cuales habilitan los mecanismos externos de Mach para paginacin. o

Sabrina Fernndez & Manuel Gmez. (USB) a o

The GNU Hurd

23 de mayo de 2011

4 / 19

Conceptos Bsicos a

Conceptos Bsicos a

El GNU Hurd: Es un proyecto de GNU para remplazar el kernel de Unix. Es una coleccin de servidores que corren sobre el microncleo o u de Mach para implementar sistema de archivos, control de acceso a archivos, y otras funcionalidades que son implementadas por el ncleo de Unix o por otros ncleos u u similares (como Linux).

Sabrina Fernndez & Manuel Gmez. (USB) a o

The GNU Hurd

23 de mayo de 2011

5 / 19

Antecedentes Histricos o

Antecedentes Histricos o

En 1983 se crea el proyecto GNU por Richar Stallman como el n de crear un sistema operativo completo y libre. Stallman lo describe como un ncleo primitivo. u En 1986 se conoci que TRIX era el ncleo de GNU. o u TRIX es un sistema operativo compatible con UNIX versin 7. Fu desarrollado en 1970 por el Laboratorio o e de Ciencias de la Computacin del Instituto de o Tecnolog de Massachusetts (MIT). El ncleo de TRIX a u usa RPC.

Sabrina Fernndez & Manuel Gmez. (USB) a o

The GNU Hurd

23 de mayo de 2011

6 / 19

Antecedentes Histricos o

Antecedentes Histricos o
La fundacin para el Software Libre (FSF) informa en o 1986 que comenzar los cambios sobre TRIX. Pero a poco despus comienzan las negociaciones para e desarrollar Mach. Esto har que Mach no solo fuese a una mejora, sino tambin un trabajo totalmente nuevo. e En 1988 Stallman anuncia que pondr el sistema de a archivos Berkeley Sprite sobre Mach. Poco tiempo despus, considerando que el desarrollo de Mach pod e a no lograrse, la FSF declara que de no lograr Mach, usar TRIX o Berkeley Sprite. Sprite pasa de ser un an simple sistema de archivos a tener opciones de ncleo u completas.

Sabrina Fernndez & Manuel Gmez. (USB) a o

The GNU Hurd

23 de mayo de 2011

7 / 19

Antecedentes Histricos o

Antecedentes Histricos o

En enero de 1990 anuncian que no se est desarrollando a ningun trabajo sobre ncleos, pues an quer usar u u an Mach. Por un ao no se supo ms, hasta que en 1991 n a anuncian que an era de su interes un ncleo u u multi-procesos que pudiera correr sobre Mach. Los abogados de la CMU (Carnegie Mellon University) buscaban liberar a Mach con las condiciones de distribucin que les permitiera poder distribuirlo. De o poder hacerlo y decidir distribuirlo, entonces comenzar el trabajo de desarrollo. an

Sabrina Fernndez & Manuel Gmez. (USB) a o

The GNU Hurd

23 de mayo de 2011

8 / 19

Antecedentes Histricos o

Antecedentes Histricos o

CMU ten a su disposicin en los mismos terminos que Mach un slo a o o servidor parcial que emula UNIX llamado Poe. El mismo era lento y proporcionaba m nimas funcionalidades. El plan era comenzar a extender Poe para que diera funcionalidad completa. Luego de esto, se esperaba tener un emulador modular dividido en mltiples procesos. u Stallman explic la relacin entre el Hurd y Linux, donde se mencionaba o o que la FSF comenz a desarrollar el Hurd en 1990. A partir de noviembre o de 1991, el Hurd (que se ejecuta sobre Mach) es el kernel ocial de GNU.

Sabrina Fernndez & Manuel Gmez. (USB) a o

The GNU Hurd

23 de mayo de 2011

9 / 19

Arquitectura

Arquitectura

El Hurd usa una arquitectura cliente servidor, construido sobre un microncleo que es responsable de proveer el servicio ms bsico del u a a ncleo, esto es, coordinar los accesos al hardware de la siguiente forma: u Al CPU a travs de manejo de procesos y scheduling. e A la RAM a travs de manejo de memoria. e A los dispositivos Entrada/Salida para sonido, grcas, a almacenamiento masivo, etc a travs de E/S scheduling. e

Sabrina Fernndez & Manuel Gmez. (USB) a o

The GNU Hurd

23 de mayo de 2011

10 / 19

Arquitectura

Arquitectura

Cmo se eligi el microncleo? o o u El Hurd fu desarrollado para usar a Mach como microncleo. e u Se escogi el microncleo L4 y se hicieron avances como el manejador o u de memoria inicial, el funcionamiento del cdigo de inicio del proceso o y se logr que los programas corrieran. o Se intent que Coyotos reemplazara a EROS, sin embargo esto o fracas y se comenz a desarrollar Viengoos como una alternativa. o o

Sabrina Fernndez & Manuel Gmez. (USB) a o

The GNU Hurd

23 de mayo de 2011

11 / 19

Arquitectura

Arquitectura
Qu se logra con Hurd? e Un proceso Hurd corre bajo un conjunto de ids de usuario, los cuales pueden contener mltiples ids, una o ninguna. Un proceso con sucientes u privilegios puede aadir o quitar ids a otro proceso. n Un programa adecuado puede designarse como un traductor de un archivo unico o de una jerarqu de directorios entera. Cada acceso al archivo a traducido, o los archivos bajo la jerarqu es manejado por el programa. a, Los traductores tambin pueden ser usados para proveer servicios al e usuario. El Hurd necesita un gestor de arranque mltiple como GRUB. u
Sabrina Fernndez & Manuel Gmez. (USB) a o The GNU Hurd 23 de mayo de 2011 12 / 19

Arquitectura

Arquitectura
Arquitectura de los Servidores Existen 24 servidores en total, 18 servidores centrales y 6 servidores de sistema de archivos. Servidores de Sistema de Archivos ext2fs: Maneja los sistemas de archivos tipo ext2. isofs: Un servidor para sistemas de archivos tipo iso, usualmente usado para CDs. nfs: Sistema de archivos de red que hace soporte al sistema de archivos de red de Sun. ufs: Un servidor para sistemas de archivos del tipo ufs. ftpfs: Un servidor para sistemas de archivos del tipo ftp. storeio: Un traductor para dispositivos y otros almacenamientos.
Sabrina Fernndez & Manuel Gmez. (USB) a o The GNU Hurd 23 de mayo de 2011 13 / 19

Arquitectura

Arquitectura
Servidores Centrales auth: El servidor de autenticacin pasa las credenciales cuando dos o servidores que no conf entre s se comunican. Cada servidor de an autenticacin establece un dominio de conanza. o crash: El servidor de ca se activa cada vez que una tarea manda da una seal de error grave. n exec: El servidor de ejecucin maneja la creacin de una nueva o o imagen de proceso. fo: El traductor FIFO implementa pipes. new-fo: Servidor alternativo para los pipes. rmlink: Un traductor de rmlinks.

Sabrina Fernndez & Manuel Gmez. (USB) a o

The GNU Hurd

23 de mayo de 2011

14 / 19

Arquitectura

Arquitectura
Servidores Centrales fwd: Env las peticiones a otro servidor. Es usado para coordinar a otros servidores que encargndose de los diferentes nodos. a hostmux: Un traductor para invocar traductores de servidores espec cos. ifsock: Sirve para enganchar las direcciones de dominio Unix e implementa el API de sokets. init: Un servidor para los procedimientos de arranque del sistema y las conguraciones bsicas de tiempo de ejecucin. a o magic: La bsqueda de Magic es bsicamente para los casos donde la u a bsqueda necesita informacin que es parte del estado del proceso u o que realiza la llamada, y no parte del procedimiento de bsqueda. u

Sabrina Fernndez & Manuel Gmez. (USB) a o

The GNU Hurd

23 de mayo de 2011

15 / 19

Arquitectura

Arquitectura
Servidores Centrales null: Un servidor con mucho espacio libre y un incontable nmero de u ceros. pnet: Un servidor para TCP/IP, que implementa la familia de protocolos de IPv4. pocal: Implementa los sockets de dominio de UNIX. proc: El servidor de proceso asigna PIDs y estructura de procesos a las tareas, y maneja las operaciones y todos los niveles de proceso. symlink: Servidor para enlaces simblicos. o term: Implementa un terminal de POSIX. usermux: Un traductor para invocar traductores de usuarios espec cos.

Sabrina Fernndez & Manuel Gmez. (USB) a o

The GNU Hurd

23 de mayo de 2011

16 / 19

Arquitectura

Arquitectura

Distribuciones GNU Hurd Arch Hurd Bee GNU/Hurd Debian GNU/HURD Gentoo GNU Hurd (abandonado) GNU/Hurd Live CD

Sabrina Fernndez & Manuel Gmez. (USB) a o

The GNU Hurd

23 de mayo de 2011

17 / 19

Curiosidades

Curiosidades

Hurd es un acrnimo recursivo doble que signica Hird of o Unix-Replacing Daemons (Manada de Sustitucin UNIX de o Demonios), y Hird signica Hurd of Interfaces Representing Depth (Manada de Interfaces de Representacin de Profundidad). o Inicialmente El Hurd iba a llamarse Alix, nombre de una novia de Stallman, pero el programador Michael Bushnell lo nombr El Hurd. o El mensaje de error equivalente al kernel-panic en Unix es computer bought the farm lo cul es referencia a una cancin folclrica a o o llamada Old McDonald Had a Farm.

Sabrina Fernndez & Manuel Gmez. (USB) a o

The GNU Hurd

23 de mayo de 2011

18 / 19

Bibliograf a

Bibliograf a
http://www.gnu.org/software/hurd/hurd.html http://www.debian.org/ports/hurd/hurd-doc-server#crash http://www.rinconsolidario.org/linux/gnu/gnu.html

Sabrina Fernndez & Manuel Gmez. (USB) a o

The GNU Hurd

23 de mayo de 2011

19 / 19

También podría gustarte