Logo Studenta

Estructura Clase10

¡Estudia con miles de materiales!

Vista previa del material en texto

Objetivos de la Clase 10 (16/10/2013)
 
1. Fecha de exámenes: 17/10,30/10,06/11,20/11,28/11,05/12
2. Libro “Introducción a los Sistemas Operativos” de 
Alcalde/Morera/Perez/Campanero
3. Conceptos Básicos
Desarrollo de los temas de la presente Clase
Bibliografía Cap. 1 de Introducción a los Sistemas Operativos Alcalde/Morera/ 
Perez/Campanero )
Introducción a los Sistemas Operativos
Conceptos Básicos
 Concepto de Sistema Operativo
o Computadora: Elemento físico donde se centra toda la 
actividad informática
o Computadora: maquina de origen electrónico con una o 
más unidades de proceso y equipos periféricos 
controlados por programas almacenados en su memoria 
que pueden realizar una gran variedad de trabajos
o Componente físico denominado Hardware
o Maquina programable: información que indique como 
utilizar los recursos, para el trabajo. Esta seria el soporte 
lógico o Software
o Sistema Operativo es parte del Software
o Sistema Operativo es el soporte lógico que controla 
el funcionamiento del equipo físico
o Desde el Punto de vista del usuario: Un SO es un 
Conjunto de programas y funciones que ocultan 
detalles del hardware, ofreciendo al usuario vía 
sencilla y flexible de acceso al mismo
 Ocultación tiene dos objetivos:
• Abstracción: tendencia actual del software 
haciendo fácil su uso ocultando la gestión 
interna
• Seguridad: necesario restringir determinadas 
operaciones a los usuarios creando varios 
niveles de privilegio para proteger 
información y procesos
• Figura 1.1
o Desde el Punto de vista de Gestor de Recursos: Un SO es 
el administrador de recursos ofrecidos por el 
hardware para alcanzar un eficaz rendimiento de 
los mismos.
 Recursos fundamentales son:
• Procesador
1
• Memoria
• Entrada/salida
• Información
 Figura 1.2
o Los SO construyen recursos de alto nivel -> VIRTUALES, 
en base a encubrir los existentes de bajo nivel -> 
FISICOS
o Desde punto de vista usuario o proceso maquina física es 
convertida por el SO en maquina virtual o maquina 
extendida que ofrece muchas mas funciones y más 
cómoda de utilizar
o Figura 1.3
o SISTEMA: Conj. de personas, maquinas y cosas que, 
ordenadamente relacionadas entre sí, contribuyen a 
lograr un determinado objetivo
o OPERATIVO: personas, maquinas y cosas que, trabajan 
conjuntamente y consiguen el objetivo deseado
o SISTEMA OPERATIVO: Conj. de programas que 
ordenadamente relacionados entre si, contribuyen a que 
la computadora lleve a cabo correctamente su trabajo
o Los SO cubren dos objetivos fundamentales.
 Facilitar el trabajo al usuario
 Gestionar eficientemente los recursos
o Dos tipos de Programas
 Programas del sistema: manejan el hardware, 
controlan los procesos, hacen más cómodo entorno 
de trabajo, etc.
 Programas de aplicación: resuelven un problema 
concreto de los usuarios y no son suministrados con 
el SO
 Evolución de los SO
o Primeras Computadoras
 1ra. Computadora electromecánica MARK-I, 
construida por H.H.Aiken (Univ.Harvard) en 1944
 Mauchly y Eckert (Univ.Pensilvania) 1ra. 
Computadora electrónica a válvulas de vacío ENIAC
 Estas maquinas eran gestionadas por el usuario 
desde un tablero enchufable, poco SO, y lenguaje 
de maquina. Luego por consola donde usuario de a 
uno la operaba. Solo monoprogramación. Programa 
se introducía a través de lectora de tarjetas (1950)
o Accesos por operador
 1955 -> separación de las distintas tareas que se 
realizaban en entornos informáticos: puestos de 
programadores, operadores y personal 
mantenimiento
2
 Operador: controlar sistema, cargar programas, 
obtener resultados
 Procedimiento de trabajo: programadores daban a 
operador trabajos a realizar, este los ejecutaba uno 
detrás de otro y los resultados se los entregaba a 
cada programador
 2da. Solución: operador agrupaba trabajos con 
necesidad de recursos físicos y lógicos similares y 
los ejecutaba como si fuesen un bloque, 
obteniéndose considerable ahorro de tiempo.
o Secuencia automática de trabajos
 Trabajo operador era bastante mecánico
 Pequeño programa que transfería automáticamente 
el control de un trabajo a otro -> Monitor 
Residente -> primer SO, tenia las siguientes 
partes:
• Secuenciador automático de trabajos
• Interprete de las tarjetas de control
• Controladores de software de entrada /salida 
(drivers)
• Paquete de tarjetas contenía el programa, los 
datos y tarjetas de control con indicaciones 
necesarias para que el monitor controlase la 
situación en cada momento
• Utilizaban el lenguaje de control de trabajos 
(JCL)
• Caracter perforado en 1ra. Columna en 
tarjetas de control
o Mejora del rendimiento
 Mucho tiempo procesador ocioso debido a la 
diferencia de velocidad de este con los dispositivos 
de E/S
 Off-line
• Perforar programas en tarjetas
• Estas leídas por lectora y grabadas en cinta 
magnética directamente
• Esta cinta se pasaba a la computadora en 
bloque para la ejecución de los programas 
grabándose los resultados en una nueva cinta
• Por ultimo cinta de resultados se volcaba 
sobre una impresora
• Por su lentitud el trabajo de tarjeta a cinta y 
de cinta a impresora se realizaban Off-line 
con lo cual permitían que la computadora 
realizara otros trabajos
3
• Ventajas: varias lectoras produciendo cintas 
de entrada lo que mantenía ocupado el 
procesador mayor tiempo
• Desventajas: usuario tenia que esperar que 
se llenara una cinta para que su trabajo sea 
procesado
 Buffering
• Para mejorar tiempo que se pierde en carga 
de cintas es utilizar una memoria intermedia 
-> buffer donde la cinta va grabando datos 
hasta que se llena, volcándose estos en la 
memoria de una vez, y mientras el 
procesador realiza operaciones con los datos 
recibidos, en paralelo se vuelve a cargar el 
buffer
• Esta forma de trabajo se denomina buffering
• El buffering es soportado por el programa 
monitor
• Técnicas de buffering necesitan control muy 
exhaustivo de cuando esta lleno o no el buffer 
a través de interrupciones
• Si dispositivos de E/S son muy rápidos no 
tiene sentido el buffering
• Aparecieron técnicas de Acceso Directo a 
Memoria (DMA) para evitar intervención del 
procesador
 Spooling
• Con aparición del disco magnético como 
dispositivo de almacenamiento masivo de 
información con acceso directo desapareció 
problema de las cintas magnéticas de 
tratamiento secuencial desde principio hasta 
su final mientras discos leídos y escritos 
simultáneamente y en cualquier punto de su 
superficie
• Técnicas de SPOOL permiten que salida de un 
programa se escriba en un buffer y llevada a 
un disco magnético en espera de poder ser 
enviada a una impresora o cualquier otro 
periférico de salida
• Procesador puede estar ejecutando un trabajo 
mientras se imprimen los resultados de otro 
proceso anterior
• Figura 1.12
• Sistema de SPOOL como cola de archivos en 
espera de que llegue su turno para ser 
impresos, grabados en cinta, etc.
4
• Cada dispositivo de E/S tiene su propio 
sistema de SPOOL
• Diferencia con Buffering que se solapan 
operaciones de E/S de unos trabajos con el 
proceso de otros.
o Multiprogramación
 Ejecutar varios programas simultáneamente
 Trabajos realizados en computadora por ocupación 
tiempo del procesador y dispositivos periféricos 
pueden ser de dos tipos:
• Trabajos limitados por proceso
• Trabajos limitados por operaciones de E/S
• Figura 1.14
 Figura 1.15
 Este sistema trae diversos problemas:
• Acceso a procesador debe seguir algún tipo 
de reglas o políticas que permitan ejecución 
de todos los trabajos
• Administración de la memoria, compartida por 
todos los trabajos
• Varios trabajos pueden necesitar utilizar un 
recurso al mismo tiempo
• En estos SO surge concepto de planificar el 
procesador, nueva estructura interna de los 
mismos con un núcleo central (kernel) 
compuesto de rutinas para la gestión de la 
memoria, el procesador, los dispositivos y 
resto de recursos disponibles
 Proceso por lotes (Batch)
• No precisa intervención del usuariodurante 
ejecución de los trabajos
• Trabajos largos que van solicitándose y 
entrando en una cola de espera y procesador 
va tomando en un grupo determinado, 
realizándolos en paralelo
 Tiempo compartido (time sharing)
• Dado que multiprogramación por lotes no 
permitía dialogo entre usuario y proceso 
apareció la multiprogramación interactiva
• Aparecieron las terminales conversacionales 
(teclado-pantalla)
• Usuario ya no tenia que suministrar todos los 
datos al principio de la ejecución del proceso 
sino dándolos a medida que el proceso los iba 
necesitando, y también iba recibiendo 
respuesta inmediata a sus datos.
5
• Organización no se realiza por trabajos, sino 
por sesiones
• Sesión es todo los trabajos que realiza un 
usuario desde que se conecta a la 
computadora hasta que se retira de la misma
• Durante sesión puede realizar múltiples 
operaciones controladas por un proceso 
denominado interprete de comandos que 
mantiene dialogo entre usuario y SO
• Sistemas de tiempo compartido se 
caracterizan por:
o Ser muy conversacionales
o Atender a varios usuarios 
simultáneamente
o Ofrecer tiempos de respuesta 
relativamente cortos (segundos)
o Mantener una interrogación secuencial 
de peticiones de usuarios (polling)
o Poseer una fuerte gestión de archivos
o Utilizar técnicas de buffering y spooling
o Gestionar memoria virtual
• Los SO suelen tener simultáneamente las 
técnicas de lotes y tiempo compartido, cada 
usuario elige el sistema a aplicar a sus 
procesos
 Tiempo real (Real Time)
• En los que se necesita un tiempo de 
respuesta pequeño ante cualquier petición
• Son para aplicaciones dedicadas a sistemas 
de control con sensores como elementos de 
entrada, donde es necesaria respuesta rápida 
sobre el sistema a controlar
• Un sistema trabaja en tiempo real si el tiempo 
de respuesta permite controlar y regular al 
medio sobre el que opera
• Características principales:
o Fuertes restricciones en el tiempo de 
respuesta (milisegundos)
o Información debe estar 
permanentemente actualizada
o Sistema debe permanecer 
prácticamente inactivo para atender lo 
mas rápidamente posible cualquier 
evento en la entrada
o Manejo eficaz de interrupciones 
o Manejo sencillo de prioridades
6
o Gestión de memoria real
• Ejemplos: SO que controlan procesos 
industriales, reservas de pasajes, etc.
o Proceso distribuido
 Conexión de computadoras entre si a través de una 
gran variedad de dispositivos, por ejemplo 
compartiendo un mismo almacenamiento principal o 
que se conectan a una misma red nacional o 
internacional para el intercambio de información
o Multiproceso
 Aparición de aplicaciones que manejan tal cantidad 
de información que un solo procesador no es capaz 
de procesarla en el tiempo requerido. Por ejemplo 
sistemas expertos con volumen de datos que es 
extremadamente grande y tiempos de respuesta 
extremadamente pequeños, algoritmos complicados 
y que necesitan muchas operaciones para la 
obtención de los resultados
 Para solucionar esto se hizo necesaria la 
descomposición de algoritmos en subalgoritmos 
más sencillos y que cada uno pueda tratar un 
subconjunto de los datos con cierta independencia 
de los otros. Al final se juntan estos datos, 
obteniendo el resultado final de todo el proceso
 Estos subagoritmos pueden trabajar en paralelo, 
tratando cada uno su porción de información al 
mismo tiempo
 Para ello una sola computadora, contiene varios 
procesadores que pueden trabajar conjuntamente 
procesando varios algoritmos simultáneamente y 
con sustancial ahorro de tiempo de ejecución
 SO es complejo tiene que administrar varios 
procesadores. La carga y reparto de los trabajos 
debe equilibrar y optimizar al máximo el proceso 
global
 Ejecución de cuatro procesos en tres sistemas con 
métodos de monoprogramación, 
multiprogramación, multiproceso en Figura 1.21
Direcciones de Contacto
vbasictl@yahoo.com.ar
http://ar.groups.yahoo.com/group/tlyso_01
7
Temas del Segundo Parcial Teórico
Clase 10 
1. Concepto de Sistema Operativo desde el punto de vista del Usuario o como 
Gestor de Recursos. Definición de Sistema Operativo. Gráfico de maquina 
extendida (punto 1.2 libro SO-Alcalde/Morera/etc.)
2. Explicar el proceso Off-line y On-line (punto 1.3.4 libro SO-Alcalde/ Morera/etc.)
3. Explicar el proceso de Buffering (punto 1.3.4 libro SO-Alcalde/Morera/etc.)
4. Explicar el proceso de Spooling (punto 1.3.4 libro SO-Alcalde/Morera/etc.)
5. Explicar la Multiprogramación (punto 1.3.5 libro SO-Alcalde/Morera/etc.)
6. Explicar el proceso por Lotes (Batch) (punto 1.3.5 libro SO-Alcalde/ Morera/etc.)
7. Explicar el proceso de Tiempo Compartido. Cuales son sus características (Time 
Sharing) (punto 1.3.5 libro SO-Alcalde/Morera/etc.)
8. Explicar el proceso de Tiempo real (Real Time). Características principales. 
Ejemplos (punto 1.3.5 libro SO-Alcalde/Morera/etc.)
9. Explicar el Multiproceso. Graficar la diferencia de tiempos de 4 procesos en 
monoprogramación, multiprogramación y multiproceso (punto 1.3.7 libro SO-
Alcalde/Morera/etc.)
8
	 Objetivos de la Clase 10 (16/10/2013)
	Bibliografía Cap. 1 de Introducción a los Sistemas Operativos Alcalde/Morera/ Perez/Campanero )

Continuar navegando