PDF de programación - Bloque I: Principios de sistemas operativos

Imágen de pdf Bloque I: Principios de sistemas operativos

Bloque I: Principios de sistemas operativosgráfica de visualizaciones

Publicado el 14 de Enero del 2017
928 visualizaciones desde el 14 de Enero del 2017
118,0 KB
19 paginas
Creado hace 13a (14/02/2011)
UNIVERSIDAD
DE CANTABRIA

Bloque I: Principios de sistemas
operativos
Tema 1. Principios básicos de los sistemas operativos
Tema 2. Concurrencia
Tema 3. Ficheros
Tema 4. Sincronización y programación dirigida por eventos
Tema 5. Planificación y despacho
Tema 6. Sistemas de tiempo real y sistemas empotrados
Tema 7. Gestión de memoria
Tema 8. Gestión de dispositivos de entrada-salida

GRUPO DE COMPUTADORES Y TIEMPO REAL
FACULTAD DE CIENCIAS
1

© Michael González, J. Javier Gutiérrez

14/feb/11

1

Notas:

UNIVERSIDAD
DE CANTABRIA

Tema 1. Principios básicos de los sistemas operativos

• Concepto de sistema operativo.
• Evolución de los sistemas operativos.
• Estructura de los sistemas operativos.
• Concepto de programa y proceso.
• Concurrencia: gestión de procesos y threads.
• Gestión de memoria.
• Ficheros y el sistema de ficheros.
• Entrada/salida.
• Sistemas multiusuario y protección.

GRUPO DE COMPUTADORES Y TIEMPO REAL
FACULTAD DE CIENCIAS

© Michael González, J. Javier Gutiérrez

14/feb/11

2

UNIVERSIDAD
DE CANTABRIA

1. Concepto de sistema operativo
Controla el uso por parte de los programas de aplicación de todos
los recursos del computador: memoria, CPU, unidades de entrada
y salida
Independiza al programa de aplicación del hardware
Proporciona comunicación con otros computadores
Ejecuta servicios para los programas o aplicaciones
Ejecuta órdenes de los usuarios

GRUPO DE COMPUTADORES Y TIEMPO REAL
FACULTAD DE CIENCIAS

© Michael González, J. Javier Gutiérrez

14/feb/11

3

Niveles del sistema operativo

UNIVERSIDAD
DE CANTABRIA

Usuarios

Aplicaciones

Shell

Servicios (API)

Drivers I/O

Núcleo

Hardware

Sistema
operativo

GRUPO DE COMPUTADORES Y TIEMPO REAL
FACULTAD DE CIENCIAS

© Michael González, J. Javier Gutiérrez

14/feb/11

4

UNIVERSIDAD
DE CANTABRIA

Gestión de recursos
Asignación de recursos
• memoria, disco, dispositivos de entrada salida
• CPU (planificación)
Protección
• Entre usuarios y aplicaciones
• Entre cada aplicación y el sistema operativo
• Entre cada aplicación y el hardware
Contabilidad
• A efectos de gestión de coste
• A efectos de calidad de servicio

GRUPO DE COMPUTADORES Y TIEMPO REAL
FACULTAD DE CIENCIAS

© Michael González, J. Javier Gutiérrez

14/feb/11

5

UNIVERSIDAD
DE CANTABRIA

Servicios del sistema operativo
Concurrencia
• procesos
• threads
• sincronización
Ficheros
Entrada/Salida (incluyendo comunicaciones)
Gestión de la memoria
Servicios de tiempo real
• planificación, relojes, ...

GRUPO DE COMPUTADORES Y TIEMPO REAL
FACULTAD DE CIENCIAS

© Michael González, J. Javier Gutiérrez

14/feb/11

6

Arranque del computador

UNIVERSIDAD
DE CANTABRIA

Fase
Iniciador ROM

Cargador del SO

Inicialización SO

Funcionamiento normal

Operación

Test del hardware
Carga del cargador del SO
Carga en memoria de componentes
del SO
Test del sistema de archivos
Creación de estructuras de datos
internas
Arranque de procesos del sistema
(demonios)

GRUPO DE COMPUTADORES Y TIEMPO REAL
FACULTAD DE CIENCIAS

© Michael González, J. Javier Gutiérrez

14/feb/11

7

2. Evolución de los sistemas operativos
Los primeros computadores no tenían sistema operativo
• programados en lenguaje máquina
• el programador hacía todo el software
Sistemas de procesamiento por lotes (1955-1965)

UNIVERSIDAD
DE CANTABRIA

Tarjetas

Lector de
tarjetas

Unidad de

cinta

Cinta de
entrada

Computador

Cinta de
salida

Impresora

• se agrupaban varios trabajos en un lote, para agilizar el proceso

GRUPO DE COMPUTADORES Y TIEMPO REAL
FACULTAD DE CIENCIAS

© Michael González, J. Javier Gutiérrez

14/feb/11

8

Evolución de los sistemas operativos
(cont.)
La multiprogramación (1965-1980)
• Varias aplicaciones cargadas a la vez en memoria
• Cuando una aplicación está en espera, las demás pueden

UNIVERSIDAD
DE CANTABRIA

continuar

• Spooling: leer tarjetas al mismo tiempo que se procesan otras
• El tiempo compartido entre múltiples usuarios es una evolución

natural de la multiprogramación
- ejemplo: CTSS, MIT;
- reduce drásticamente el tiempo de espera a un trabajo
- se populariza sólo al haber hardware de protección
- desemboca en el sistema operativo UNIX

GRUPO DE COMPUTADORES Y TIEMPO REAL
FACULTAD DE CIENCIAS

© Michael González, J. Javier Gutiérrez

14/feb/11

9

Evolución de los sistemas operativos
(cont.)
Historia del UNIX
• A partir del CTSS se diseña el MULTICS (MIT, Bell Labs, General

UNIVERSIDAD
DE CANTABRIA

Electric)
- pensado para cientos de usuarios
- escrito en PL/I
- resultó demasiado ambicioso

GRUPO DE COMPUTADORES Y TIEMPO REAL
FACULTAD DE CIENCIAS

© Michael González, J. Javier Gutiérrez

14/feb/11

10

Evolución de los sistemas operativos
(cont.)
Historia del UNIX (cont.)
• Ken Thompson, de Bell Labs, desarrolla una versión

UNIVERSIDAD
DE CANTABRIA

monousuario, en ensamblador: UNICS
- se unen al proyecto Brian Kernighan y Denis Ritchie
- se porta a un computador PDP-11, con hardware de protección de

- se reescribe en un lenguaje propio: B, que es una simplificación del

memoria

BCPL

- Ritchie rediseña el lenguaje y lo llama C
- se reescribe Unix en C: se consigue la portabilidad
- se distribuye gratuitamente a las universidades
- se estandariza con el nombre POSIX

GRUPO DE COMPUTADORES Y TIEMPO REAL
FACULTAD DE CIENCIAS

© Michael González, J. Javier Gutiérrez

14/feb/11

11

Evolución de los sistemas operativos
(cont.)
Computadores personales (1980-1990)
• dos tipos:

- estaciones de trabajo: UNIX y redes
- PCs para oficinas y hogares: MS-DOS, luego Windows
• software fácil de usar: entornos gráficos de ventanas
La Internet (1991-hoy)
• los sistemas operativos generales proporcionan conexión a la

UNIVERSIDAD
DE CANTABRIA

red

• se populariza el software libre (Gnu)
• dos grandes familias: Windows y Unix/Linux
• surgen otros niveles diferentes al SO: Java, .net

GRUPO DE COMPUTADORES Y TIEMPO REAL
FACULTAD DE CIENCIAS

© Michael González, J. Javier Gutiérrez

14/feb/11

12

3. Estructura de los sistemas
operativos

UNIVERSIDAD
DE CANTABRIA

Usuarios

Aplicaciones

Shell 1

Shell 2

Servicios

Núcleo

API Win32

API POSIX

Gestión
de
Procesos

Gestión
de
Memoria

Entrada/
Salida

Archivos
y
Directorios

Seguridad
y
protección

Redes

Drivers I/O

Hardware

GRUPO DE COMPUTADORES Y TIEMPO REAL
FACULTAD DE CIENCIAS

© Michael González, J. Javier Gutiérrez

14/feb/11

13

Tipos de sistemas operativos por su
estructura
a) Monolíticos
• Todos los componentes en un solo programa
• Un solo espacio de direcciones
• Un solo flujo de control (no hay concurrencia interna)
• El sistema operativo se ejecuta en modo privilegiado; las

aplicaciones en modo usuario (restringido)

UNIVERSIDAD
DE CANTABRIA

• Ejemplos: MS-DOS, UNIX
• Son complicados de modificar

GRUPO DE COMPUTADORES Y TIEMPO REAL
FACULTAD DE CIENCIAS

© Michael González, J. Javier Gutiérrez

14/feb/11

14

Tipos de sistemas operativos por su
estructura (cont.)
b) A capas
• Jerarquía de capas, cada una con una interfaz clara y que sólo

UNIVERSIDAD
DE CANTABRIA

usa los servicios de la capa inferior

• Ejemplos THE (Dijkstra 1968), OS/2 (Deitel, 1994)

Aplicaciones

Gestión de entrada/salida

Controlador del terminal

Gestión de memoria

THE

Planificación de la CPU y multiprogramación

Hardware

GRUPO DE COMPUTADORES Y TIEMPO REAL
FACULTAD DE CIENCIAS

© Michael González, J. Javier Gutiérrez

14/feb/11

15

Tipos de sistemas operativos por su
estructura (cont.)
c) Máquinas virtuales
• Se proporciona un modelo de una máquina sobre la que se

UNIVERSIDAD
DE CANTABRIA

pueden ejecutar programas

• esta máquina se puede replicar por tiempo compartido
• se pueden ejecutar sistemas operativos completos sobre la

máquina virtual

• Ejemplos:

- JVM (Java virtual machine)
- VM-Ware (emula un PC sobre Windows o Linux)
- RT-Linux

GRUPO DE COMPUTADORES Y TIEMPO REAL
FACULTAD DE CIENCIAS

© Michael González, J. Javier Gutiérrez

14/feb/11

16

Tipos de sistemas operativos por su
estructura (cont.)
d) Modelo cliente-servidor
• Se mueven parte de los servicios del sistema operativo a una

UNIVERSIDAD
DE CANTABRIA

capa superior: servidores

• Los programas de aplicación son clientes
• Se comunican a través de un micro-núcleo (privilegiado)

Applic. Applic.

API

API

Servidor
de
procesos

Servidor
de
memoria

Servidor
de
I/O

Servidor
archivos
directorios

Servidor
de
redes

Micro-núcleo
Hardware

GRUPO DE COMPUTADORES Y TIEMPO REAL
FACULTAD DE CIENCIAS

© Michael González, J. Javier Gutiérrez

14/feb/11

17

Tipos de sistemas operativos por su
estructura (cont.)
Los sistemas cliente-servidor (cont.)
• Son más flexibles
• Pero menos eficientes
• Ejemplo: Minix (Tanenbaum 1998), Mach (Accetta, 1986)
• Windows NT/2000/XP es mezcla de un sistema monolítico (por

UNIVERSIDAD
DE CANTABRIA

eficiencia) y cliente-servidor (por flexibilidad)

GRUPO DE COMPUTADORES Y TIEMPO REAL
FACULTAD DE CIENCIAS

© Michael González, J. Javier Gutiérrez

14/feb/11

18

Tipos de sistema operativo por sus
servicios
Por el número de usuarios
• sistemas empotrados:
- sin usuarios directos
-
- ejemplo: controlador de un televisor

forman parte de un sistema mayor

UNIVERSIDAD
DE CANTABRIA

• sistemas monousuario:

- un solo usuario
- ejemplo: Windows 98
• sistemas multiusuario

- muchos usuarios
- presenta protección entre usuarios
- ejemplos: Unix, Windows XP profesional

GRUPO DE COMPUTADORES Y TIEMPO REAL
FACULTAD DE CIENCIAS

© Michael González, J. Javier Gutiérrez

14/feb/11

19

Tipos de sistema operativo por sus
servicios (cont.)
Por el nivel de protección (se protegen datos de una aplicación y
del sistema operativo frente a otras aplicaciones)
• protegidos (Unix, Windows XP profesional)
• semi-protegidos (Windows 98)
• no protegidos (Windows 3.1)
Por la capacidad de concurrencia
• monoproceso y monotarea: un solo programa con un solo flujo

UNIVERSIDAD
DE CANTABRIA

de control (MS-DOS)

• multitarea: capaz de ejecutar un solo programa, pero varias de

sus partes a la vez (MaRTE OS)

• multiproceso: capaz
  • Links de descarga
http://lwp-l.com/pdf939

Comentarios de: Bloque I: Principios de sistemas operativos (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad