Académique Documents
Professionnel Documents
Culture Documents
Gustavo Romero
12 de febrero de 2009
c Gustavo Romero
Historia de los sistemas operativos (1/31)
Definición Historia Estructura Ejemplos Comparativa
Índice
1 Definición
2 Historia
3 Estructura
4 Ejemplos
5 Comparativa
c Gustavo Romero
Historia de los sistemas operativos (2/31)
Definición Historia Estructura Ejemplos Comparativa
Lecturas recomendadas
c Gustavo Romero
Historia de los sistemas operativos (3/31)
Definición Historia Estructura Ejemplos Comparativa
Motivación
La arquitectura de un SO marca de forma vital su
funcionamiento.
Cada posible elección tendrá consecuencias ineludibles.
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)
Definición Historia Estructura Ejemplos Comparativa
c Gustavo Romero
Historia de los sistemas operativos (5/31)
Definición Historia Estructura Ejemplos Comparativa
Historia
c Gustavo Romero
Historia de los sistemas operativos (6/31)
Definición Historia Estructura Ejemplos Comparativa
c Gustavo Romero
Historia de los sistemas operativos (7/31)
Definición Historia Estructura Ejemplos Comparativa
c Gustavo Romero
Historia de los sistemas operativos (8/31)
Definición Historia Estructura Ejemplos Comparativa
2 usos principales:
cálculo cientı́fico e
ingenierı́a.
procesamiento de
carácteres.
Circuito integrado ⇒
+barato ⇒ +popular ⇒
IBM 360, GE-645, DEC
PDP-1.
Logros destacables:
multiprogramación.
spooling.
tiempo compartido.
Ejemplos: OS/360, CTSS,
MULTICS, UNIX.
c Gustavo Romero
Historia de los sistemas operativos (9/31)
Definición Historia Estructura Ejemplos Comparativa
c Gustavo Romero
Historia de los sistemas operativos (10/31)
Definición Historia Estructura Ejemplos Comparativa
Clasificación:
Desestructurados.
Estructura simple:
monolı́ticos
capas
modulares
Estructura cliente/servidor:
micronúcleo
exonúcleo
Máquina virtual.
Hı́bridos.
Tendencias:
Núcleos extensibles.
Multiservidores sobre un micronúcleo.
Núcleos hı́bridos.
c Gustavo Romero
Historia de los sistemas operativos (11/31)
Definición Historia Estructura Ejemplos Comparativa
Monolı́tico
El SO completo se ejecuta
en modo protegido.
Nula protección entre los
componentes.
Ventajas:
Economı́a de cambios de
contexto ⇒ +eficiente.
Inconvenientes:
Falta de protección ⇒
-fiabilidad
(controladores).
Manejo de la
complejidad: Es más
sencillo escribir 103
programas de 103 lı́neas
que uno de 106 .
c Gustavo Romero
Historia de los sistemas operativos (12/31)
Definición Historia Estructura Ejemplos Comparativa
Capas/Niveles
El SO completo se ejecuta
en modo protegido.
Escasa protección entre los
componentes.
Ventajas:
Economı́a de cambios de
contexto ⇒ +eficiente.
Menor complejidad.
Inconvenientes:
Falta de protección ⇒
-fiabilidad
(controladores).
Menos flexible que
monolı́tico.
¿Cómo subdividir en capas?
c Gustavo Romero
Historia de los sistemas operativos (13/31)
Definición Historia Estructura Ejemplos Comparativa
Modular
El SO completo se ejecuta
en modo protegido.
Escasa protección entre los
componentes.
Ventajas:
Economı́a de cambios de
contexto ⇒ +eficiente.
Menor complejidad.
Inconvenientes:
Falta de protección ⇒
-fiabilidad
(controladores).
Menos flexible que
monolı́tico.
¿Qué colocar en el núcleo y
qué en módulos?
c Gustavo Romero
Historia de los sistemas operativos (14/31)
Definición Historia Estructura Ejemplos Comparativa
Micronúcleo
c Gustavo Romero
Historia de los sistemas operativos (15/31)
Definición Historia Estructura Ejemplos Comparativa
Exonúcleo
c Gustavo Romero
Historia de los sistemas operativos (16/31)
Definición Historia Estructura Ejemplos Comparativa
Máquina virtual
c Gustavo Romero
Historia de los sistemas operativos (17/31)
Definición Historia Estructura Ejemplos Comparativa
Hı́drida
Mezcla más frecuente: micronúcleo + monolı́tico.
Ventaja: =⇒ ganamos velocidad respecto a micronúcleo.
Inconveniente: =⇒ perdemos protección entre componentes.
c Gustavo Romero
Historia de los sistemas operativos (18/31)
Definición Historia Estructura Ejemplos Comparativa
MS-DOS
c Gustavo Romero
Historia de los sistemas operativos (19/31)
Definición Historia Estructura Ejemplos Comparativa
Windows 2000
c Gustavo Romero
Historia de los sistemas operativos (20/31)
Definición Historia Estructura Ejemplos Comparativa
Linux
c Gustavo Romero
Historia de los sistemas operativos (21/31)
Definición Historia Estructura Ejemplos Comparativa
Mach
c Gustavo Romero
Historia de los sistemas operativos (22/31)
Definición Historia Estructura Ejemplos Comparativa
MacOS X
c Gustavo Romero
Historia de los sistemas operativos (23/31)
Definición Historia Estructura Ejemplos Comparativa
QNX
c Gustavo Romero
Historia de los sistemas operativos (24/31)
Definición Historia Estructura Ejemplos Comparativa
1 llamada al sistema:
entrada al núcleo.
cambio al espacio de
direcciones del núcleo.
recuperar el espacio de
direcciones original.
salida del núcleo.
1 llamada a
procedimiento: llamada
y retorno en el interior del
espacio de direcciones del
núcleo y pudiendo
compartir información.
c Gustavo Romero
Historia de los sistemas operativos (25/31)
Definición Historia Estructura Ejemplos Comparativa
c Gustavo Romero
Historia de los sistemas operativos (26/31)
Definición Historia Estructura Ejemplos Comparativa
c Gustavo Romero
Historia de los sistemas operativos (27/31)
Definición Historia Estructura Ejemplos Comparativa
c Gustavo Romero
Historia de los sistemas operativos (28/31)
Definición Historia Estructura Ejemplos Comparativa
c Gustavo Romero
Historia de los sistemas operativos (29/31)
Definición Historia Estructura Ejemplos Comparativa
L4Linux
c Gustavo Romero
Historia de los sistemas operativos (30/31)
Definición Historia Estructura Ejemplos Comparativa
c Gustavo Romero
Historia de los sistemas operativos (31/31)