ZeOS és l'esquelet d'un sistema operatiu senzill per l'arquitectura x86 de 32 bits basat en el kernel de Linux 2.4. El sistema operatiu ZeOS fou inicialment desenvolupat per un grup d'estudiants de la Facultat d'Informàtica de Barcelona (FIB), amb el suport de professorat del departament d'Arquitectura de Computadors (AC). És un sistema operatiu utilitzat en l'àmbit educatiu de la FIB per a l'aprenentatge i familiarització dels conceptes bàsics dels sistemes operatius.

Característiques El sistema operatiu ZeOS ha estat implementat en múltiples ocasions amb requeriments lleugerament diferents, de forma que cada versió té les seves característiques pròpies.

Les característiques comunes inclouen:

Gestió multiprocés (no es diferencia entre threads i processos) amb planificació (scheduling) Round Robin. Memòria dinàmica a nivell de sistema (per la gestió de processos). Memòria compartida Paginació Separació d'espai d'usuari (el userspace) i espai de sistema (el kernelspace). Crides a sistema (syscalls) estàndards de UNIX: read, write, fork, exit, getpid. Crides a sistema pròpies de ZeOS: gettime, getstats Llibreria estàndard de C reduïda (libc.c) que encapsula les crides a sistema, i conté funcions bàsiques de tractament d'enters i cadenes de caràcters.

Característiques que apareixen en algunes de les versions:

Semàfors Un intèrpret de comandes (la shell) Suport de ratolí i teclat PS/2 Abstracció dels dispositius (devices), en concret, la terminal (un dispositiu tty virtual). Altres crides a sistema estàndards de UNIX: open, close, dup, wait.

Compilació El sistema operatiu no conté un sistema de fitxers, de forma que el codi d'usuari s'inclou dins la imatge del sistema operatiu. Això es fa mitjançant el programa build, que s'utilitza un cop compilats el codi de sistema i el codi d'usuari per separat.

Execució El sistema operatiu conté un bootloader d'una sola etapa (a bootsect.S) que carrega el sistema operatiu complet a memòria i salta a la funció main del sistema (a system.c), la qual inicialitza el hardware (GDT, IDT i TSS), la memòria, els dispositius, el planificador, els processos bàsics del sistema (idle_task, i task_1), i seguidament entra en mode d'usuari i salta a la funció main de l'usuari (a user.c).

Referències

Categoria:Sistemes operatius