Download Sistema operativo
Document related concepts
Transcript
Tema: Componentes lógicos de un ordenador Recordando ¿Cuáles son los elementos que integran un sistema informático? Hardware Datos Software Personas ¿Qué es un ordenador? Un dispositivo físico programable, que se utiliza para procesar información. Tema: Componentes lógicos de un ordenador Recordando ¿Cuáles son las principales características de un ordenador? Responde de manera precisa a un conjunto específico de instrucciones. Puede ejecutar una lista de instrucciones pre-grabadas. ¿Cómo representa todos sus datos un ordenador? Mediante el sistema de numeración binario, es decir, usando los dígitos 0 y 1. Lo único que transmite, recibe, almacena y procesa un ordenador son ceros y unos. Tema: Componentes lógicos de un ordenador Recordando ¿Qué se guarda en la memoria RAM? Todos los datos y programas que se están ejecutando en un momento determinado. ¿Qué es la FAT (File Allocation Table)? Una tabla que guarda la ubicación de cada archivo dentro de un disco. Tema: Componentes lógicos de un ordenador Recordando Cuando se guarda un archivo en disco ¿Qué componente del sistema informático interactúa con la FAT? El sistema operativo. Cuando se requiere guardar un archivo, el sistema operativo busca en la FAT un área disponible, almacena el archivo y, finalmente, lo identifica con su ubicación en la FAT. ¿Y cuando se busca un archivo? También es el sistema operativo el que interactúa con la FAT. Tema: Componentes lógicos de un ordenador Definición de software Es el conjunto de instrucciones electrónicas que le dicen al hardware lo que debe hacer. Estos conjuntos de instrucciones también se conocen como programas y cada uno de ellos se desarrolla para un propósito específico. Cuando un ordenador usa un programa, se dice que está corriendo o ejecutando ese programa. El primer paso para ejecutar un programa es guardarlo en la memoria RAM. Sistema operativo : Es un software de sistema, es decir, un conjunto de programas de computación destinados a realizar muchas tareas entre las que destaca la administración de los dispositivos periféricos Tema: Componentes lógicos de un ordenador Clasificación del Software De acuerdo con el propósito para el que fueron desarrollados, los programas se clasifican en dos categorías: Software de sistema Le dice al ordenador cómo usar sus propios componentes. Software de aplicación Le dice al ordenador cómo realizar tareas específicas para el usuario. Tema: Componentes lógicos de un ordenador Software de sistema A esta categoría pertenecen todos los programas que denominamos Sistemas Operativos. ¿Qué es un sistema operativo? Es el programa de control maestro del ordenador. Es el software más importante, puesto que proporciona la plataforma lógica sobre la cual se pueden ejecutar los otros programas. Sin él, no podríamos trabajar con nuestro ordenador. Tema: Componentes lógicos de un ordenador Sistema Operativo: Funciones 1) Comunicación entre el usuario y el ordenador: La interfaz de usuario. Es la forma como el Sistema Operativo posibilita la comunicación entre el ordenador y quien lo usa. Puede ser de dos tipos: • Gráfica (GUI: Graphic User Interface). • De línea de comandos. Tema: Componentes lógicos de un ordenador Sistema Operativo: Funciones 1) Comunicación entre el usuario y el ordenador: La interfaz gráfica. Su uso se basa en: La metáfora de un escritorio, donde se muestran objetos gráficos para representar los recursos disponibles. El ratón como dispositivo de entrada. Un grupo de herramientas gráficas especiales: Ventanas, íconos y menús. Tema: Componentes lógicos de un ordenador Sistema Operativo: Funciones 1) Comunicación entre el usuario y el ordenador: La interfaz gráfica. Herramientas gráficas • Ventanas: Son marcos gráficos que representan programas y sus archivos asociados. • Iconos: Son dibujos que representan los recursos del ordenador. • Menús: Son listas de comandos relacionados entre sí. Tema: Componentes lógicos de un ordenador Sistema Operativo: Funciones Iconos La Interfaz Gráfica Menú Ventana Tema: Componentes lógicos de un ordenador Sistema Operativo: Funciones 1) Comunicación entre el usuario y el ordenador: La interfaz de línea de comandos. Su uso se basa en: El conocimiento de los comandos que pertenecen al sistema operativo, por parte del usuario. El teclado como dispositivo de entrada. Una línea latente en la pantalla, donde el usuario debe escribir cada comando. Esta línea se conoce como prompt. Tema: Componentes lógicos de un ordenador Sistema Operativo: Funciones La Interfaz de línea de comandos Línea de comandos Tema: Componentes lógicos de un ordenador Sistema Operativo: Funciones 2) Carga en memoria RAM otros programas para su ejecución. Como parte de esta función, los sistemas operativos se encargan de: Administrar la ejecución de las tareas. Administrar la manipulación de los archivos. Administrar el uso de la memoria. Administrar las solicitudes de impresión. Facilitar que los programas compartan información. Tema: Componentes lógicos de un ordenador Sistema Operativo: Funciones 3) Coordina el trabajo entre el hardware y el resto del software. Para cumplir esta función, los sistemas operativos hacen uso de “solicitudes de interrupción” (IRQ = Interrupt Request). Un IRQ es una señal enviada por el sistema operativo a la CPU, solicitando tiempo de procesamiento para una tarea específica. También los controladores (drivers) de los dispositivos de entrada pueden enviar IRQs. Un driver es una pieza de software que controla a un dispositivo en particular. Tema: Componentes lógicos de un ordenador Sistema Operativo: Funciones 4) Administra el almacenamiento de la información. Para cumplir esta función, el sistema operativo hace uso del registro de todos los archivos presentes en cada disco, es decir la FAT (File Allocation Table). FAT Tema: Componentes lógicos de un ordenador Sistema Operativo: Funciones 4) Administra el almacenamiento de la información. Además, los sistemas operativos proveen un sistema jerárquico, que permite al usuario organizar sus archivos dentro de cada unidad de almacenamiento. Unidad Carpeta Archivo Ejemplo: Sistema jerárquico de Windows SISTEMAS DE ARCHIVOS Tenemos tres condiciones esenciales para el almacenamiento de la información a largo plazo: Debe ser posible almacenar una cantidad muy grande de información La información debe sobrevivir a la condición del proceso que la utiliza Debe ser posible que varios procesos tengan acceso concurente a la información Solución: Almacenar información en discos y otros medios externos, en unidades llamadas archivos La información debe ser persistente, es decir, no debe verse afectada por la creación y término de un proceso Sistemas de archivos Los archivos son administrados por el sistema operativo La parte del sistema operativo que trabaja con los archivos se conoce, como el sistema de archivos Archivos Nombre de los archivos Se puede tener acceso a él mediante su nombre Las reglas para nombres varían de sistema en sistema Algunos SO permiten cadenas de hasta 8 letras Algunos sistemas de archivos distinguen entre mayúsculas y minúsculas UNIX distingue entre mayúsculas y minúsculas MSDOS no distingue entre mayúsculas y minúsculas Algunos SO utilizan los nombres de archivos en dos partes: nombre.extensión La extensión en algunos casos, indica algo al sistema (.bat, .pas, .c, etc.) Sistema de Archivos Por ejemplo: un archivo ademas debe tener los siguientes elementos: Protección, contraseña, propietario, long. de un registro, posición de la llave, tiempo de creación, tiempo de último acceso, tiempo de la última modificación, tamaño actual, tamaño máximo, bandera exclusiva para lectura, bandera de ocultamiento, bandera de sistema, bandera de biblioteca, bandera ascci/binario, bandera de acceso aleatorio, bandera temporal, banderas de cerradura. Operaciones con archivos. Los archivos existen para poder almacenar la información y recuperarla más adelante. Llamadas más comunes al sistema relacionadas con los archivos. Crear, eliminar, abrir, cerrar, leer, escribir, añadir, buscar, obtener atributos, establecer atributos, cambiar de nombre. Tema: Componentes lógicos de un ordenador Sistema Operativo: Clasificación según sus capacidades. Entre otras categorías, resaltan tres: Multitarea: Controla la ejecución de múltiples programas o tareas simultáneamente. Multiusuario: Controla a dos o más usuarios ejecutando programas simultáneamente. Algunos sistemas operativos pueden controlar miles de usuarios (Ejemplo: mainframe). Multiproceso: Controla la ejecución de programas en más de un procesador. Sistema Operativo: Proceso .Es un programa en ejecución, consta del programa ejecutable, datos y pila, contador, registros e información adicional necesaria para ejecutar el programa Toda la información asociada a un proceso se almacena en una tabla del SO conocida como tabla de procesos El intérprete de comandos o shell es un proceso que lee los comandos a partir de una terminal, y crea un proceso que se encarga de la ejecución del comando Los procesos creados por otro proceso se llaman procesos hijo A veces es importante que los procesos se comuniquen entre sí, la comunicación entre procesos puede darse en una sola máquina o entre máquinas distintas (a traves de la red) mediante paso de mensajes o señales Es importante saber a qué usuario pertenece cada proceso Cada usuario tiene asociado un uid (entero de 16 o 32 bits) Cada grupo de usuario tiene un gid Procesos Diagrama de Transición de Estados Termina Creado Interrumpido Despachado Dormido Espera por un evento Ejecutándose Listo Esperando Ocurre el evento Estados del proceso Cada proceso tiene un estado de ejecución el cual indica lo que esta actualmente haciendo. El SO ve la ejecución de un proceso típico como una sucesión de estados. Procesos Dormido. Proceso inexistente. Sólo se indica para uso de una tabla de procesos Listo. Cuando un proceso es creado se pasa a una cola de procesos listos para ejecutarse. Los procesos listos no tiene recursos asignados Ejecutándose. El proceso tiene todos los recursos necesarios para su ejecución. Si se dispone de un solo procesador, solamente un proceso puede estar ejecutándose. Este puede ser interrumpido y pasar a la cola de listos Esperando. Espera a que ocurra un evento externo, no tiene recursos asignados. Cuando el evento ocurre el proceso suspendudi normalmente pasa a la cola de listos a esperar que se le otorgue nuevamente un turno para el uso del procesador Implantación de los procesos Tabla de procesos Procesos Servicios del sistema operativo para el manejo de procesos Los sistemas operativos que manejan procesos deben tener llamadas al sistema como: •Crear proceso •Borrar proceso •Abortar un proceso •Bloquear proceso •Asignar prioridad a un proceso •Obtener atributos del proceso En el SO Linux existen llamadas al sistema para el manejo de procesos tales como: fork, getpid, getppid, wait, etc. Tema: Componentes lógicos de un ordenador Sistema Operativo: Clasificación según sus capacidades. Ejemplo de sistema operativo multitarea: Windows ejecutando varios programas simultáneamente. Tema: Componentes lógicos de un ordenador Algunos Sistemas Operativos UNIX / LINUX DOS Tiene capacidades multitarea, multiusuario y multiproceso. Puede controlar sólo una tarea, un usuario y un procesador. Usa interfaz de línea de comando. Sin embargo, la mayoría de sus versiones ya disponen de una interfaz gráfica opcional, que el usuario puede instalar. Usa interfaz de línea de comandos. Tema: Componentes lógicos de un ordenador Algunos Sistemas Operativos MacOS Windows Diseñado para procesadores Motorola (Equipos MacIntosh). Diseñado para procesadores Intel (Equipos PC). Tiene capacidades multitarea y multiusuario. Tiene capacidades multitarea y multiusuario. Usa interfaz gráfica Usa interfaz gráfica. Actualmente existen aplicaciones que permiten intercambiar archivos entre estos sistemas operativos Tema: Componentes lógicos de un ordenador Algunos Sistemas Operativos Windows CE PalmOS Diseñado para equipos de bolsillo. Diseñado para equipos de bolsillo. Se sincroniza con equipos de mayor tamaño (desktop o laptop). Se sincroniza con equipos de mayor tamaño (desktop o laptop). Se utiliza en los equipos denominados PalmPC. Se utiliza en equipos Palm, Handspring y otros, incluyendo algunos celulares Nokia. Características de los sistemas operativos En general, se puede decir que un Sistema Operativo tiene las siguientes características: Conveniencia. Un Sistema Operativo hace más conveniente el uso de una computadora. Eficiencia. Un Sistema Operativo permite que los recursos de la computadora se usen de la manera más eficiente posible. Habilidad para evolucionar. Un Sistema Operativo deberá construirse de manera que permita el desarrollo, prueba o introducción efectiva de nuevas funciones del sistema sin interferir con el servicio. Encargado de administrar el hardware. El Sistema Operativo se encarga de manejar de una mejor manera los recursos Evolución de los sistemas operativos Los sistemas operativos, al igual que el hardware, han sufrido cambios a través del tiempo, los cuales se pueden agrupar en generaciones. La evolución del hardware ha marcado el paralelismo de la evolución de los sistemas operativos. Primera Generación. Segunda Generación. Tercera Generación. Cuarta Generación Primera Generacion de S.O. (Finales de la década de los 50's) En esta década aparecen los sistemas de procesamiento por lotes, donde los trabajos se reunían por grupos o lotes. Cuando se ejecutaba alguna tarea, ésta tenía control total de la máquina. Al terminar cada tarea, el control era devuelto al sistema operativo, el cual limpiaba, leía e iniciaba la siguiente tarea. Aparece el concepto de nombres de archivo del sistema para lograr independencia de información. Los laboratorios de investigación de General Motors poseen el crédito de haber sido los primeros en poner en operación un sistema operativo para su IBM 70 Segunda Generación S.O. (Mitad de la década de los 60's) En esta generación se desarrollan los sistemas compartidos con multiprogramación, en los cuales se utilizan varios procesadores en un solo sistema, con la finalidad de incrementar el poder de procesamiento de la máquina. El programa especificaba tan sólo que un archivo iba a ser escrito en una unidad de cinta con cierto número de pistas y cierta densidad. El sistema operativo localizaba entonces una unidad de cinta disponible con las características deseadas, y le indicaba al operador que montara una cinta en esa unidad. Tercera Generación de los S.O. En esta época surge la familia de computadores IBM/360 diseñados como sistemas para uso general, por lo que requerían manejar grandes volúmenes de información de distinto tipo, lo cual provocó una nueva evolución de los sistemas operativos: los sistemas de modos múltiples, que soportan simultáneamente procesos por lotes, tiempo compartido, procesamiento en tiempo real y multiprocesamiento. Cuarta Generación S.O. (Mitad de la década de los 70's hasta nuestros días) Los sistemas operativos conocidos en la época actual son los considerados sistemas de cuarta generación. Con la ampliación del uso de redes de computadoras y del procesamiento en línea es posible obtener acceso a computadoras alejadas geográficamente a través de varios tipos de terminales. Con estos sistemas operativos aparece el concepto de máquinas virtuales, en el cual el usuario no se involucra con el hardware de la computadora con la que se quiere conectar y en su lugar el usuario observa una interfaz gráfica creada por el sistema operativo. Tareas que desarrolla un sistema operativo (resumen) *Aceptación y conservación de los trabajos (desde inicio al fin). *Interpretar lenguaje de control. *Detectar errores y proceder en consecuencia. *Controlas todas las E/S y su posterior proceso. *Control de las interrupciones. *Planificación de las tareas. *Asignación de recursos. *Control de acceso (autorizado o no). *Planificación y carga de tareas en multiaccesos.