0
Posted by DARKBLADE on 21:06
UNIDAD 1 LOS SISTEMAS OPERATIVOS EN AMBIENTES DISTRIBUIDOS

APUNTES DEL PROFESOR JOSE JUAN HERNANDEZ GRANADOS







1.1.2 MODELO CLIENTE SERVIDOR

Basado en una arquitectura jerarquica donde el servidor es la máxima autoridad “controla la red”.

Características:

· Es un sistema centralizado “servidor”.

· Su estructura es fácil de expandir.

· Sus recursos locales son fáciles de controlar.

· Es controlado por un NOS (LINUX, UNIX, WINDOWS).

FUNCIONES DEL SERVIDOR

· Proporcionar los servicios a los clientes.

Ejemplo:
ü Servidor de impresión
ü Servidor de paginas web
ü Servidor de correo

· Es responsable de la seguridad de la red.

· Antivirus
· Antispaw
· Firewalls

· Es responsable del control de la concurrencia.

· Comparte recursos e información.

FUNCIONES DEL CLIENTE

Hace las peticiones “servicios” al Server

MODELO CLIENTE/SERVIDOR MULTICAPAS

1.1.3 CARACTERÍSTICAS DEL SOFTWARE

· Contiene S.O en común “nodo”.

Por ejemplo: Windows 98, Windows XP, Vista.

Linux, Mandrake Linux debían, etc.

· Cuando existen S.O diferentes.

Linux
Samba para comunicarse
Windows


1.1.4 CARACTERÍSTICAS DE HARDWARE

Cada nodo contiene S.O propios característicos pero son requerimientos que deben cumplir como
¿ memoria
¿Procesador
¿dispositivos??

Nota: que cumplan con requerimientos de conexión del NOS.


1.1.5 DIRECCIONAMIENTO

Físico = MAC + IP


Direccionamiento

Lógico = IP, puertos de enlace, DNS, mascaras de sub red.
Clasificación:
IP Categoría

“A”
0 – 127.255.255.255

“B”
128 – 191.255.255.255

“C”
192 – 223.255.255.255
“D”
224 – 240.255.255.255

“E”
241 - 254.255.255.255



1.2 CONCEPTO Y CARACTERISTICAS DE UN SOR = NOS

Conjunto de programas y aplicaciones utilizadas para la administración y seguridad de una red de área local.

Ejemplo: Windows NT, Server, UNIX, Linux

Características:

· Basados en la arquitectura cliente/servidor.
· Fácil de administrar.
· Flexibilidad y economía.

1.1 CONCEPTOS Y CARACTERÍSTICAS DE UN SOD = SISTEMA DISTRIBUIDO

Cada equipo de cómputo es autónomo, tiene su propio procesador y memoria, existen equipos no heterogéneos.

Ejemplos de SOD: Seti, taos, Sprite, Spring, Solaris

Características:

· Son difíciles de administrar.
· Los recursos remotos suelen ser no muy confiables.
· Afectan los factores externos de su desempeño.
· Debido a la demanda de comunicación cambian frecuentemente.




FACTORES EXTERNOS QUE AFECTAN A LOS SISTEMAS DISTRIBUIDOS

· Los avances tecnológicos.
· La globalización.
· Los aspectos externos (culturales, políticos, económicos).


1.2 Sistemas Distribuidos
Sistemas cuyos componentes hardware y software, están en ordenadores conectados en red, se comunican y coordinan sus acciones mediante el paso de mensajes, para el logro de un objetivo. Se establece la comunicación mediante un protocolo prefijado por un esquema cliente-servidor.
Colección de elementos de cómputo autónomo que se encuentran físicamente separados y no comparten una memoria común, se comunican entre sí a través del intercambio de mensajes utilizando un medio de comunicación. Los sistemas autónomos pueden tener características no homogéneas.


1.2.1 Ventajas Desventajas contra Sistemas Centralizados

Ventajas
* Aumento de la disponibilidad.
* Mejora del desempeño.
* Balanceo en la carga de trabajo.
* Compartición de recursos.
* Compartición de información.
* Confiabilidad, disponibilidad y tolerancia a fallas.
* Modularidad en el desarrollo.
* Flexibilidad.
* Crecimiento incremental.
* Reducción de costos.
* Mayor capacidad de modelar estructuras organizacionales.

Desventajas
* Uso ineficiente de los recursos distribuidos.
* Capacidad reducida para administrar apropiadamente grupos de procesadores y memoria
localizada en distintos sitios.
* Enorme dependencia del desempeño de la red y de la confiabilidad de la misma.
* Debilitamiento de la seguridad.
* Mayor complejidad en la administración y mantenimiento.
* Mayor complejidad en su construcción.







1.2.2 Modelo Cliente Servidor

Hardware cliente-servidor
La arquitectura cliente-servidor permite al usuario en una máquina, llamada el cliente, requerir algún tipo de servicio de una máquina a la que está unido, llamado el servidor, mediante una red como una LAN (Red de Area Local) o una WAN (Red de Area Mundial). Estos servicios pueden ser peticiones de datos de una base de datos, de información contenida en archivos o los archivos en sí mismos, o peticiones de imprimir datos en una impresora asociada.

Aunque clientes y servidores suelen verse como máquinas separadas, pueden, de hecho, ser dos áreas separadas en la misma máquina. Por tanto, una única máquina Unix puede ser al mismo tiempo cliente y servidor. Además una máquina cliente unida a un servidor puede ser a su vez servidor de otro cliente y el servidor puede ser un cliente de otro servidor en la red. También es posible tener el cliente corriendo en un sistema operativo y el servidor en otro distinto.

Hay varios tipos comunes de máquinas clientes en entornos cliente-servidor. Uno de los clientes más populares es una computadora personal basada en Intel que ejecuta aplicaciones de DOS en un entorno Windows. Otra cliente popular es una terminal X; de hecho, el sistema X Windows es un modelo cliente-servidor clásico.

Hay también clientes Unix que ejecutan sistemas operativos como UnixWare. Un servidor que pide cosas a otro servidor es un cliente de la máquina a la que está pidiendo. Sin considerar el tipo de cliente que se esté usando en una red cliente-servidor, se realizando al menos una de las funciones básicas descritas aquí como funciones del cliente.

Los clientes en una red cliente-servidor son las máquinas o procesos que piden información, recursos y servicios a un servidor unido. Estas peticiones pueden ser cosas como proporcionar datos de una base de datos, aplicaciones, partes de archivos o archivos completos a la máquina cliente. Los datos, aplicaciones o archivos pueden residir en un servidor y ser simplemente accedidos por el cliente o pueden ser copiados o movidos físicamente a la máquina cliente.

Esta disposición permite a la máquina cliente ser relativamente pequeña. Para cada tipo de entorno de cliente, hay habitualmente software específico (y a veces hardware) en el cliente, con algún software y hardware análogo en el servidor. Los servidores pueden ser sistemas operativos diferentes como Windows NT, Windows 95, OS/2, Unix. Unix es popular porque, como sistema operativo de servidores, puede ser utilizado en muchos tipos de configuraciones sobre máquinas servidor, además de como servidores de archivos y servidores de impresión.


Ventajas e inconvenientes del esquema Cliente/Servidor
Se mencionan a continuación algunas de las ventajas de la utilización del esquema Cliente/Servidor.

Uno de los aspectos que más ha promovido el uso de sistemas Cliente/Servidor es la existencia de plataformas de hardware cada vez más baratas. Esta constituye a su vez una de las más palpables ventajas de este esquema, la posibilidad de utilizar máquinas considerablemente más baratas que las requeridas por una solución centralizada, basada en sistemas grandes. Además de lo anterior, se pueden utilizar componentes, tanto de hardware como de software, de varios fabricantes, lo cual contribuye considerablemente a la reducción de costos y favorece la flexibilidad en la implantación y actualización de soluciones.

Además de lo anterior, el esquema Cliente/Servidor facilita la integración entre sistemas diferentes y compartir información, permitiendo, por ejemplo que las máquinas ya existentes puedan ser utilizadas pero utilizando interfaces más amigables al usuario. De esta manera podemos, por ejemplo, integrar PCs con sistemas medianos y grandes, sin que todas las máquinas tengan que utilizar el mismo sistema operacional.

Al favorecer el uso de interfaces gráficas interactivas, los sistemas construidos con este esquema tienen una interacción más intuitiva con el usuario. Si se utilizan interfaces gráficas para interactuar con el usuario, el esquema Cliente/Servidor presenta la ventaja, con respecto a uno centralizado, de que no es siempre necesario transmitir información gráfica por la red pues esta puede residir en el cliente, lo cual permite aprovechar mejor el ancho de banda de la red.

La estructura inherentemente modular facilita además la integración de nuevas tecnologías y el crecimiento de la infraestructura computacional, favoreciendo así la escalabilidad de las soluciones.

El esquema Cliente/Servidor contribuye además a proporcionar a los diferentes departamentos de una empresa soluciones locales, pero permitiendo además la integración de la información relevante a nivel global.

El esquema cliente/servidor tiene algunos inconvenientes que se mencionan a continuación.

Por una parte, el mantenimiento de los sistemas es más difícil pues implica la interacción de diferentes partes de hardware y de software, distribuidas por distintos proveedores, lo cual dificulta el diagnóstico de fallas.

Además de lo anterior, se cuenta con muy escasas herramientas para la administración y ajuste del desempeño de los sistemas.

En el desarrollo de aplicaciones Cliente/Servidor se deben tener en cuenta diferentes aspectos, que se mencionan a continuación.


1.2.3 Características Hardware Sistemas Distribuidos

Todos los sistemas distribuidos constan de varias cpu, organizadas de diversas formas, especialmente respecto de:

· La forma de interconectarlas entre sí.
· Los esquemas de comunicación utilizados.

Existen diversos esquemas de clasificación para los sistemas de cómputos con varias cpu:

· Uno de los mas conocidos es la “Taxonomía de Flynn”:
· Considera como características esenciales el número de flujo de instrucciones y el número de flujos de datos.

· La clasificación incluye equipos SISD, SIMD, MISD y MIMD.
SISD (Single Instruction Single Data: un flujo de instrucciones y un flujo de datos):
· Poseen un único procesador.

SIMD (Single Instruction Multiple Data: un flujo de instrucciones y varios flujos de datos):
· Se refiere a ordenar procesadores con una unidad de instrucción que:

Busca una instrucción.
Instruye a varias unidades de datos para que la lleven a cabo en paralelo, cada una con sus propios datos.
· Son útiles para los cómputos que repiten los mismos cálculos en varios conjuntos de datos.
MISD (Multiple Instruction Single Data: un flujo de varias instrucciones y un solo flujo de datos):
· No se presenta en la práctica.
MIMD (Multiple Instruction Multiple Data: un grupo de computadoras independientes, cada una con su propio contador del programa, programa y datos):
· Todos los sistemas distribuidos son de este tipo.
Un avance sobre la clasificación de Flynn incluye la división de las computadoras MIMD en dos grupos:
· Multiprocesadores: poseen memoria compartida:
Los distintos procesadores comparten el mismo espacio de direcciones virtuales.
· Multicomputadoras: no poseen memoria compartida:
Ej.: grupo de PC conectadas mediante una red.

Cada una de las categorías indicadas se puede clasificar según la arquitectura de la red de interconexión en:
· Esquema de bus:
Existe una sola red, bus, cable u otro medio que conecta todas las máquinas:
Ej.: la televisión por cable.
· Esquema con conmutador:

No existe una sola columna vertebral de conexión:
Hay múltiples conexiones y varios patrones de conexionado.
Los mensajes de mueven a través de los medios de conexión.
Se decide explícitamente la conmutación en cada etapa para dirigir el mensaje a lo largo de uno de los cables de salida.
Ej.: el sistema mundial telefónico público.

· Otro aspecto de la clasificación considera el acoplamiento entre los equipos:
Sistemas fuertemente acoplados:
El retraso al enviar un mensaje de una computadora a otra es corto y la tasa de transmisión es alta.


1.2.4 Características Software Sistemas Distribuidos

La importancia del software supera frecuentemente a la del hardware

La imagen que un sistema presenta queda determinada en gran medida por el software del S. O. y no por el hardware.

Los S. O. no se pueden encasillar fácilmente, como el hardware, pero se los puede clasificar en dos tipos:

· Débilmente acoplados.
· Fuertemente acoplados.

El software débilmente acoplado de un sistema distribuido:

· Permite que las máquinas y usuarios sean independientes entre sí en lo fundamental.
· Facilita que interactúen en cierto grado cuando sea necesario.
· Los equipos individuales se distinguen fácilmente.

Combinando los distintos tipos de hardware distribuido con software distribuido se logran distintas soluciones:

· No todas interesan desde el punto de vista funcional del usuario:
Ej.: un multiprocesador es un multiprocesador:
· No importa si utiliza un bus con cachés monitores o una red omega.

1.2.5 Direccionamiento Lógico Físico Sistemas Distribuidos

Direccionamiento lógico y físico El proceso desde que los datos son incorporados al ordenados hasta que se transmiten al medio se llama encapsulación. Estos datos son formateados, segmentados, identificados con el direccionamiento lógico y físico para finalmente ser enviados al medio. A cada capa del modelo OSI le corresponde una PDU (Unidad de Datos) siguiendo por lo tanto el siguiente orden de encapsulamiento: DATOS-SEGMENTOS-PAQUETES-TRAMAS-BITS

CAPA TRANSMITE
APLICACIÓN DATOS
PRESENTACION
SESIÓN
TRANSPORTE SEGMENTOS
RED PAQUETES
ENLACE DED DATOS TRAMAS
FÍSICA BITS

Debido a que posiblemente la cantidad de los datos sean demasiados, la capa de transporte desde de origen, se encarga de segmentarlos para así ser empaquetados debidamente, esta misma capa en el destino se encargara de reensamblar los datos y colocarlos en forma secuencial, ya que no siempre llegan a su destino en el orden en que han sido segmentados, así mismo acorde al protocolo que se este utilizando habrá corrección de errores. Estos segmentos son empaquetados (paquetes o datagramas) e identificados en la capa de red con la dirección lógica o IP correspondiente al origen y destino. Ocurre lo mismo con la dirección MAC en la capa de enlace de datos formándose las tramas o frames para ser transmitidos a través de alguna interfaz.


1.3 Concepto Características Sor

Son aquellos sistemas que mantienen a dos o más computadoras unidas a través de algún medio de comunicación (físico o no), con el objetivo primordial de poder compartir los diferentes recursos y la información del sistema.

El primer Sistema Operativo de red estaba enfocado a equipos con un procesador Motorola 68000, pasando posteriormente a procesadores Intel como Novell Netware. Los Sistemas Operativos de red mas ampliamente usados son: Linux,Novell Netware, Personal Netware, LAN Manager, Windows NT Server UNIX.

Una posibilidad es el software débilmente acoplado en hardware débilmente acoplado: Es una solución muy utilizada. Ej.: una red de estaciones de trabajo conectadas mediante una LAN. Cada usuario tiene una estación de trabajo para su uso exclusivo: Tiene su propio S. O. La mayoría de los requerimientos se resuelven localmente. Es posible que un usuario se conecte de manera remota con otra estación de trabajo: Mediante un comando de “login remoto”. Se convierte la propia estación de trabajo del usuario en una terminal remota enlazada con la máquina remota. Los comandos se envían a la máquina remota. La salida de la máquina remota se exhibe en la pantalla local. Para alternar con otra máquina remota, primero hay que desconectarse de la primera: En cualquier instante solo se puede utilizar una máquina. Las redes también disponen de un comando de copiado remoto de archivos de una máquina a otra: Requiere que el usuario conozca: La posición de todos los archivos. El sitio donde se ejecutan todos los comandos. Una mejor solución consiste en un sistema de archivos global compartido, accesible desde todas las estaciones de trabajo: Una o varias máquinas soportan al sistema de archivos: Son los “servidores de archivos”. Los “servidores de archivos”: Aceptan solicitudes de los programas de usuarios: Los programas se ejecutan en las máquinas no servidoras, llamadas “clientes”. Las solicitudes se examinan, se ejecutan y la respuesta se envía de regreso. Generalmente tienen un sistema jerárquico de archivos. Las estaciones de trabajo pueden importar o montar estos sistemas de archivos: Se incrementan sus sistemas de archivos locales. Se pueden montar los servidores en lugares diferentes de sus respectivos sistemas de archivos: Las rutas de acceso a un determinado archivo pueden ser diferentes para las distintas estaciones. Los distintos clientes tienen un punto de vista distinto del sistema de archivos. El nombre de un archivo depende: Del lugar desde el cual se tiene acceso a él. De la configuración del sistema de archivos. El S. O. de este tipo de ambiente debe: Controlar las estaciones de trabajo en lo individual. Controlar a los servidores de archivo. Encargarse de la comunicación entre los servidores. Todas las máquinas pueden ejecutar el mismo S. O., pero esto no es necesario. Si los clientes y los servidores ejecutan diversos S. O., como mínimo deben coincidir en el formato y significado de todos los mensajes que podrían intercambiar. Esquemas como este se denominan “sistema operativo de red”: Cada máquina tiene un alto grado de autonomía. Existen pocos requisitos a lo largo de todo el sistema.

1.4 Concepto Características del Sod

Los sistemas distribuidos están basados en las ideas básicas de transparencia, eficiencia, flexibilidad, escalabilidad y fiabilidad. Sin embargo estos aspectos son en parte contrarios, y por lo tanto los sistemas distribuidos han de cumplir en su diseño el compromiso de que todos los puntos anteriores sean solucionados de manera aceptable.

Transparencia
El concepto de transparencia de un sistema distribuido va ligado a la idea de que todo el sistema funcione de forma similar en todos los puntos de la red, independientemente de la posición del usuario. Queda como labor del sistema operativo el establecer los mecanismos que oculten la naturaleza distribuida del sistema y que permitan trabajar a los usuarios como si de un único equipo se tratara.


En un sistema transparente, las diferentes copias de un archivo deben aparecer al usuario como un único archivo. Queda como labor del sistema operativo el controlar las copias, actualizarlas en caso de modificación y en general, la unicidad de los recursos y el control de la concurrencia.
El que el sistema disponga de varios procesadores debe lograr un mayor rendimiento del sistema, pero el sistema operativo debe controlar que tanto los usuario como los programadores vean el núcleo del sistema distribuido como un único procesador. El paralelismo es otro punto clave que debe controlar el sistema operativo, que debe distribuir las tareas entre los distintos procesadores como en un sistema multiprocesador, pero con la dificultad añadida de que ésta tarea hay que realizarla a través de varios ordenadores.

Eficiencia
La idea base de los sistemas distribuidos es la de obtener sistemas mucho más rápidos que los ordenadores actuales. Es en este punto cuando nos encontramos de nuevo con el paralelismo.
Para lograr un sistema eficiente hay que descartar la idea de ejecutar un programa en un único procesador de todo el sistema, y pensar en distribuir las tareas a los procesadores libres más rápidos en cada momento.



La idea de que un procesador vaya a realizar una tarea de forma rápida es bastante compleja, y depende de muchos aspectos concretos, como la propia velocidad del procesador, pero también la localidad del procesador, los datos, los dispositivos, etc. Se han de evitar situaciones como enviar un trabajo de impresión a un ordenador que no tenga conectada una impresora de forma local.

Flexibilidad
Un proyecto en desarrollo como el diseño de un sistema operativo distribuido debe estar abierto a cambios y actualizaciones que mejoren el funcionamiento del sistema. Esta necesidad ha provocado una diferenciación entre las dos diferentes arquitecturas del núcleo del sistema operativo: el núcleo monolítico y el micronúcleo. Las diferencias entre ambos son los servicios que ofrece el núcleo del sistema operativo. Mientras el núcleo monolítico ofrece todas las funciones básicas del sistema integradas en el núcleo, el micronúcleo incorpora solamente las fundamentales, que incluyen únicamente el control de los procesos y la comunicación entre ellos y la memoria. El resto de servicios se cargan dinámicamente a partir de servidores en el nivel de usuario.

Escalabilidad
Un sistema operativo distribuido debería funcionar tanto para una docena de ordenadores como varios millares. Igualmente, debería no ser determinante el tipo de red utilizada (LAN o WAN) ni las distancias entre los equipos, etc.
Aunque este punto sería muy deseable, puede que las soluciones válidas para unos cuantos ordenadores no sean aplicables para varios miles. Del mismo modo el tipo de red condiciona tremendamente el rendimiento del sistema, y puede que lo que funcione para un tipo de red, para otro requiera un nuevo diseño.
La escalabilidad propone que cualquier ordenador individual ha de ser capaz de trabajar independientemente como un sistema distribuido, pero también debe poder hacerlo conectado a muchas otras máquinas.

Fiabilidad
Una de las ventajas claras que nos ofrece la idea de sistema distribuido es que el funcionamiento de todo el sistema no debe estar ligado a ciertas máquinas de la red, sino que cualquier equipo pueda suplir a otro en caso de que uno se estropee o falle.
La forma más evidente de lograr la fiabilidad de todo el sistema está en la redundancia. La información no debe estar almacenada en un solo servidor de archivos, sino en por lo menos dos máquinas. Mediante la redundancia de los principales archivos o de todos evitamos el caso de que el fallo de un servidor bloquee todo el sistema, al tener una copia idéntica de los archivos en otro equipo.
Otro tipo de redundancia más compleja se refiere a los procesos. Las tareas críticas podrían enviarse a varios procesadores independientes, de forma que el primer procesador realizaría la tarea normalmente, pero ésta pasaría a ejecutarse en otro procesador si el primero hubiera fallado.

Comunicación
La comunicación entre procesos en sistemas con un único procesador se lleva a cabo mediante el uso de memoria compartida entre los procesos. En los sistemas distribuidos, al no haber conexión física entre las distintas memorias de los equipos, la comunicación se realiza mediante la transferencia de mensajes.

Autor: Lic. Marcos Guadalupe Ventura Osorio 261-v TESCI 2009

2

SISTEMAS OPERATIVOS DE RED Y SISTEMAS OPERATIVOS DISTRIBUIDOS

Posted by DARKBLADE on 16:30



SISTEMAS OPERATIVOS DE RED (NOS)


DEFINICION DE SISTEMA OPERATIVO DE RED (NOS)


Un sistema operativo de red (Network Operating System) es un componente software de una computadora que tiene como objetivo coordinar y manejar las actividades de los recursos del ordenador en una red de equipos. Consiste en un software que posibilita la comunicación de un sistema informático con otros equipos en el ámbito de una red. Dependiendo del fabricante del sistema operativo de red, tenemos que el software de red para un equipo personal se puede añadir al propio sistema operativo del equipo o integrarse con él. Netware de Novell es el ejemplo más familiar y famoso de sistema operativo de red donde el software de red del equipo cliente se incorpora en el sistema operativo del equipo. El equipo personal necesita ambos sistema operativos para gestionar conjuntamente las funciones de red y las funciones individuales.



Características de los Sistemas Operativos de Red
En general, se puede decir que un Sistema Operativo tiene las siguientes características:
o Conveniencia. Un Sistema Operativo hace más conveniente el uso de una computadora.
o Eficiencia. Un Sistema Operativo permite que los recursos de la computadora se usen de la manera más eficiente posible.
o 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.
o Encargado de administrar el hardware. El Sistema Operativo se encarga de manejar de una mejor manera los recursos de la computadora en cuanto a hardware se refiere, esto es, asignar a cada
proceso una parte del procesador para poder compartir los recursos.
o Relacionar dispositivos (gestionar a través del kernel). El Sistema Operativo se debe encargar de comunicar a los dispositivos
periféricos, cuando el usuario así lo requiera.
o Organizar datos para acceso rápido y
seguro.
o Manejar las
comunicaciones en red. El Sistema Operativo permite al usuario manejar con alta facilidad todo lo referente a la instalación y uso de las redes de computadoras.
o Procesamiento por bytes de flujo a través del
bus de datos.
o Facilitar las entradas y salidas. Un Sistema Operativo debe hacerle fácil al usuario el acceso y manejo de los dispositivos de Entrada/Salida de la computadora.
o Técnicas de recuperación de errores.
o Evita que otros usuarios interfieran. El Sistema Operativo evita que los usuarios se bloqueen entre ellos, informándoles si esa aplicación esta siendo ocupada por otro usuario.
o Generación de
estadísticas.
o Permite que se puedan compartir el hardware y los datos entre los usuarios.
· Sistemas Operativos de red.
· Son aquellos sistemas que mantienen a dos o más
computadoras unidas através de algún medio de comunicación (fisico o no), con el objetivo primordial de poder compartir los diferentes recursos y la información del sistema.
· El primer Sistema Operativo de red estaba enfocado a equipos con un procesador Motorola 68000, pasando posteriormente a procesadores Intel como Novell Netware.
· Los Sistemas Operativos de red mas ampliamente usados son: Novell Netware, Personal Netware,
LAN Manager, Windows NT Server, UNIX, LANtastic.



SISTEMAS OPERATIVOS DISTRIBUIDOS (OSD)


Definición y objetivos de un sistema distribuido


Existen muchas definiciones y no siempre coincidentes. Nosotros diremos que un sistema distribuido es un cojunto de computadores independientes que se presenta a los usuarios como un sistema único. En esta definición cabe destacar dos aspectos. Uno, el hardware. La definición habla de máquinas autónomas, es decir, que pueden operar sin la supervisión de ninguna otra. Dos, el software, que debe conseguir que los usuarios del sistema lo vean como una máquina central convencional única.

Concepto de Sistemas Operativos distribuidos.
Permiten distribuir trabajos, tareas o procesos, entre un conjunto de procesadores. Puede ser que este conjunto de procesadores esté en un equipo o en diferentes, en este caso es trasparente para el usuario. Existen dos esquemas básicos de éstos. Un sistema fuertemente acoplado es a es aquel que comparte la memoria y un reloj global, cuyos tiempos de acceso son similares para todos los procesadores. En un sistema débilmente acoplado los procesadores no comparten ni memoria ni reloj, ya que cada uno cuenta con su memoria local.



Los sistemas distribuidos deben de ser muy confiables, ya que si un componente del sistema se compone otro componente debe de ser capaz de reemplazarlo.



Entre los diferentes Sistemas Operativos distribuidos que existen tenemos los siguientes: Sprite, Solaris-MC, Mach, Chorus, Spring, Amoeba, Taos, etc.



Aspectos de los Sistemas Operativos distribuidos:
· Colección de sistemas autónomos capaces de comunicación y cooperación mediante interconexiones hardware y software .
· Gobierna operación de un S.C. y proporciona abstracción de máquina virtual a los usuarios.
· Objetivo clave es la transparencia.
· Generalmente proporcionan medios para la compartición global de recursos.
· Servicios añadidos: denominación global, sistemas de archivos distribuidos, facilidades para distribución de cálculos (a través de comunicación de procesos internodos, llamadas a procedimientos remotos, etc.).



Caracteristicas de Sistemas Distribuidos

Hasta aquí nos hemos dedicado a hacer un repaso del hardware sobre el que puede construirse un sistema distribuido y del tipo de software que da al usuario del mismo una vista o apariencia más o menos integrada. En el resto del capítulo vamos a detenernos en los aspectos que hay que considerar en la construcción de un sistema para que pueda ser entendido como realmente distribuido. Estos aspectos son la transparencia, la flexibilidad, la fiabilidad, las prestaciones y la escalabilidad.

Trasparencia

Se dice que un sistema distribuido es trasparente cuando es visto tanto por el usuario como por el programador como un sistema convencional de tiempo compartido. La trasparencia total es difícil de lograr. Parcialmente, el concepto de transparencia puede ser aplicado a varios aspectos de un sistema distribuido.

La transparecia a la ubicación consiste en que los nombres de los recursos no estén ligados a las máquinas concretas. Por ejemplo, en un sistema que sea transparente a la localidad, no se permiten en una llamada al sistema open nombres como maquina1/home/pipo/agenda. La transparencia a la migración es un concepto un tanto más elaborado. Consiste en que los recursos, si bien su nombre no depende de su localización, cuando esta cambia, el nombre del recurso cambia. Consideremos un sistema con dos servidores de ficheros. Los usuarios ven el directorio raíz del primer servidor como el directorio /libros y el segundo como /articulos. Supongamos que en el servidor segundo tenemos el directorio actaInf93, que los usuarios ven como /artículos/actaInf93. El administrador del sistema puede considerar que los artículos del directorio actaInf93, que han sido compilados y editados en una publicación única, deben ser considerados como un libro, de modo que son migrados al otro servidor en el directorio actaInf93. Ahora, el usuario no ve el directorio /articulos/actaInf93 y sí percibe que ha aparecido el directorio /libros/actaInf93. Este cambio en la ubicación física de un directorio ocasiona que el nombre del directorio cambie de nombre. Se puede decir que este sistema de ficheros no es transparente a la migración.

Para aumentar la seguridad de los sistemas, en ocasiones se replican ciertos recursos. La transparencia a la replicación consiste en que el nombre de los recursos debe ser independientes de la réplica concreta. En el ejemplo anterior, el directorio /actaInf93 puede residir en los dos servidores para mayor seguiridad. Sin embargo cada réplica tendría un nombre asociado, bien /artículos/actaInf93, bien /libros/actaInf93. Un sistema de ficheros transparente a la replicación sería aquel en el cual varios servidores dispuestos en un anillo lógico mantuviesen la misma jerarquía de directorios, pero los ficheros no se encuentran en todas las máquinas. El sistema decide en qué máquinas replicar un fichero. Cuando se produce un acceso a un fichero por parte de un proceso, la petición se dirige al primer servidor. Si no está el fichero, la solicitud se redirije al siguiente, etc. El primer servidor que mantenga el fichero atenderá la petición. Lo importante es que el nombre del fichero es independiente de si el fichero está replicado o no, cuántas veces y en qué máquinas.

Otro aspecto de la transparencia es la denominada transparencia a la concurrencia. En ocasiones, en un sistema de tiempo compartido dos procesos acceden al mismo registro de un fichero. El que dicha posibilidad exista no debe influir en la forma que es accedido el fichero en el proceso de usuario. Este sistema de acceso debiera se transparente a la concurrencia.

Sin duda alguna, la transparencia más difícil de alcanzar es la transparencia al paralelismo. Cuando se dispone de más de una UCP, los problemas se pueden descomponer en procesos, cada uno de ellos ejecutando en una UCP y comunicándose a través de mensajes. Esta aproximación exige del programador que conozca de cúantas UCP dispone su sistema y conozca que su programa admite una descomposición en actividades que pueden ser ejecutadas en paralelo. Sería ideal que el compilador del programa y el sistema operativo llevasen a cabo dicha descomposición. Desgraciadamente, el estado actual de los conocimientos en nos sitúa aún muy lejos de lograr la transparencia al paralelismo.

Flexibilidad

Este aspecto se refiere a la forma en que debe ser construido el sistema operativo. Conviven dos escuelas de pensamiento que son las del kernel monolítico y las del sistema operativo basado en microkernel. La primera sostiene que los servicios del sistema deben residir en el sistema operativo y la segunda que es preciso extraer todos los servicios posibles fuera del núcleo del sistema operativo y disponerlos en procesos de usuario, logrando un mayor estructura e independencia en los servicios, que pueden residir en máquinas diferentes. Hoy en día el kernel monolítico domina el mundo de los sistemas operativos, pero parece que el futuro se impondrá la filosofía microkernel, debido a su mayor flexibilidad. Para obtener un servicio, un proceso de usuario envía un mensaje al servidor adecuado. El kernel sólo se ocupa de realizar el paso del mensaje y es el proceso de usuario quien realiza el trabajo cuado recibe el mensaje. Es la facilidad para añadir, suprimir y modificar los servicios los que que da la flexibilidad al sistema microkernel. Por ejemplo, puede fácilmente disponerse de dos sistemas de ficheros, UNIX, donde los discos mantienen la asignación de los ficheros en i-nodos y MS-DOS, donde los discos mantienen la FAT. Con un kernel monolítico, el sistema de ficheros es el que es y no puede modificarse. La única ventaja de los kernel monolíticos sobre los microkernels es su mayor velocidad debido a la ausencia de tráfico de mensajes. Sin embargo, en los sistemas operativos distribuidos existen otros factores a considerar además del tráfico de mensajes que minimizan el impacto de estos en las prestaciones del sistema global, de modo que en un futuro previsible se impondrán los sistemas microkernel.

Fiabilidad

Una de las motivaciones originales para tratar de construir sistemas distribuidos fue el aumento de la fiabilidad del sistema. En un sistema con cien UCP's el fallo de uno de ellas no tendrá consecuencias graves, por que su trabajo será realizado por las otras. En un sistema en el que el sistema de ficheros se reparte en cuatro servidores, cada uno de ellos con una probabilidad de que en un instante dado sea inoperativo de 0.05, la probabilidad de que el sistema de ficheros completo no sea operativo es de 0.054 = 0.000006. No obstante, esta es sólo parte de la verdad. Una cita muy famosa de Leslie Lamport define un sistema distribuido como aquel en el que nunca se puede hacer nada porque siempre necesita de un servicio que presta una máquina que uno nunca sabe donde está que se ha estropeado. Así, el ejemplo anterior puede interpretarse del siguiente modo. Ya que la probabilidad de que uno de los servidores esté disponible es del 0.95, la probabilidad de que un proceso que necesite acceder a los cuatro servidores pueda ejecutarse es de 0.954 = 0.84.

La fiablilidad tiene varios aspectos. Uno es la disponibilidad, que es la fracción de tiempo en que el sistema es operativo. La disponibilidad aumenta cuando no es preciso que muchos componentes críticos del sistema necesiten estar operativos simultáneamente, pero desde luego la clave para garantizar la disponibilidad es la replicación de los componentes, sean software o hardware. Si uno falla, otro estará disponible. La redundancia, no obstante, acarrea otros problemas. Entre ellos está la consistencia de los datos. A mayor número de copias, mayor es la probabilidad de que se produzcan inconsistencias, especialmente si al número de escrituras es muy alto.

Otro aspecto de la fiablidad es el de la seguridad de los datos, que deben ser protegidos contra accesos no autorizados que los corrompan o eliminen. La problema de seguridad crece en los sistemas distribuidos debido al aumento del número de mensajes que circulan por las líneas de comunicación, que pueden ser interceptados e impostados por máquinas ajenas al sistema. Supongamos un sistema distribuido formado por las máquinas A, B, C y D. Si la máquina F tiene acceso a las líneas de comunicación, F puede enviar un mensaje a A solicitándola un servicio como puede ser el acceso a determinado registro de datos confidencial. En el campo del mensaje que determina la máquina fuente siempre puede insertar el nombre de la máquina B. La máquina A no tiene medio de saber que el mensaje ha sido impostado y contesta a la máquina B. Este mensaje también es interceptado o leído por la máquina F.

Prestaciones
Por muy brillantemente que hayan sido resueltos los objetivos de transparencia y fiabilidad de un sistema operativo distribuido, este no tendrá éxito si es lento. La velocidad de los sistemas distribuidos viene comprometida por el tráfico de mensajes en las líneas de comunicación. En una red local, el envío de un mensaje puede llevar alrededor de un milisegundo. La mayoría de este tiempo se gasta en la ejecución de los protocolos de comunicacióne en ambos extremos de la línea. El aumento de velocidad pasa necesariamente por minimizar el número de mensajes intercambiados. Por una parte, el descomponer un problema en actividades que pueden ser ejecutadas en paralelo y asignarlas a distintos procesadores es la mejor manera de resolver el problema de forma eficiente. Por otra parte, a mayor número de procesadores, mayor es el número de mensajes intercambiados. Aparece así el concepto de la granularidad de los cálculos. El problema de sumar cuatro enteros puede ser descompuesto en dos subproblemas. El primero es sumar los dos primeros números y el segundo el sumar los dos últimos. Desde luego no merece la pena el solicitar un servicio remoto para sumar dos enteros por que el costo de las comunicaciones es incomparablemente mayor que el ahorro de tiempo conseguido en su ejecución simultánea. En general, se puede decir que un sistema operativo distribuido dará pocas prestaciones en problemas de granularidad fina, es decir aquellos en que muestran muchos cálculos pequeños que se comunican intensamente. Si son apropiados en la resolución de problemas de granularidad gruesa, aquellos que exiben unos pocos bloques de cálculo independientes y pocas necesidades de comunicación.

Escalabilidad
A pesar de los progresos de los últimos años, con sistemas concretos y desarrollados, el diseño de sistemas operativos distribuidos es un campo aún poco conocido e investigado. Los actuales sistemas abarcan como máximo unos cientos de máquinas. A medida que la informática se introduce en las actividades cotidianas y el ordenador se introduce en los hogares, comienzan a perfilarse sistemas de miles de millones de máquinas. La pregunta que se plantea es la siguiente. ¿Los métodos y algoritmos utilizados en los sistemas operativos distribuidos actuales son apropiados, es decir, escalan adecuadamente cuando el número de componentes aumenta en órdenes de magnitud?

Aunque se sabe aún muy poco acerca de estos enormes sistemas futuros, una cosa parece estar clara: hay que evitar componentes, estructuras de datos -tablas, etc- y algoritmos que operen de forma centralizada. En cuanto a los componentes o máquinas, es posible tener un único servidor que atienda a cuatro cientos millones de hispanohablantes, pero más vale repartir su carga de trabajo entre otros servidores a fin de paliar los esfectos de una interrupción del servicio. En cuanto a las tablas, se puede mantener los números de teléfono de cuatrocientos millones de personas en una sóla máquina. Supongamos un registro de 50 caracteres. El listado total requiere un almacenamiento de 50 * 4 * 108 = 20 * 109 = 20 Gbytes, que puede soportar incluso una única unidad de disco. No obstante, concentrar las peticiones en está máquina saturaría no sólo su UCP sino las líneas de comununicación que salen y entran en el sistema.

Centralizar algoritmos tampoco es una buena idea. En un sistema distribuido grande, una cantidad enorme de mensajes debe ser encaminada a lo largo de muchas líneas y máquinas. La forma más eficiente de hacer esto es recabar periódicamente toda la información de la carga de todas las líneas y máquinas en una máquina central. Con la información obtenida esta máquina calculará todas las rutas óptimas empleando un algoritmo de teoría de teoría de grafos. Sus resultados serán después extendidos al resto de las máquinas del sistema. Una máquina única prestando servicios a demasiados clientes hemos visto que es inadecuada. En general, algoritmos que exijan el requerir información a todos los componentes, realizar cálculos con la información recabada y después distribuir los resultados deben ser evitados. Sólo deben usarse algoritmos descentralizados, que tienen las siguientes características.

· 1. Ninguna máquina tiene información completa acerca de todo el sistema.
· 2. Las máquinas toman decisiones basadas sólamente en información local.
· 3. El fallo de una de las máquinas no malogra el algoritmo.
· 4. No existe un reloj común.

Este último aspecto quizás se entienda peor. En una red local, las máquinas se pueden sincronizan en un intervalo del milisegundo, pero sincronizar máquinas a nivel nacional, por ejemplo, es más complicado.












Autor: Lic. Marcos Guadalupe Ventura Osorio 261-v TESCI 2009

0

BIOMETRIA APLICADA EN EL MUNDO!

Posted by DARKBLADE on 12:08





¿Qué es la biometría?
La biometría es una tecnología de seguridad basada en el reconocimiento de una característica física e intransferible de las personas, como por ejemplo, la huella digital.
Biometría es un sistema automatizado de reconocimiento humano basado en las características físicas y comportamiento de las personas. Es el mismo sistema que utiliza el cerebro humano para reconocer y distinguir una persona de la otra. Es un sistema que reconoce a la persona basado en "quien" es la persona, no importando "lo que la persona está llevando" o "lo que la persona conoce". Cosas que una persona puede llevar, así como llaves y tarjetas de identificación, pueden ser perdidas, sustraídas y/o duplicadas. Cosas que una persona conoce, tales como passwords y códigos, pueden ser olvidados, sustraídos y/o duplicados. El lugar de ello, la biometría se fija en "quién" es la persona, basándose en una única e inalterable característica humana que no puede ser perdida, olvidada, sustraída o duplicada.

Biometría, por lo tanto, proporciona el máximo nivel de seguridad, conveniencia y facilidad de usar.

CONCEPTOS GENERALES DE LA BIOMETRÍA
El termino biometría viene del griego "bio" que significa vida y "metría" que significa medida o
medición, de acuerdo al diccionario de la real academia de la lengua española biometría es el estudio mensurativo o estadístico de los fenómenos o procesos biológicos, sin embargo más recientemente y para el tema que nos concierne el significado de biometría es el conjunto de métodos automatizados que analizan determinadas características humanas para identificar o autentificar personas.

La biometría aprovecha que hay ciertas características biológicas o conductuales singulares e inalterables, por lo que pueden ser analizados y medidos para crear una huella biométrica. Estas características son difíciles de perder, transferir u olvidar y son perdurables en el tiempo.

La biometría se soporta en siete pilares o conceptos básicos que son:
· Universalidad: que tan común es encontrar este biométrico en los individuos.
· Singularidad: que tan único o diferenciable es la huella biométrica entre uno y otro individuo.
· Permanencia: que tanto perdura la huella biométrica en el tiempo de manera inalterable.
· Recolectable: Que tan fácil es la adquisición, medición y almacenamiento de la huella biométrica.
· Calidad: que tan preciso, veloz y robusto es el sistema en el manejo de la huella biométrica.
· Aceptabilidad: Que tanta aprobación tiene la tecnología entre el público.
· Fiabilidad: Que tan fácil es engañar al sistema de autenticación.


En la biometría se distinguen dos
grupos de registros biométricos los fisiológicos o morfológicos y los conductuales.
Los biométricos morfológicos o fisiológicos son aquellos que se soportan sobre características físicas inalterables y presentes en la mayoría de los seres humanos tales como: huella dactilar,
geometría de la mano, características del iris, patrones vasculares de la retina, mano, etc

Los biométricos conductuales son aquellos que se soportan sobre características de la
conducta del ser humano tales como: pulsaciones del teclado, discurso, dinámica de la firma, etc.


MODALIDADES BIOMÉTRICAS
Las tecnologías biométricas de mayor uso hoy y con más apoyo por las
industrias comerciales son: la huella digital, el reconocimiento facial, la geometría de la mano, el iris, la voz, la firma.
AUTOR: Lic. Marcos Guadalupe Ventura Osorio 261-V TESCI 2009










Copyright © 2009 SISTEMAS OPERATIVOS II All rights reserved. Theme by Laptop Geek. | Bloggerized by FalconHive.