clase01C-2015
-
Upload
miguel-angel-castillo -
Category
Documents
-
view
212 -
download
0
description
Transcript of clase01C-2015
Ing. CIP Milton Chumbes [email protected]
UNIVERSIDAD SAN PEDRO FILIAL LIMA-CEAIS BARRANCA
FACULTAD DE INGENIERIAEscuela Académico Profesional de Ingeniería Informática y de Sistemas
Sistemas Operativos
Componentes de un Sistema Informático
Sistemas Operativos
Componentes de un Sistema Informático
Usuarios
Programas del sistema y de aplicaciones (compiladores, ensambladores, editores de texto, sistemas de base de
datos, etc.)
Sistema Operativo
Hardware de la Computadora
Componentes de una Computadora
Dispositivos
Controladoras de Dispositivos
Recurso Compartido Memoria
CPUControlador de
discos
Discos
Controladores USB
Mouse Teclado Impresora
Adaptador de Gráficos
Monitor
Sistemas Operativos - Concepto
Sistema
Operativo
Sirve de intermediario entre los programas de
aplicación, las utilidades y usuarios por una parte, y el
hardware del sistema informático por otra
Es el programa de sistema más importante. Oculta al programador los detalles
del hardware y proporciona una interfaz cómoda para
utilizar el sistema informático
Actúa como mediador facilitándole al programador
y a los programas de aplicación el acceso y uso
de todas esas características o servicios
Sistemas Operativos como Interfaz
Sistema Operativo como Interfaz
Usuario/Computador
Creación de Programas
Ejecución de Programas
Acceso a dispositivos de Entrada/Salida
Acceso controlado a los archivos
Acceso al Sistema
Detección y respuesta a errores
Estadísticas de utilización recursos y parámetros de
rendimiento
Usuario
Computadora
Sistema Operativo
Sistemas Operativos – Administrador
Sistema Operativo
como Administrador de
Recursos
• Las computadoras modernas constan de procesadores, memorias, relojes, discos, terminales, unidades de cinta magnética, interfaces de red, etc. El trabajo del sistema operativo consiste en ofrecer una distribución ordenada y controlada de los procesadores, memorias y dispositivos de Entrada/Salida entre los diversos programas que compiten por ellos.
• En este caso una parte del sistema operativo está en la memoria principal. Se le conoce como núcleo o kernel. Contiene las funciones más utilizadas del sistema operativo
Sistemas Operativos – Administrador
Sistema Informático
Sistema Operativo como un Administrador de Recursos
Impresora,Teclados
Cámaras digitalesScanner
Memoria
Software de Sistema
Operativo
Programasy
Datos
Controlador de E/S
Controlador de E/S
Controlador de E/S
Procesador Procesador
S.O.
Programasy
Datos
Almacenamiento
• Un sistema operativo hace que un computador sea más cómodo de utilizarComodidad
• Un sistema operativo permite que los recursos de un sistema informático se aprovechan de una manera más eficiente
Eficiencia
• Un sistema operativo debe construirse de modo que permita el desarrollo efectivo, la verificación y la introducción de nuevas funciones en el sistema, sin interferir en los servicios que brinda.
Capacidad de Evolución
Sistemas Operativos – Objetivos
Gestión de
Memoria
Descripción y control
de procesos
Concurrencia
Gestión de Archivos
RedesSeguridad
Gestión de Entrada y
Salida
Planificación
Sistemas Operativos – Funciones
• Debe asignar recursos a procesos, permitir el intercambio de información entre ellos, proteger los recursos de un proceso del resto y sincronizarlos
Descripción y Control de Procesos
• Debe asegurar que los procesos se intercalan exitosamente en el tiempo dando la apariencia de una ejecución simultanea
Control de Concurrencia
• Se refiere a cargar y descargar bloques desde y hacia el almacenamiento secundario de una forma optima
Gestión de Memoria
• Debe repartir los recursos del sistema entre las necesidades potencialmente competitivas de múltiples procesos, teniendo en cuenta niveles de prioridad y plazos para inicio y terminación de procesos
Planificación
Sistemas Operativos – Funciones
• Debe planificar las múltiples solicitudes de dispositivos de entrada y salida para obtener ventajas de las características de los mismos y mejorar los tiempos de respuesta
Gestión de Entrada y Salida
• Facilita la operación de los sistemas de gestión para la localización de archivos que apoyen la ejecución de programas, el almacenamiento de archivos a largo plazo y accesos posteriores por parte de programas y usuarios
Gestión de Archivos
• Debe facilitar la protección de los datos y recursos contra la revelación, garantizar autenticidad de mensajes y datos, y proteger los sistemas de ataques en la red
Seguridad
• Debe proporcionar funciones de intercambio de datos entre máquinas, capacidad de agrupar máquinas y lograr así alta disponibilidad, gran rendimiento y capacidad para gestionar procesos en un ambiente distribuido
Redes
Sistemas Operativos – Funciones
S.O. – Funciones Típicas del Núcleo
Gestión de Procesos• Creación y terminación de los procesos• Planificación y expedición de los procesos• Cambio de procesos• Sincronización de procesos y soporte para la comunicación entre procesos• Gestión de los bloques de control de procesos
Gestión de Memoria• Asignación de espacios de direcciones a los procesos• Intercambio• Gestión de páginas y segmentos
Gestión de E/S• Gestión de buffers• Asignación de canales de E/S y dispositivos a los procesos
Funciones de Soporte• Tratamiento de interrupciones• Contabilidad• Supervisión
Sistemas Operativos – Estructura
Servicios de un Sistema Operativo• Interfaz de usuario
• Interfaz de línea de comandos• Interfaz de procesos por lotes (comandos
introducidos en archivos)• Interfaz gráfica de usuario
• Ejecución de programas• Operaciones de Entrada/Salida• Manipulación del Sistema de Archivos• Comunicaciones
• De procesos en una misma computadora• De procesos ejecutándose en otra computadora
• Detección de errores
Sistemas Operativos – Estructura
Llamadas al Sistema• Las llamadas al sistema
proporciona una interfaz con la cual se puede invocar los servicios que el sistema operativo ofrece.
• Estas llamadas son rutinas escritas en lenguajes como C o C++, aunque algunas de la bajo nivel (como las que interactúan con el hardware) pueden necesitar escribirse con lenguaje ensamblador
Control de Proceso
Manipulación de archivos
Manipulación de dispositivos
Mantenimiento de información
Comunicaciones
Categorías de
llamadas al sistema
S.O. – Estructura – Tipos de Llamas al Sistema
Control de Procesos• Terminar, abortar• Cargar, ejecutar• Crear procesos, terminar procesos• Obtener atributos de proceso, definir atributos del proceso• Esperar para obtener tiempo• Esperar suceso, señalar suceso• Asignar, liberar memoria
Administración de Archivos• Crear archivos, borrar archivos• Abrir, cerrar• Leer, escribir, reposicionar• Obtener atributos de archivo, definir atributos de archivo
S.O. – Estructura – Tipos de Llamas al Sistema
Administración de Dispositivos• Solicitar dispositivo, liberar dispositivo• Leer, escribir, reposicionar• Obtener atributos de dispositivo, definir atributos de dispositivo• Conectar y desconectar dispositivos lógicamente
Mantenimiento de Información• Obtener la hora o la fecha, definir la hora o la fecha• Obtener datos del sistema, establecer datos del sistema• Obtener los atributos de procesos, archivos o dispositivos• Establecer los atributos de procesos, archivos o dispositivos
Comunicaciones• Crear, eliminar conexiones de comunicaciones• Enviar, recibir mensajes• Transferir información de estado• Conectar y desconectar dispositivos remotos
Estructura Sistemas Operativos – API
Application Programming Interface (API)• Las API especifica un conjunto de
funciones que el programador de aplicaciones puede usar, indicándole los parámetros que hay que pasar a cada función y los valores de retorno que el programador debe esperar
Estructura Sistemas Operativos – Ejemplo DOS
Controladores de dispositivos ROM - BIOS
Controladores de dispositivo MS-DOS
Programa residente en memoria
Programa de Aplicación
Estructura Sistemas Operativos – Ejemplo UNIX
Usuario
Shells y comandos Compiladores o interpretes Biblioteca de sistema
Interfaz de llamadas al sistema con el kernel
Señales, gestión de terminales, sistema de E/S
de caracteres, controladores de terminal
Sistema de archivos, intercambio, sistema de E/S de bloqueo, controladores
de disco y cinta
Planificación de CPU, sustitución de páginas,
paginación bajo demanda, memoria virtual
Interfaz del kernel con el hardware
Controladores de terminales, terminales
Controladores de dispositivos, discos y cintas
Controladores de memoria, memoria física
Evolución Sistemas Operativos – Proceso en Serie
En los primeros computadores (finales de los
40s a mediados de los 50s) el programador interactuaba
directamente con el hardware; no había sistema
operativo
Los programa se cargaban a
través del dispositivo de entrada (lector de tarjeta por
ejemplo)
A este modo de operación se le conocía como
proceso en serie
Dos problemas principales• Planificación: se manejaban
tiempos de reserva para uso exclusivo de la máquina (múltiplos de media hora)
• Tiempo de preparación: un programa sencillo, llamado trabajo, cargaba un compilador y un programa en lenguaje de alto nivel (programa fuente) en la memoria, guardaba el programa compilado y luego cargaba y montaba el programa objeto junto a las funciones principales. Si se producía un error el usuario debería repetir este proceso
Evolución Sistemas Operativos – Proceso x Lotes
Surgió a mediados de los 50s y se mantuvo en
los 60s
La idea central de
este esquema es el uso de un elemento de
SW conocido
como Monitor
Con el uso de este SO los
usuarios ya no tenia acceso
directo al HW. El usuario
entregaba los trabajos en
cintas o tarjetas al operador quien los
agrupaba en lotes
Cada programa se construía de
manera que se volviera al monitor
al terminar su procesamiento para
que el monitor comenzara a cargar automáticamente el siguiente programa
Tratamiento de Interrupciones
Controladores de dispositivos
Secuenciamiento de trabajos
Interprete del lenguaje de control
Zona del programa de usuario
Monitor
Disposición de memoria con un monitor residente
Evolución Sistemas Operativos – Proceso x Lotes con Multiprogramación
Aun con secuenciami
ento automático de trabajos
ofrecido x un SO por lotes,
el procesador
pasa desocupado
con frecuencia
El problema es que los
dispositivos de E/S son
lentos comparados
con el procesador
Los SO con multiprogramación son mas complejos a los de mono
programación
Deben haber en memoria
principal varios trabajos listos
para ejecutarse. Además el procesador
debe planificar cual va a ejecutar
Evolución Sistemas Operativos – Sistema de Tiempo Compartido
Es decir, el tiempo de procesador se comparte entre varios usuarios
A diferencia de la multiprogramación esas tareas pueden, en los sistemas de tiempo compartido, ser
iniciadas por diversos usuarios
Igual que un multiprogramación el procesador gestiona varias tareas por lotes en forma
simultanea
Hoy en día, los servicios de computación interactiva suelen llevarse a cabo en un
servidor dedicado
Para muchas tareas conviene suministrar un modo en que el usuario interactúe directamente con la computadora
Multiprogramación por
lotes
Tiempo compartido
Objetivo principal
Maximizar la utilización del procesador
Minimizar el tiempo de respuesta
Origen de instrucciones al sistema operativo
Instrucciones de un lenguaje de control de
trabajos incluidas en el
trabajo
Ordenes dadas en la terminal
Tabla: Multiprogramación por lotes frente a tiempo compartido
Sistemas Operativos – Logros Principales de la Evolución
Cinco avances teóricos
significativos
Gestión de la Memoria
Procesos
Seguridad y protección de la información
Planificación y gestión de recursos
Estructura del sistema