introduccinalossistemasoperativosi doc-110920001101-phpapp02

24
SISTEMAS OPERATIVOS Unidad I: Concepto, Características , Tipos Y Generalidades Prof. Carolina Cols

Upload: leopt

Post on 27-May-2015

117 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Introduccinalossistemasoperativosi doc-110920001101-phpapp02

SISTEMAS OPERATIVOS

Unidad I: Concepto, Características , Tipos Y Generalidades

Prof. Carolina Cols

Page 2: Introduccinalossistemasoperativosi doc-110920001101-phpapp02

Concepto de Sistemas OperativosEs un software de sistema, es decir, un conjunto de programas de

computadora destinado a permitir una administración eficaz de sus recursos. Comienza a trabajar cuando se enciende el computador, y gestiona el hardware de la máquina desde los niveles más básicos, permitiendo también la interacción con el usuario

En una definición informal, un Sistema Operativo es el software encargado de ejercer el control y coordinar el uso del hardware entre diferentes programas de Aplicación y los diferentes usuarios. Es un administrador de los recursos de hardware del sistema.

 

Page 3: Introduccinalossistemasoperativosi doc-110920001101-phpapp02

Concepto de Sistemas OperativosEs un sistema que consiste en ofrecer una distribución

ordenada y controlada de los procesadores, memorias y dispositivos de E/S entre los diversos programas que compiten por ellos.

Es el núcleo del software de la computadora. Permite que el usuario realice operaciones básicas con la computadora sin necesidad de programar. Ejm: configurar periféricos, copiar datos a un pen drive, entre otros.

Permite que los programas que se ejecuten accedan a los recursos del sistema como la pantalla, los discos y la impresora.

Page 4: Introduccinalossistemasoperativosi doc-110920001101-phpapp02

Concepto de Sistemas Operativos

Page 5: Introduccinalossistemasoperativosi doc-110920001101-phpapp02

¿Cómo funciona un Sistema Operativo?Los sistemas operativos proporcionan una plataforma de software encima de la cual otros programas, llamados aplicaciones, puedan funcionar. Las aplicaciones se programan para que funcionen encima de un sistema operativo particular, por tanto, la elección del sistema operativo determina en gran medida las aplicaciones que el usuario de la máquina puede utilizar.Entre algunas de las aplicaciones que debería tener un Sistema Operativo están: Los Procesadores de Texto, Hojas de Cálculo, Bases de Datos, Editores de Imágenes, Creador de Presentaciones, entre otros.

Page 6: Introduccinalossistemasoperativosi doc-110920001101-phpapp02

Componentes de un Sistema Operativo

1.- Gestión de procesosUn proceso es simplemente, un programa en ejecución que necesita recursos para realizar su tarea: tiempo de CPU, memoria, archivos y dispositivos de E/S. El SO es el responsable de:

Crear y destruir los procesos. Parar y reanudar los procesos. Ofrecer mecanismos para que se comuniquen y sincronicen.

La gestión de procesos podría ser similar al trabajo de oficina. Se puede tener una lista de tareas a realizar y a estas fijarles prioridades alta, media, baja por ejemplo. Debemos comenzar haciendo las tareas de prioridad alta primero y cuando se terminen seguir con las de prioridad media y después las de baja. Una vez realizada la tarea se tacha. Esto puede traer un problema que las tareas de baja prioridad pueden que nunca lleguen a ejecutarse. y permanezcan en la lista para siempre. Para solucionar esto, se puede asignar alta prioridad a las tareas más antiguas.

Page 7: Introduccinalossistemasoperativosi doc-110920001101-phpapp02

Componentes de un Sistema OperativoGestión de la memoria principal

La Memoria (informática) es una gran tabla de palabras o bytes que se referencian cada una mediante una dirección única. Este almacén de datos de rápido accesos es compartido por la CPU y los dispositivos de E/S, es volátil y pierde su contenido en los fallos del sistema. El SO es el responsable de:Conocer qué partes de la memoria están utilizadas y por quién. Decidir qué procesos se cargarán en memoria cuando haya espacio disponible. Asignar y reclamar espacio de memoria cuando sea necesario.

Gestión del almacenamiento secundarioUn sistema de almacenamiento secundario es necesario, ya que la memoria principal (almacenamiento primario) es volátil y además muy pequeña para almacenar todos los programas y datos. También es necesario mantener los datos que no convenga mantener en la memoria principal. El SO se encarga de:

Planificar los discos. Gestionar el espacio libre. Asignar el almacenamiento.

Page 8: Introduccinalossistemasoperativosi doc-110920001101-phpapp02

El Sistema de Entrada/Salida y el Sistema de Archivos

El sistema de E/SConsiste en un sistema de almacenamiento temporal (caché), una interfaz de manejadores de dispositivos y otra para dispositivos concretos. El sistema operativo debe gestionar el almacenamiento temporal de E/S y servir las interrupciones de los dispositivos de E/S.

Sistema de archivosLos archivos son colecciones de información relacionada, definidas por sus creadores. Éstos almacenan programas (en código fuente y objeto) y datos tales como imágenes, textos, información de bases de datos, etc. El SO es responsable de: Construir y eliminar archivos y directorios. Ofrecer funciones para manipular archivos y directorios. Establecer la correspondencia entre archivos y unidades de almacenamiento. Realizar copias de seguridad de archivos. Existen diferentes Sistemas de Archivos, es decir, existen diferentes formas de organizar la información que se almacena en las memorias (normalmente discos) de los ordenadores. Por ejemplo, existen los sistemas de archivos FAT, FAT32, EXT2, NTFS, etc.

Page 9: Introduccinalossistemasoperativosi doc-110920001101-phpapp02

Actividades del Sistema OperativoSistemas de protección

Mecanismo que controla el acceso de los programas o los usuarios a los recursos del sistema. El SO se encarga de:Distinguir entre uso autorizado y no autorizado. Especificar los controles de seguridad a realizar. Forzar el uso de estos mecanismos de protección.

Sistema de comunicacionesPara mantener las comunicaciones con otros sistemas es necesario poder controlar el envío y recepción de información a través de las interfaces de red. También hay que crear y mantener puntos de comunicación que sirvan a las aplicaciones para enviar y recibir información, y crear y mantener conexiones virtuales entre aplicaciones que están ejecutándose localmente y otras que lo hacen remotamente.

Programas de sistemaSon aplicaciones de utilidad que se suministran con el SO pero no forman parte de él. Ofrecen un entorno útil para el desarrollo y ejecución de programas, siendo algunas de las tareas que realizan: Manipulación y modificación de archivos. Información del estado del sistema. Soporte a lenguajes de programación. Comunicaciones.

Page 10: Introduccinalossistemasoperativosi doc-110920001101-phpapp02

Gestión de un Sistema OperativoComo gestor de recursos, el Sistema Operativo administra: La CPU (Unidad Central de Proceso, donde está alojado el microprocesador). Los dispositivos de E/S (entrada y salida) La memoria principal (o de acceso directo). Los discos (o memoria secundaria). Los procesos (o programas en ejecución). y en general todos los recursos del sistema.

CaracterísticasAdministración de tareas

 Monotarea: Solamente puede ejecutar un proceso (aparte de los procesos del propio S.O.) en un momento dado. Una vez que empieza a ejecutar un proceso, continuará haciéndolo hasta su finalización y/o interrupción. Multitarea: Es capaz de ejecutar varios procesos al mismo tiempo. Este tipo de S.O. normalmente asigna los recursos disponibles (CPU, memoria, periféricos) de forma alternada a los procesos que los solicitan, de manera que el usuario percibe que todos funcionan a la vez, de forma concurrente.

Page 11: Introduccinalossistemasoperativosi doc-110920001101-phpapp02

Gestión de un Sistema OperativoAdministración de usuarios

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 de la computadora. Normalmente estos sistemas operativos utilizan métodos de protección de datos, de manera que un programa no pueda usar o cambiar los datos de otro usuario.

Manejo de recursos

Centralizado: Si permite utilizar los recursos de una sola computadora. Distribuido: Si permite utilizar los recursos (memoria, CPU, disco, periféricos... ) de más de una computadora al mismo tiempo.

Page 12: Introduccinalossistemasoperativosi doc-110920001101-phpapp02

Tipos de Sistemas Operativos

Por Lotes

De Tiempo Real

Multiprogramación

De Tiempo Compartido

Distribuidos

De Red

Paralelos

Page 13: Introduccinalossistemasoperativosi doc-110920001101-phpapp02

Sistemas Operativos por Lotes Los sistemas operativos por lotes, procesan una gran cantidad de trabajos con poca o ninguna interacción entre los usuarios y los programas en ejecución. Cuando estos sistemas son bien planeados, pueden tener un tiempo de ejecución muy alto, porque el procesador es mejor utilizado y los sistemas operativos pueden ser simples, debido a la secuenciabilidad de la ejecución de los trabajos. Algunas características de los sistemas operativos por lotes son las siguientes:  Requiere que el programa, datos y órdenes al sistema sean remitidos todos

juntos en forma de lote. Permiten poca o ninguna interacción con el usuario. Mayor potencial de utilización de recursos que procesamiento serial simple

en sistemas multiusuarios. Conveniente para programas de largos tiempos de ejecución.  

Page 14: Introduccinalossistemasoperativosi doc-110920001101-phpapp02

Sistemas Operativos de Tiempo Real

Los sistemas operativos de tiempo real son aquellos en donde no tiene importancia el usuario, sino los procesos. Se utilizan en entornos donde son procesados un gran número de sucesos o eventos. Son construidos para aplicaciones muy específicas, tales como: tráfico aéreo, bolsas de valores, etc.

Algunos campos de aplicación son los siguientes:Control de trenes TelecomunicacionesSistemas de fabricación integrada.Control de edificios, etc.

Algunas características de los sistemas operativos de tiempo real son:Su objetivo es proporcionar rápidos tiempos de respuesta.Procesa ráfagas de miles de interrupciones por segundo sin perder algún proceso.Poco movimiento de programas entre almacenamiento secundario y memoria.Proceso de mayor prioridad expropia recursos.

Page 15: Introduccinalossistemasoperativosi doc-110920001101-phpapp02

Sistemas Operativos Multiprogramación

Soporta la ejecución de dos o más trabajos activos al mismo tiempo. Su objetivo es tener varias tareas en la memoria principal.

Las características de un Sistema operativo de multiprogramación son las siguientes: Soporta múltiples usuarios.Requiere validación de usuario para seguridad y protección.Mejora productividad del sistema y utilización de recursos.Multiplexa recursos entre varios programas.

Estos sistemas operativos se caracterizan por tener múltiples programas activos, compitiendo por los recursos del sistema: procesador, memoria, dispositivos periféricos.

Page 16: Introduccinalossistemasoperativosi doc-110920001101-phpapp02

Sistemas Operativos de Tiempo Compartido

Estos sistemas permiten la simulación de que el sistema y sus recursos son todos para cada usuario. El usuario hace una petición a la computadora, esta la procesa tan pronto como le es posible, y la respuesta aparecerá en la terminal del usuario.Los principales recursos del sistema, el procesador, la memoria, dispositivos de E/S; son continuamente utilizados entre los diversos usuarios, dando a cada usuario la ilusión de que tiene el sistema dedicado para sí mismo.

Las características de los sistemas operativos de tiempo compartido son: Dan la ilusión de que cada usuario tiene una máquina para sí. La mayoría utilizan algoritmo de reparto circular. Los programas se ejecutan con prioridad rotatoria que se incrementan con la

espera y disminuye después de concedido el servicio Gestión de memoria proporciona protección a programas residentes.

Page 17: Introduccinalossistemasoperativosi doc-110920001101-phpapp02

Sistemas Operativos Distribuidos Estos sistemas permiten distribuir trabajos, tareas o procesos, entre un conjunto de procesadores; este conjunto de procesadores puede estar en un equipo o en diferentes, en este caso es transparente para el usuario.

Sus características de los sistemas operativos distribuidos son: Colocación de sistemas autónomos capaces de comunicación y

cooperación mediante el hardware y software. Proporcionan medios para la compartición global de recurso. Servicios añadidos: denominación global, sistemas de archivos.

distribuidos, facilidades para distribución de cálculos.

Page 18: Introduccinalossistemasoperativosi doc-110920001101-phpapp02

Sistemas Operativos de Red y Paralelos

Sistemas operativos de RedSon aquellos que mantienen a dos o más computadoras unidas a través de algún medio de comunicación, con el objetivo de poder compartir los diferentes recursos y la información del sistema. Por lo regular son utilizados en: Novell Netware, Personal Netware, Lan Manager, etc.

Sistemas operativos paralelosEn estos sistemas se pretende que cuando existan dos o más procesos que compitan por algún recurso se puedan realizar o ejecutar al mismo tiempo.

En UNIX existe también la posibilidad de ejecutar programas sin tener que atenderlos en forma interactiva, simulando paralelismo. Así, en lugar de esperar a que el proceso termine de ejecutarse, regresa a atender al usuario inmediatamente

Page 19: Introduccinalossistemasoperativosi doc-110920001101-phpapp02

Llamadas al Sistema Operativo

Son llamadas que ejecutan los programas de aplicación para pedir algún servicio al SO.Cada SO implementa un conjunto propio de llamadas al sistema. Ese conjunto de llamadas es la interfaz del SO frente a las aplicaciones. Constituyen el lenguaje que deben usar las aplicaciones para comunicarse con el SO. Por ello si cambiamos de SO, y abrimos un programa diseñado para trabajar sobre el anterior, en general el programa no funcionará, a no ser que el nuevo SO tenga la misma interfaz. Para ello:Las llamadas correspondientes deben tener el mismo formato. Cada llamada al nuevo SO tiene que dar los mismos resultados que la correspondiente del anterior.

Page 20: Introduccinalossistemasoperativosi doc-110920001101-phpapp02

Interrupciones y ExcepcionesEl SO ocupa una posición intermedia entre los programas de aplicación y el hardware. No se limita a utilizar el hardware a petición de las aplicaciones ya que hay situaciones en las que es el hardware el que necesita que se ejecute código del SO. En tales situaciones el hardware debe poder llamar al sistema, pudiendo deberse estas llamadas a dos condiciones:Algún dispositivo de E/S necesita atención. Se ha producido una situación de error al intentar ejecutar una instrucción del programa (normalmente de la aplicación). En ambos casos, la acción realizada no está ordenada por el programa de aplicación, es decir, no figura en el programa.

Según los dos casos anteriores tenemos las interrupciones y la excepciones:Interrupción: señal que envía un dispositivo de E/S a la CPU para indicar que la operación de la que se estaba ocupando, ya ha terminado. Una petición de interrupción IRQ ("Interrupt Request") es una señal que se origina en un dispositivo hardware (por ejemplo, un periférico), para indicar al procesador que algo requiere su atención inmediata; se solicita al procesador que suspenda lo que está haciendo para atender la petición.

Page 21: Introduccinalossistemasoperativosi doc-110920001101-phpapp02

InterrupcionesTratamiento de las interrupciones

Una interrupción se trata en todo caso, después de terminar la ejecución de la instrucción en curso.El tratamiento depende de cuál sea el dispositivo de E/S que ha causado la interrupción, ante la cual debe poder identificar el dispositivo que la ha causado.

Importancia de las interrupcionesEl mecanismo de tratamiento de las interrupciones permite al SO utilizar la CPU en servicio de una aplicación, mientras otra permanece a la espera de que concluya una operación en un dispositivo de E/S.El hardware se encarga de avisar al SO cuando el dispositivo de E/S ha terminado y el SO puede intervenir entonces, si es conveniente, para hacer que el programa que estaba esperando por el dispositivo, se continúe ejecutando.En ciertos intervalos de tiempo puede convenir no aceptar señales de interrupción. Por ello las interrupciones pueden inhibirse por programa (aunque esto no deben poder hacerlo las mismas).

Page 22: Introduccinalossistemasoperativosi doc-110920001101-phpapp02

Excepciones

Excepción: una situación de error detectada por la CPU mientras ejecutaba una instrucción, que requiere tratamiento por parte del SO.

Cuando la CPU intenta ejecutar una instrucción incorrectamente construida, la unidad de control lanza una excepción para permitir al SO ejecutar el tratamiento adecuado. Al contrario que en una interrupción, la instrucción en curso es abortada. Las excepciones al igual que las interrupciones deben estar identificadas.

Clases de excepcionesLas instrucciones de un programa pueden estar mal construidas por diversas razones: El código de operación puede ser incorrecto. Se intenta realizar alguna operación no definida, como dividir por cero. La instrucción puede no estar permitida en el modo de ejecución actual. La dirección de algún operando puede ser incorrecta o se intenta violar

alguno de sus permisos de uso.

Page 23: Introduccinalossistemasoperativosi doc-110920001101-phpapp02

Excepciones

Importancia de las excepcionesEl mecanismo de tratamiento de las excepciones es esencial para impedir, junto a los modos de ejecución de la CPU y los mecanismos de protección de la memoria, que las aplicaciones realicen operaciones que no les están permitidas. En cualquier caso, el tratamiento específico de una excepción lo realiza el SO.Como en el caso de las interrupciones, el hardware se limita a dejar el control al SO, y éste es el que trata la situación como convenga.Es bastante frecuente que el tratamiento de una excepción no retorne al programa que se estaba ejecutando cuando se produjo la excepción, sino que el SO aborte la ejecución de ese programa. Este factor depende de la pericia del programador para controlar la excepción adecuadamente.

Page 24: Introduccinalossistemasoperativosi doc-110920001101-phpapp02

FIN

Gracias por su AtenciónFeliz Día