Anda di halaman 1dari 47

Sistemas operativos: una visin

aplicada

Modulo 1
Introduccin a los sistemas
operativos
Ing. Yarisol A. Castillo Q.

Contenido

Qu es un sistema operativo?
Arranque del computador
Componentes y estructura de un sistema operativo
Activacin del sistema operativo
Interfaz del programador
Interfaz del usuario
Historia y evolucin

Sistemas Operativos: Captulo I

Sistemas Operativos: Captulo I

Qu es un sistema operativo?
Un programa que acta como intermediario entre el
usuario de un computador y el hardware del mismo
Objetivos del sistema operativo:
Ejecutar programas y facilitar la solucin de los
problemas del usuario
Hacer un uso conveniente del computador
Usar el computador de forma eficiente
Proporcionar una mquina virtual extendida

Sistemas Operativos: Captulo I

Sistemas Operativos: Captulo I

Funciones del sistema operativo


Gestor de recursos (UCP, memoria, ...)
Asignacin y recuperacin de recursos
Proteccin de los usuarios
Contabilidad/monitorizacin
Soporte de usuario
Mquina extendida (servicios)
Ejecucin de programas (procesos)
rdenes de E/S
Operaciones sobre archivos
Deteccin y tratamiento de errores
Interfaz de usuario
Shell
Sistemas Operativos: Captulo I

Sistemas Operativos: Captulo I

Sistemas Operativos: Captulo I

Sistemas Operativos: Captulo I

Niveles del sistema operativo

U
su
a
rio
s
P
ro
g
ra
m
a
s
S
h
e
ll
S
e
rv
ic
io
s
N

c
le
o
H
a
rd
w
a
re

Sistemas Operativos: Captulo I

A
P
I
S
iste
m
a
o
p
e
ra
tiv
o

Contenido
Qu es un sistema operativo?

Arranque del computador

Componentes y estructura de un sistema operativo


Activacin del sistema operativo
Interfaz del programador
Interfaz del usuario
Historia y evolucin

Sistemas Operativos: Captulo I

10

Arranque del computador


El Reset carga valores predefinidos en registros
CP direccin de arranque del cargador ROM
Se ejecuta el cargador ROM del sistema
Test del sistema
Trae a memoria el boot del SO
Unidad de Memoria
Direccin
0
2.047

Celdas

Unidad de Memoria
Direccin

Celdas

Zona
ROM

1.046.528
1.048.575

1.048.575

Zona
ROM

En el caso del PC la ROM contiene, adems, sw de E/S (BIOS)


Sistemas Operativos: Captulo I

11

Arranque del sistema operativo


El SO est almacenado en el disco
Programa cargador
(identificador)

Disco

Sistema Operativo

Sistemas Operativos: Captulo I

12

Arranque del sistema operativo


El cargador ROM carga el sector de boot del SO y le da
control
El boot del SO carga el SO residente y da control al
programa de arranque del SO, que:
Comprueba el hardware
Comprueba el sistema de ficheros
Establece las tablas del SO
Crea procesos (segn el tipo de SO)
Proceso INIT
Procesos o tareas del sistema (demonios)
Procesos de login (uno por terminal)

Tras la autenticacin, el proceso login se convierte en


shell
Sistemas Operativos: Captulo I

13

Contenido
Qu es un sistema operativo?
Arranque del sistema operativo

Componentes y estructura de un sistema


operativo

Activacin del sistema operativo


Interfaz del programador
Interfaz del usuario
Historia y evolucin

Sistemas Operativos: Captulo I

14

Componentes del SO

Usuarios
Programas de usuario

Shell 1

Win 32

Shell 2
POSIX

Gestin de Seguridad Comunicac.


Gestin de Gestin de Gestin de
y
archivos y
y
procesos memoria
la E/S
directorios proteccin sincroniz.

Ncleo
Hardware

Sistemas Operativos: Captulo I

15

Varias API

Sistema
operativo

Estructura del sistema operativo


Sistemas operativos monolticos
Sistemas operativos estructurados
Sistemas por capas
Modelo cliente-servidor

Sistemas Operativos: Captulo I

16

Estructura cliente-servidor

Procesos
cliente

API

API

Procesos
servidores

Servidor de
Servidor
Servidor de Servidor de Servidor de archivos y Servidor de
de
Seguridad
procesos memoria
la E/S
directorios
Comunicac.

Microncleo
Hardware

Sistemas Operativos: Captulo I

17

Modo usuario

Modo ncleo

Gestin de procesos
Un proceso es un programa en ejecucin.
Un proceso necesita recursos, tales como UCP, memoria,
ficheros, etc., para llevar a cabo su tarea.
El SO tiene la responsabilidad de gestionar los siguientes
aspectos de procesos:
Creacin y destruccin.
Suspensin y reanudacin.
Asignacin y mantenimiento de los recursos del
proceso.
Proporcionar mecanismos de sincronizacin y
comunicacin.
Gestionar los interbloqueos.
Sistemas Operativos: Captulo I

18

Elementos de un proceso

Cdigo
y
datos

Registros generales

Mapa
de
E/S

PC

BCP

SP
Estado
Mapa de
Memoria

Sistemas Operativos: Captulo I

19

Servicios de procesos
Crear un procesos
A partir de un proceso padre (UNIX)
A partir de un archivo ejecutable (Windows NT)
Ejecutar un proceso
Terminar la ejecucin de un proceso
Cambiar el programa que ejecuta un proceso

Sistemas Operativos: Captulo I

20

Gestin de memoria
Memoria: vector enorme de palabras o bytes, cada uno
con su propia direccin.
Compartido por UCP y dispositivos E/S.
Voltil: pierde su contenido si el sistema falla.
El SO tiene la responsabilidad de gestionar los siguientes
aspectos de la memoria:
Mantener un mapa de las partes de memoria en uso y
saber quin las est usando.
Decidir qu procesos se deben cargar, y dnde,
cuando hay memoria disponible.

Sistemas Operativos: Captulo I

21

Servicios de gestin de memoria


Asignar y liberar espacio de memoria cuando sea
necesario.
Ofrecer servicios para que los procesos puedan
compartir memoria.
Solicitar memoria
Liberar memoria
Compartir memoria

Sistemas Operativos: Captulo I

22

Comunicacin y sincronizacin entre procesos

Proceso
de Usuario

Proceso
de Usuario

SO

UN COMPUTADOR

Sistemas Operativos: Captulo I

Proceso
de Usuario

Proceso
de Usuario

SO

SO

DOS COMPUTADORES

23

Servicios de comunicacin y sincronizacin


Servicios de comunicacin
Crear el mecanismo de comunicacin
Enviar datos a un proceso
Recibir datos de un proceso
Destruir el servicio de comunicacin
Servicios de sincronizacin
Crear el mecanismo de sincronizacin
Bloquear un proceso hasta que ocurra un evento
Despertar a un proceso bloqueado
Destruir el mecanismo de sincronizacin
Sistemas Operativos: Captulo I

24

Tipos de comunicacin
Comunicacin sncrona
Los dos procesos han de ejecutar los servicios de
comunicacin al mismo tiempo
Proceso B

Avanza la ejecucin

Proceso A
Proceso B
Proceso A

enviar
Espera

recibir
recibir

enviar

El proceso A espera al B

Espera

El proceso B espera al A

Comunicacin asncrona
Los dos procesos no tiene que ejecutar los servicios de
comunicacin al mismo tiempo
Sistemas Operativos: Captulo I

25

Gestin de E/S
El gestor de E/S est formado por:
Un sistema global de almacenamiento intermedio en
memoria.
Manejadores genricos, uno por cada clase, de
dispositivos.
Manejadores especficos para cada dispositivo.
Almacenamiento secundario no voltil en dispositivos
rpidos de E/S (discos, NAD, etc.) como respaldo de la
memoria.

Sistemas Operativos: Captulo I

26

Servicios de E/S
El SO tiene la responsabilidad de gestionar los siguientes
aspectos de la E/S y el almacenamiento secundario:
Traducir peticiones a formato de manejador.
Copiar memoria de/a memoria a/de controlador.
Controlar operaciones por DMA.
Controlar dispositivos de E/S serie: teclado, ratn, etc.
Asignacin y liberacin de espacio.
Planificacin de accesos a los dispositivos.
Servicios orientados a caracteres
Impresoras, terminales
Servicios orientados a bloques
La operacin de E/S se hace sobre un bloque de
informacin de un nmero fijo de caracteres
Discos
Sistemas Operativos: Captulo I

27

Gestin de archivos y directorios


Archivo: conjunto de informacin lgicamente relacionada
y definida por su creador.
Directorio: conjunto de identificadores lgicos de archivos
y su relacin con identificadores internos del SO.
Archivos frecuentes: programas (fuentes y ejecutables) y
datos.
El SO tiene la responsabilidad de gestionar los siguientes aspectos
del servicio de archivos:
Creacin y borrado de archivos y directorios.
Primitivas para manipular archivos y directorios.
Proyectar los ficheros sobre almacenamiento secundario.
Hacer respaldo de archivos sobre dispositivos estables y no
voltiles.
Sistemas Operativos: Captulo I

28

Seguridad y proteccin
Proteccin: controlar accesos a los recursos de usuario y
sistema.
El servidor de proteccin debe:
Distinguir entre uso autorizado y no autorizado.
Especificar los controles de acceso a llevar a cabo.
Proporcionar mtodos de control de acceso.
Seguridad: proteger al sistema de un uso indebido.
El servidor de seguridad debe:
Autenticar a los usuarios.
Evitar amenazas al sistema (gusanos, virus, piratas,
fuego, etc.)
Evitar la intercepcin de comunicaciones: cifrado,
canales seguros, etc.
Sistemas Operativos: Captulo I

29

Contenido
Qu es un sistema operativo?
Arranque del sistema operativo
Componentes y estructura de un sistema operativo

Activacin del sistema operativo


Interfaz del programador
Interfaz del usuario
Historia y evolucin

Sistemas Operativos: Captulo I

30

Activacin de los servicios del SO


Fuentes de las peticiones
Mandatos de los usuarios interpretados por el shell
Llamadas al sistema emitidas por los programas
Interrupciones producidas por los perifricos
Condiciones de excepcin o error del hardware
Forma de solicitar los servicios
Por llamada problema de seguridad
Por interrupcin o trap
Rutina de biblioteca:
Instrucciones de mquina que prepara la llamada al SO

Sistemas Operativos: Captulo I

31

Servicios del SO: llamadas al sistema


Interfaz entre aplicaciones y SO.
Generalmente disponibles como funciones en
ensamblador.
Actualmente en otros lenguajes de alto nivel (C, Bliss,
).
Servicios tpicos del sistema operativo
Gestin de procesos
Gestin de procesos ligeros
Gestin de seales, temporizadores
Gestin de memoria
Gestin de ficheros y directorios

Sistemas Operativos: Captulo I

32

Paso de los parmetros a las llamadas


Tres mtodos genricos para pasar parmetros a las
llamadas al sistema:
En registros.
En una tabla de memoria, cuya direccin se pasa al SO
en un registro.
Poner los parmetros en la pila del programa y dejar
que el SO los extraiga.
Cada SO proporciona sus propias llamadas al sistema:
Estndar POSIX en UNIX y LINUX.
Win32 en Windows NT.

Sistemas Operativos: Captulo I

33

Servicios del SO
Los servicios se programan mediante sentencias de un
lenguaje (p.e. C)
Estas sentencias son como llamadas a funcin
Se convierten, mediante una rutina de biblioteca de
sistemas en un conjunto de instrucciones de mquina que
terminan con una instruccin de trap
El trap, como toda interrupcin es tratada por el SO
El SO realiza el servicio pedido y devuelve un valor

Sistemas Operativos: Captulo I

34

Contenido

Qu es un sistema operativo?
Arranque del computador
Componentes y estructura de un sistema operativo
Activacin del sistema operativo

Interfaz del programador


Interfaz del usuario
Historia y evolucin

Sistemas Operativos: Captulo I

35

Sistemas Operativos: Captulo I

36

Sistemas Operativos: Captulo I

37

Interfaz del programador


Esta interfaz recupera la visin que como mquina
extendida tiene el usuario del sistema operativo
Interfaces seguidas:
POSIX
Win32

Sistemas Operativos: Captulo I

38

Estndar POSIX
Interfaz estndar de sistemas operativos de IEEE.
Objetivo: portabilidad de las aplicaciones entre diferentes
plataformas y sistemas operativos.
NO es una implementacin. Slo define una interfaz
Diferentes estndares
1003.1 Servicios bsicos del SO
1003.1a
Extensiones a los servicios bsicos
1003.1b
Extensiones de tiempo real
1003.1c
Extensiones de procesos ligeros
1003.2 Shell y utilidades
1003.2b
Utilidades adicionales
Sistemas Operativos: Captulo I

39

Win32
Define los servicios ofrecidos por los sistemas Windows
95/98, Windows NT, Windows 2000, Windows Vista,
Windows 7
No es un estndar
API totalmente distinto a POSIX

Sistemas Operativos: Captulo I

40

Caractersticas de Win32
Los recursos se referencian mediante manejadores
Nombres de funciones largos y descriptivos:
GetFileAttributes
CreateNamedPipe
Dispone de tipos de datos predefinidos
BOOL
DWORD
TCHAR
Las funciones devuelven en general true en caso de
xito y false en caso de error

Sistemas Operativos: Captulo I

41

Contenido

Qu es un sistema operativo?
Arranque del computador
Componentes y estructura de un sistema operativo
Activacin del sistema operativo
Interfaz del programador

Interfaz del usuario


Historia y evolucin

Sistemas Operativos: Captulo I

42

Interfaz de usuario
Funciones:
Manipulacin de archivos y directorios
Herramientas de desarrollo de aplicaciones
Comunicacin con otros sistemas
Informacin de estado
Configuracin de la propia interfaz y entorno
Intercambio de datos entre aplicaciones
Control de acceso
Sistema de ayuda interactivo
Tipos
Interfaces alfanumricas (interpretes de mandatos)
Interfaces grficas
Sistemas Operativos: Captulo I

43

Intrprete de mandatos
Programa cuya funcin es obtener los mandatos del
usuario y ordenar su ejecucin al sistema operativo.
Hay dos tipos bsicos:
Intrpretes de mandatos internos
Intrpretes de mandatos externos
Casi todos los mandatos son sentencias de control para
los gestores del SO descritos (procesos, E/S, ficheros,
proteccin y comunicaciones).
Puede haber mltiples intrpretes de mandatos sobre el
mismo SO -> la visin del mismo SO cambia segn el
usado. Ejemplo: POSIX sobre Windows o Win32 sobre
LINUX.
Sistemas Operativos: Captulo I

44

Contenido

Qu es un sistema operativo?
Arranque del computador
Componentes y estructura de un sistema operativo
Activacin del sistema operativo
Interfaz del programador
Interfaz del usuario

Historia y evolucin

Sistemas Operativos: Captulo I

45

Sistemas Operativos: Captulo I

46

Anda mungkin juga menyukai