PUNTOS DE VISTA PARA CLASIFICAR A LOS SISTEMAS OPERATIVOS

Slides:



Advertisements
Presentaciones similares
SISTEMAS OPERATIVOS.
Advertisements

Principios de Computación
Dr. Joseabel Cegarra Núcleo LUZ-COL
MAC OS.... CONCEPTOS GENERALES
Tipos de sistemas operativos
Sistema operativo Componentes de un sistema operativo
Sistemas Operativos Síntesis.
Estructura de un Sistema Operativo
ESTRUCTURA DEL SISTEMA OPERATIVO
Subsistemas De un Sistema Operativo Celeste Domínguez Romo
Introducción a los sistemas operativos
Introducción al software
HISTORIA Y CLASIFICACIÓN DE LOS SISTEMAS OPERATIVOS
Numero de usuarios por soportar (monousuarios, multiusuarios) Hardward del ordenador (numero de procesadores ( S.O monoprocesadores, S.O multiprocesadores)
Objetivo: Conocer los componentes hardware y software que constituyen un computador.
INSTALACIÓN Y MANTENIMIENTO DE SISTEMAS OPERATIVOS
HERRAMIENTAS INFORMATICAS
Clasificación de SO por usuarios
Introducción al Software
ESTRUCTURA DE LOS SISTEMAS OPERATIVOS
CLASIFICACIÓN DEL SISTEMA OPERATIVO POR APLICACIÓN
Sistema Operativo. ¿Qué es el Sistema Operativo? Un sistema operativo (SO) es el conjunto de programas y utilidades software que permiten al usuario interactuar.
OMAR SANCHEZ ROBLES HECTOR PEREZ GARCIA. “Sistemas de cómputo compuesto por un gran número de CPU´s conectados mediante una red de alta velocidad”, Tanenbaum.
Unidad 6 (1ª parte) TEORÍA DE SSOO MANTENIMIENTO.
SOFTWARE DE PROGRAMACIÓN
SISTEMA OPERATIVO Un sistema operativo es un programa que actúa como intermediario entre el usuario y el hardware de un computador y su propósito es proporcionar.
SISTEMAS OPERATIVOS.
Sistemas Operativos Procesos.
Programación I MC José Andrés Vázquez Flores
Características de un sistema operativo
LOS SISTEMAS OPERATIVOS
Introducción a los Sistemas Operativos
Un sistema de gestión de bases de datos: Es un conjunto de programas que permite a los usuarios crear y mantener una base de datos. Por tanto, el SGBD.
Servidores Conceptos Generales.
Estructuras en Sistemas Operativos DAISY KATERINE RODRÍGUEZ.
Introducción a los Sistemas Operativos
UNIVERSIDAD LATINA. I. TEORIA DE SISTEMAS OPERATIVOS.
Introducción a los SOs.
Tema 8: Introducción a los SOs. Tema 8: 2 Silberschatz, Galvin and Gagne ©2005 Fundamentos de los Computadores (ITT, Sist. Electr.), Introducción.
CONCEPTOS FUNDAMENTALES DEL NIVEL DEL SISTEMA OPERATIVO
Sistemas Operativos.
Estructura de los Sistemas Operativos
Sistemas Operativos.
Un ordenador no puede funcionar sin sistema operativo.
Universidad Metropolitana Introducción a la Computación
INTRODUCCION A SISTEMAS OPERATIVOS
Modelo de 3 capas.
S ISTEMAS O PERATIVOS. S ISTEMA O PERATIVO Software: equipamiento lógico o soporte lógico de una computadora digital; comprende el conjunto de los componentes.
Salir de la presentación
Estructura del Sistemas Operativos por su Estructura
Tipos de sistemas operativos
SISTEMAS OPERATIVOS.
LIA. SUEI CHONG SOL, MCE..  1.- SOFTWARE BÁSICO O DE SISTEMA. Conjunto de programas imprescindibles para el funcionamiento del sistema.  2.- SOTWARE.
Benemérita Universidad Autónoma de Puebla Facultad de Ciencias de la Computación Programación I MC Beatriz Beltrán Martínez.
BASE DE DATOS DISTRIBUIDAS
Elementos y tipos de sistemas operativos
SISTEMAS OPERATIVOS Son un conjunto de programas destinados a permitir la comunicación entre el usuario y en computador y gestionar sus recursos.
Procesamiento de transacciones: consiste en los procesos de captura, recolección, clasificación, ordenamiento, cálculo, resumen y almacenamiento de todos.
UNIDAD I INTRODUCCION A LOS S.O.
ELEMENTO DE COMPETENCIA 3
SISTEMAS OPERATIVOS.
TECNICO EN SISTEMAS NUMERO DE FICHA:
AA – B – C – D – E – F – G – H – I – J – K – M – N – O – P – R – S – T – V – W – X – Y – ZBCDEFGHIJKMN OPRST VWXYZ María Alejandra Ruz Toyo.
Evelin Ramos Cabrera 1° B
PROCESADOR.- El procesador es el cerebro del sistema, encargado de procesar toda la información. Básicamente, es el "cerebro" de la computadora. Prácticamente,
INGENIERIA EN SISTEMAS FUNDAMENTOS DE COMPUTACION B ACHILLERATO EN I NGENIERÍA I NFORMÁTICA L IC. C ARLOS H. G UTIÉRREZ L EÓN.
CAPITULO III El Sistema Operativo (OS)
BASES DE DATOS DISTRIBUIDAS M.C.C. María Guadalupe Villanueva Carrasco INGENIERIA EN SISTEMAS COMPUTACIONALES.
Un equipo de computo esta compuesto por hardware, software y humanware; el Software es la parte lógica de la computadora, el humanware es el usuario y.
Transcripción de la presentación:

PUNTOS DE VISTA PARA CLASIFICAR A LOS SISTEMAS OPERATIVOS Sistemas Operativos I PUNTOS DE VISTA PARA CLASIFICAR A LOS SISTEMAS OPERATIVOS

SISTEMAS OPERATIVOS POR SU ESTRUCTURA: La estructura de un sistema operativo está dada por la filosofía, conceptualización o forma como fue diseñado, es así que a continuación se detallan cuatro estructuras distintas que ya han sido probadas: Sistemas Monolíticos Sistemas con Capas Máquinas Virtuales Modelo Cliente-Servidor

SISTEMAS MONOLÍTICOS: Su estructura consiste en no tener estructura alguna Es sólo una colección de procedimientos Cada procedimiento es libre de llamar a los demás cuando lo requiera El único orden que poseen está dado por la forma como se procesan las llamadas al sistema, permitiendo el paso de la CPU de modo usuario a modo núcleo.

SISTEMAS MONOLÍTICOS: Programa 2 del Usuario Programa 1 del Usuario Procedimiento de Servicio Memoria Principal Modo Usuario Modo Núcleo Llamada al núcleo (sistema) 1 3 2 4 1.- Se realiza la llamada al sistema 2.- El sistema operativo determina el “número” de servicio solicitado 3.- El sistema operativo localiza y llama al procedimiento correspondiente 4.- El control regresa al programa del usuario

SISTEMAS CON CAPAS: La estructura interna del sistema operativo está organizada como una jerarquía de capas El primer sistema construido de esta manera fue el sistema THE (Technische Hogeschool Eindhoven) Las capas son una representación de las funciones que realiza el código (instrucciones del programa) almacenado en cada una de ellas El sistema THE constaba de 6 capas

Estructura del sistema operativo THE SISTEMAS CON CAPAS: 1 2 3 4 5 6 El Operador Programas del Usuario Control de Entrada/Salida Comunicación operador-proceso Administración de la memoria y el disco Asignación del procesador y multiprogramación Estructura del sistema operativo THE

SISTEMAS CON CAPAS: Otra forma de ver este tipo de sistema es la denominada de anillos concéntricos o "rings“.

MÁQUINAS VIRTUALES: Se trata de un tipo de sistemas operativos que presentan una interfase a cada proceso, mostrando una máquina que parece idéntica a la máquina real subyacente. Estos sistemas operativos separan dos conceptos que suelen estar unidos en el resto de sistemas: la multiprogramación y la máquina extendida. El objetivo de los sistemas operativos de máquina virtual es el de integrar distintos sistemas operativos dando la sensación de ser varias máquinas diferentes.

MÁQUINAS VIRTUALES: El núcleo de estos sistemas operativos se denomina monitor virtual y tiene como misión llevar a cabo la multiprogramación, presentando a los niveles superiores tantas máquinas virtuales como se soliciten; estas máquinas virtuales no son máquinas extendidas, sino una réplica de la máquina real, de manera que en cada una de ellas se pueda ejecutar un sistema operativo diferente, que será el que ofrezca la máquina extendida al usuario

MÁQUINAS VIRTUALES: FUNCIONAMIENTO DE JAVA VIRTUAL MACHINE (JVM) El lenguaje Java es a la vez compilado e interpretado. Con el compilador se convierte el código fuente que reside en archivos cuya extensión es .java, a un conjunto de instrucciones que recibe el nombre de bytecodes que se guardan en un archivo cuya extensión es .class. Estas instrucciones son independientes del tipo de ordenador. El intérprete ejecuta cada una de estas instrucciones en un ordenador específico (Windows, Macintosh, etc). Solamente es necesario, por tanto, compilar una vez el programa, pero se interpreta cada vez que se ejecuta en un ordenador. Cada intérprete Java es una implementación de la Máquina Virtual Java (JVM)

MÁQUINAS VIRTUALES: FUNCIONAMIENTO DE JAVA VIRTUAL MACHNE (JVM) Application Programming Interface) Java es, por tanto, algo más que un lenguaje, ya que la palabra Java se refiere a dos cosas inseparables: el lenguaje que sirve para crear programas y la Máquina Virtual Java que sirve para ejecutarlos. Como se ve en la figura, el API de Java y la Máquina Virtual Java forman una capa intermedia (Java platform) que aísla el programa Java del harware.

MODELO CLIENTE SERVIDOR: Se trata de mantener al núcleo con el mínimo tamaño posible Esto se logra implantando la mayoría de las funciones en los procesos del usuario Aparecen 2 nuevos conceptos que dividen en 2 a los procesos de usuario: Proceso Cliente y Proceso Servidor El núcleo se encarga solamente de controlar la comunicación entre clientes y servidores

SISTEMAS OPERATIVOS POR SERVICIOS: Esta clasificación es más comúnmente usada y más conocida desde el punto de vista del usuario final: Por el número de Usuarios: Monousuarios Multiusuarios Por el número de Tareas: Monotarea Multitareas Por el número de Procesadores: Uniproceso Multiproceso

Por el Número de Usuarios Monousuarios Los sistemas operativos monousuarios son aquellos que soportan a un usuario a la vez, sin importar el número de procesadores que tenga la computadora o el número de procesos o tareas que el usuario pueda ejecutar en un mismo instante de tiempo. Las computadoras personales típicamente se han clasificado en este renglón. Multiusuarios Los sistemas operativos multiusuarios son capaces de dar servicio a más de un usuario a la vez, ya sea por medio de varias terminales conectadas a la computadora o por medio de sesiones remotas en una red de comunicaciones. No importa el número de procesadores en la máquina ni el número de procesos que cada usuario puede ejecutar simultáneamente.

Por el Número de Tareas Monotarea Multitareas Los sistemas monotarea son aquellos que sólo permiten una tarea a la vez por usuario. Puede darse el caso de un sistema multiusuario y monotarea, en el cual se admiten varios usuarios al mismo tiempo pero cada uno de ellos puede estar haciendo solo una tarea a la vez. Multitareas Un sistema operativo multitarea es aquél que le permite al usuario estar realizando varias labores al mismo tiempo. Por ejemplo, puede estar editando el código fuente de un programa durante su depuración mientras compila otro programa, a la vez que está recibiendo correo electrónico en un proceso en background. Es común encontrar en ellos interfaces gráficas orientadas al uso de menús y el ratón.

Por el Número de Procesadores Uniproceso Un sistema operativo uniproceso es aquél que es capaz de manejar solamente un procesador de la computadora, de manera que si la computadora tuviese más de uno le sería inútil. El ejemplo más típico de este tipo de sistemas es el DOS y MacOS. Multiproceso Un sistema operativo multiproceso se refiere al número de procesadores del sistema, que es más de uno y éste es capaz de usarlos todos para distribuir su carga de trabajo. Generalmente estos sistemas trabajan de dos formas: simétrica o asimétricamente. Cuando se trabaja de manera asimétrica, el sistema operativo selecciona a uno de los procesadores el cual jugará el papel de procesador maestro y servirá como pivote para distribuir la carga a los demás procesadores, que reciben el nombre de esclavos. Cuando se trabaja de manera simétrica, los procesos o partes de ellos (threads) son enviados indistintamente a cualesquiera de los procesadores disponibles, teniendo, teóricamente, una mejor distribución y equilibrio en la carga de trabajo bajo este esquema.

THREADS Se dice que un thread es la parte activa en memoria y corriendo de un proceso, lo cual puede consistir de un área de memoria, un conjunto de registros con valores específicos, la pila y otros valores de contexto. Un aspecto importante a considerar en estos sistemas es la forma de crear aplicaciones para aprovechar los varios procesadores. Existen aplicaciones que fueron hechas para correr en sistemas monoproceso que no toman ninguna ventaja a menos que el sistema operativo o el compilador detecte secciones de código paralelizable, los cuales son ejecutados al mismo tiempo en procesadores diferentes. Por otro lado, el programador puede modificar sus algoritmos y aprovechar por sí mismo esta facilidad, pero esta última opción las más de las veces es costosa en horas hombre y muy tediosa, obligando al programador a ocupar tanto o más tiempo a la paralelización que a elaborar el algoritmo inicial.

SISTEMAS OPERATIVOS POR EL ACCESO A LOS SERVICIOS: Esta clasificación también se refiere a una visión externa, que en este caso se refiere a la del usuario, el cómo accesa los servicios. Bajo esta clasificación se pueden detectar dos tipos principales: Sistemas Operativos de Red Sistemas Operativos Distribuidos

SISTEMAS OPERATIVOS DE RED Los sistemas operativos de red se definen como aquellos que tiene la capacidad de interactuar con sistemas operativos en otras computadoras por medio de un medio de transmisión con el objeto de intercambiar información, transferir archivos, ejecutar comandos remotos y un sin fin de otras actividades. El punto crucial de estos sistemas es que el usuario debe saber la sintaxis de un conjunto de comandos o llamadas al sistema para ejecutar estas operaciones, además de la ubicación de los recursos que desee accesar.

SISTEMAS OPERATIVOS DISTRIBUIDOS Los sistemas operativos distribuidos abarcan los servicios de los de red, logrando integrar recursos (impresoras, unidades de respaldo, memoria, procesos, unidades centrales de proceso) en una sola máquina virtual que el usuario accesa en forma transparente. Es decir, ahora el usuario ya no necesita saber la ubicación de los recursos, sino que los conoce por nombre y simplemente los usa como si todos ellos fuesen locales a su lugar de trabajo habitual. Todo lo anterior es el marco teórico de lo que se desearía tener como sistema operativo distribuido, pero en la realidad no se ha conseguido crear uno del todo, por la complejidad que suponen: distribuir los procesos en las varias unidades de procesamiento, reintegrar sub-resultados, resolver problemas de concurrencia y paralelismo, recuperarse de fallas de algunos recursos distribuidos y consolidar la protección y seguridad entre los diferentes componentes del sistema y los usuarios.