2. 2 /58
• Los Sistemas Operativos son programas para la
administración eficiente de los recursos del
computador.
• Controla y coordina el uso de hardware entre varios
programas de aplicación
• Un sistema operativo (SO) es un conjunto de
programas o software destinado a permitir la
comunicación del usuario con un ordenador y
gestionar sus recursos de manera cómoda y
eficiente. Comienza a trabajar cuando se enciende el
ordenador, y gestiona el hardware de la máquina
desde los niveles más básicos.
Repaso: DEFINICION
3. 3 /58
Funciones de Sistema Operativo
• Administrador de recursos:
– Gestión y asignación de recursos del computador
• Programa de control:
– Controla la ejecución de los programas de usuario y
las operaciones de los dispositivos de E/S
• Núcleo:
– El único programa que ejecuta siempre
(por debajo y anterior a cualquier otro programa)
• Máquina virtual:
– Extiende y enmascara la funcionalidad del hardware
4. 4 /58
Características
• Un Sistema Operativo es un programa que actúa como
un intermediario entre el computador y el usuario.
• Consta de un conjunto de rutinas (algoritmos) para
gestionar los recursos del computador, como son: el
Procesador, la memoria, los Dispositivos de E/S y los
archivos
• El Sistema Operativo:
– Es un administrador de los recursos del computador.
– Controla la ejecución de los programas de los usuarios.
– Controla por ejemplo el acceso concurrente a los recursos.
5. 5 /58
Monotarea: Si solamente puede ejecutar un programa (aparte de
los procesos del propio S.O.) en un momento dado. Una vez que
empieza a funcionar un programa, continuará haciéndolo hasta su
finalización o interrupción.
Multitarea: Si es capaz de ejecutar varios programas al mismo
tiempo. Este tipo de S.O. normalmente asigna los recursos
disponibles (CPU, memoria, periféricos) de forma alternativa a los
programas que los solicitan, de manera que el usuario percibe que
todos funcionan a la vez.
Administración de tareas
6. 6 /58
Monousuario: Si sólo permite ejecutar los programas de un
usuario al mismo tiempo.
Multiusuario: Si permite que varios usuarios ejecuten
simultáneamente sus programas, accediendo a la vez a los
recursos del ordenador. Normalmente estos SS.OO. utilizan
métodos de protección de datos, de manera que un programa no
pueda usar o cambiar los datos de otro usuario.
Administración de usuarios:
7. 7 /58
Centralizado: Si permite utilizar los recursos de un solo ordenador.
Distribuido: Si permite utilizar los recursos (memoria, CPU, disco,
periféricos...) de más de un ordenador al mismo tiempo.
Manejo de recursos:
8. 8 /58
Objetivos del Sistema Operativo
• Objetivos del sistema operativo:
– Facilitar el uso al usuario (interfaz)
– Facilitar la programación al programador (máquina virtual extendida)
– Ejecutar programas eficientemente (gestor de recursos)
• Conveniencia. Proveer un medio ambiente al usuario
para ejecutar sus programas. por ejemplo en
computadoras personales.
• Eficiencia. Incrementar la productividad de los
recursos de producción, como son: el HD del SC y el
usuario del SC. por ejemplo en grandes sistema de
computo
10. 10 /58
Componentes del SO
• Básicos:
1. Gestor de procesos
2. Gestor de memoria
3. Gestor de E/S
4. Gestor del almacenamiento secundario
• Servidores:
5. Servidor de ficheros
6. Servidor de protección y seguridad
7. Servidor de comunicaciones por red
• Utilidades:
8. Intérprete de mandatos
9. Programas de sistema
11. 11 /58
1. Gestor de procesos
• Un proceso es un programa en ejecución
• Es la unidad que consume recursos:
– UCP, memoria, ficheros, etc.
• El SO gestionar lo siguiente de los procesos:
– Creación y destrucción
– Suspensión y reanudación
– Mecanismos de comunicación y sincronización
– Asignación de los recursos al proceso
12. 12 /58
2. Gestor de memoria
• Memoria:
– Vector enorme de palabras o bytes (direcciones)
– Compartida por UCP y dispositivos E/S
– Volátil: pierde su contenido sin alimentación
• El SO gestiona lo siguiente de la memoria:
– Qué partes están en uso y quién las está usando
– Qué procesos se deben cargar, y dónde
– Asigna y libera espacio cuando se requiere
13. 13 /58
3. Gestor de entrada/salida
• El gestor de E/S está formado por:
– Almacenamiento intermedio en memoria (caché)
– Manejadores genéricos, uno por cada clase de
dispositivo
– Gestión individualizada por dispositivo existente
• El SO gestiona lo siguiente de la E/S:
– Traduce peticiones a formato de manejador
– Copia memoria de/hacia el controlador
– Controla transferencias por DMA
14. 14 /58
4. Gestión del almacenamiento
secundario
• Dispositivos rápidos de E/S (discos)
– Vector enorme de “bloques”
– Almacenamiento no volátil
– Usado como respaldo de memoria principal
• El SO gestiona lo siguiente del almacenamiento
secundario:
– Asignación y liberación de espacio
– Planificación de accesos a los discos
15. 15 /58
5. Servidor de ficheros y directorios
• Fichero:
– Conjunto de información lógicamente relacionada
• Directorio:
– Fichero que contiene asociaciones entre nombres
de fichero e identificadores internos del SO
• El SO gestiona lo siguiente de los ficheros:
– Creación y borrado de ficheros y directorios
– Primitivas para manipularlos
– Proyectar los ficheros en memoria
– Respaldar los ficheros en dispositivos no volátiles
16. 16 /58
6. Servidor de protección y seguridad I
• Protección:
– Controlar el acceso a los recursos por parte de los
procesos (de los usuarios)
• El servidor de protección debe:
– Distinguir entre uso autorizado y no autorizado
– Especificar los controles de acceso a llevar a cabo
– Proporcionar métodos de control de acceso
17. 17 /58
6. Servidor de protección y seguridad II
• Seguridad:
– Proteger al sistema de un uso indebido
(fraudulento)
• El servidor de seguridad debe:
– Autenticar a los usuarios
– Evitar amenazas al sistema
(gusanos, virus, piratas, fuego, etc.)
– Evitar intercepción de comunicaciones
(cifrado, canales seguros, etc.)
18. 18 /58
7. Servidor de comunicaciones
• Sistema en red o distribuido:
– Conjunto de procesadores que no comparten
memoria
– Conectados mediante una red de comunicación
• El servidor de comunicaciones debe:
– Proporcionar mecanismos para comunicación local y
remota entre procesos
– Para distintos tipos de redes
(Ethernet, ATM, telefónica, etc.)
• Responsabilidad del SO:
– Resolución de nombres, enrutamiento, conexiones y
control de flujo
19. 19 /58
8. Intérprete de mandatos
• Programa cuya función es obtener los mandatos del
usuario y lanzar su ejecución
• Hay dos tipos básicos:
– Intérprete de mandatos en línea en modo texto, como
el shell de UNIX y LINUX
– Interfaz gráfico de usuario,
como el de Windows y X-Windows
• Puede haber múltiples intérpretes de mandatos sobre el
mismo SO
– La visión del mismo SO cambia según el usuario
(POSIX sobre Windows NT o Win32 sobre LINUX)
20. 20 /58
9. Programas de sistema
• Proporcionan un entorno adecuado para el desarrollo y
ejecución de programas
• Son la visión del SO que tienen muchos usuarios, y no
la de las llamadas al sistema
• Categorías:
– Manipulación de ficheros: copia, mover, ...
– Información de estado: monitores, ...
– Programación: compiladores, depuradores, …
– Carga y ejecución: cargador, …
– Comunicaciones: telnet, ftp, …
– Aplicaciones: servidores BD, navegadores, ...