Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Historia
Historia
12 de febrero de 2009
c Gustavo Romero
Indice
c Gustavo Romero
Lecturas recomendadas
Jean Bacon
Abraham Silberschatz Fundamentos de Sistemas Operativos (2) William Stallings Andrew Tanuenbaum Sistemas Operativos (2) Sistemas Operativos Modernos (1,12)
c Gustavo Romero
Motivacin o
La arquitectura de un SO marca de forma vital su funcionamiento. Cada posible eleccin tendr consecuencias ineludibles. o a Ejemplo: el compromiso velocidad/espacio:
--------------------------------------------------------------------------#define BYTE_SIZE 8 /* a byte contains 8 bits */ int bit_count(int byte) /* count the bits in a byte */ { int i, count = 0; for (i = 0; i < BYTE_SIZE; i++) /* loop over the bits in a byte */ if ((byte >> i) & 1) ++count; /* if this bit is a 1, add to count */ return count; /* return sum */ } --------------------------------------------------------------------------#define bit_count(b) (b&1) + ((b>>1)&1) + ((b>>2)&1) + ((b>>3)&1) + ((b>>4)&1) + ((b>>5)&1) + ((b>>6)&1) + ((b>>7)&1); --------------------------------------------------------------------------char bits[256] = {0, 1, 1, 2, 1, 2, 2, 3, 1, 2, 2, 3, 2, 3, 3, 4, 1, 2,..}; --------------------------------------------------------------------------c Gustavo Romero Historia de los sistemas operativos (4/31)
Qu es un sistema operativo? e
Todos los programas que vienen con el ordenador al comprarlo? = no. Todo lo que viene en el CD/DVD del creador del SO? = no. Los programas que nos permiten utilizar el ordenador (... con suerte ecientemente) = si.
Interfaz con el ordenador:
desarrollo de programas ejecucin de programas o acceso a dispositivos de E/S acceso al sistema de cheros proteccin y seguridad o deteccin y respuesta a errores o contabilidad
Gestor de recursos.
c Gustavo Romero Historia de los sistemas operativos (5/31)
Historia
Primera generacin (1945-55) o Segunda generacin (1955-65) o Tercera generacin (1965-80) o Cuarta generacin (1980-hoy) o
c Gustavo Romero
Utilidad: mquinas de clculo. a a Tecnolog dispositivos mecnicos tubos de a: a vacio y paneles. Mtodo de programacin: cables e o interruptores y tarjetas perforadas. Diseo/construccin/operacin/programacin/n o o o mantenimiento: genios como Aiken, von Newman o Mauchley.
c Gustavo Romero
Utilidad: clculo cient a co e ingenier a. Tecnolog la invencin del transistor redujo su tamao y a: o n precio y los populariz mainframes/IBM 1401/7094. o Mtodo de programacin: ensamblador y lenguajes de alto e o nivel (FORTRAN) sobre tarjetas perforadas. Paso de procesamiento secuencial a procesamiento por lotes. Ejemplos: FMS y IBSYS.
Card reader Tape drive Input tape System tape Output tape Printer
1401
7094
1401
(a)
(b)
(c)
c Gustavo Romero
(d)
(e)
(f)
2 usos principales:
clculo cient a co e ingenier a. procesamiento de carcteres. a
Circuito integrado +barato +popular IBM 360, GE-645, DEC PDP-1. Logros destacables:
multiprogramacin. o spooling. tiempo compartido.
(V)LSI ++barato ++popular IBM PC. P: 8080, Z80, 8086, 286, 386, 486, Pentium, Core 2, Athlon, Alpha, Ultrasparc. Logros destacables:
GUI. SO de red. SMP. SO distribuidos.
c Gustavo Romero
Clasicacin: o
Desestructurados. Estructura simple:
monol ticos capas modulares
Estructura cliente/servidor:
microncleo u exoncleo u
Tendencias:
Ncleos extensibles. u Multiservidores sobre un microncleo. u Ncleos h u bridos.
c Gustavo Romero Historia de los sistemas operativos (11/31)
Monol tico
El SO completo se ejecuta en modo protegido. Nula proteccin entre los o componentes. Ventajas:
Econom de cambios de a contexto +eciente.
Inconvenientes:
Falta de proteccin o -abilidad (controladores). Manejo de la complejidad: Es ms a sencillo escribir 103 programas de 103 l neas que uno de 106 .
c Gustavo Romero Historia de los sistemas operativos (12/31)
Capas/Niveles
El SO completo se ejecuta en modo protegido. Escasa proteccin entre los o componentes. Ventajas:
Econom de cambios de a contexto +eciente. Menor complejidad.
Inconvenientes:
Falta de proteccin o -abilidad (controladores). Menos exible que monol tico.
Modular
El SO completo se ejecuta en modo protegido. Escasa proteccin entre los o componentes. Ventajas:
Econom de cambios de a contexto +eciente. Menor complejidad.
Inconvenientes:
Falta de proteccin o -abilidad (controladores). Menos exible que monol tico.
Microncleo u
Una m nima parte del SO se ejecuta en modo protegido. Ventajas:
Perfecta proteccin entre o componentes +abilidad. Manejo de la complejidad. Facilidad de programacin. o
Inconvenientes:
Sobrecarga en las comunicaciones -eciencia.
c Gustavo Romero Historia de los sistemas operativos (15/31)
Exoncleo u
Apenas existe SO, slo un o gestor de recursos. Dejamos que el software acceda directamente al hardware. Ventajas:
Perfecta proteccin entre o componentes +abilidad. Acceso directo al hardware mxima a eciencia
Inconvenientes:
Pobre reutilizacin de o cdigo. o
c Gustavo Romero Historia de los sistemas operativos (16/31)
Mquina virtual a
N copias virtuales de la mquina real: a
Software: Bochs, Qemu, VMWare, Xen. Hardware: VMWawe, Xen.
Inconvenientes:
La simulacin del o hardware real es costosa poco eciente
H drida
Mezcla ms frecuente: microncleo + monol a u tico. Ventaja: = ganamos velocidad respecto a microncleo. u Inconveniente: = perdemos proteccin entre componentes. o
c Gustavo Romero
MS-DOS
c Gustavo Romero
Windows 2000
c Gustavo Romero
Linux
c Gustavo Romero
Mach
c Gustavo Romero
MacOS X
c Gustavo Romero
QNX
c Gustavo Romero
1 llamada al sistema:
entrada al ncleo. u cambio al espacio de direcciones del ncleo. u recuperar el espacio de direcciones original. salida del ncleo. u
c Gustavo Romero
c Gustavo Romero
c Gustavo Romero
c Gustavo Romero
c Gustavo Romero
L4Linux
c Gustavo Romero
c Gustavo Romero