Existen muchas definiciones y no siempre coincidentes. Nosotros diremos que un sistema distribuido es un conjunto 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.
El diseño e investigación de herramientas para los sistemas operativos centralizados convencionales, los cuales corren en sistemas de uno o varios procesadores, está muy bien entendido. Sin embargo la proliferación de estaciones de trabajo personales y redes de área local ha llevado al desarrollo de nuevos conceptos del sistema operativo, a saber sobre, sistemas operativos en red y sistemas operativos distribuidos.
Antes de empezar no hay que confundir un Sistema Operativo de Red con un Sistema Operativo Distribuido. En un Sistema Operativo de Red las computadoras están interconectadas por medios de comunicación: software y hardware. En este tipo de red los usuarios saben dónde están ejecutando su trabajo y guardando su información. En cambio en los Sistemas Operativos Distribuidos existe un software que distribuye las tareas de los usuarios sobre una red de computadoras y para los usuarios es transparente donde realizan sus tareas y guardan su información.
Existen dos esquemas básicos de éstos sistemas. 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.
1. REPUBLICA BOLIVARIANA DE VENEZUELA
INSTITUTO UNIVERSITARIO POLITECNICO
‘SANTIAGO MARIÑO’
SEDE BARCELONA
Sistemas operativos distribuidos
Profesor: Bachiller:
Amelia Vasquez Velasquez Daniela
Sistemas Operativos ‘S9’ C.I.: 26.520.400
Barcelona, Marzo del 2018
2. Introducción
Existen muchas definiciones y no siempre coincidentes. Nosotros diremos que un sistema distribuido es un conjunto
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.
El diseño e investigación de herramientas para los sistemas operativos centralizados convencionales, los cuales
corren en sistemas de uno o varios procesadores, está muy bien entendido. Sin embargo la proliferación de
estaciones de trabajo personales y redes de área local ha llevado al desarrollo de nuevos conceptos del sistema
operativo, a saber sobre, sistemas operativos en red y sistemas operativos distribuidos.
Antes de empezar no hay que confundir un Sistema Operativo de Red con un Sistema Operativo Distribuido. En un
Sistema Operativo de Red las computadoras están interconectadas por medios de comunicación: software y
hardware. En este tipo de red los usuarios saben dónde están ejecutando su trabajo y guardando su información. En
cambio en los Sistemas Operativos Distribuidos existe un software que distribuye las tareas de los usuarios sobre una
red de computadoras y para los usuarios es transparente donde realizan sus tareas y guardan su información.
Existen dos esquemas básicos de éstos sistemas. 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.
3. Sistemas operativos distribuidos
Los sistemas operativos distribuidos desempeñan las mismas funciones que un sistema
operativo normal, pero con la diferencia de trabajar en un entorno distribuido. Su Misión principal
consiste en facilitar el acceso y la gestión de los recursos distribuidos en la red.
En un sistema operativo distribuido los usuarios pueden acceder a recursos remotos de la
misma manera en que lo hacen para los recursos locales. 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, lo cual es transparente para el usuario.
Los sistemas distribuidos deben de ser muy confiables y estables ya que si un componente
del sistema se descompone otro componente debe de ser capaz de reemplazarlo inmediatamente
y no afectar los procesos del sistema.
Entre los diferentes Sistemas Operativos distribuidos que existen tenemos los siguientes:
Sprite, Solaris-MC, Mach, Chorus, Spring, Amoeba, Taos, etc.
4. Tipos Sistemas operativos distribuidos
•Chorus: es un micro kernel embebido de tiempo real
típicamente usado en ambientes de aplicaciones distribuidas
dedicadas de bajo costo, que necesitan un mínimo de
funcionalidad y un mínimo uso de memoria, tal como líneas de
tarjetas de crédito, teléfonos portables, y dispositivos de mano.
Pero también se encuentra en otras aplicaciones embebidas
como impresoras, autómatas, etc. es un sistema operativo
altamente escalable y de implementación confiable, tanto así que
se ha establecido entre los proveedores superiores de
telecomunicaciones.
•Mach: Mach es un núcleo de sistema operativo desarrollado en
la Carnegie-Mellon University (CMU) para soportar la
investigación de sistemas operativos, principalmente
computación distribuida y paralela. Funciona con velocidades
cambiantes en redes entre computadores, desde redes
extendidas hasta redes locales de alta velocidad y
multiprocesadores fuertemente acoplados.
•Amoeba: Es un SO distribuido simple y flexible. En dicho
sistema el kernel se limita a suministrar ciertos servicios
básicos y el resto de funcionalidad está implementado
mediante servidores que ejecutan como tareas de usuario. Los
servicios suministrados por el kernel incluyen threads,
segmentos de memoria, mecanismos de IPC (RPCs y
mensajes) y E/S . Podemos decir que fue un sistema
innovador y, en muchos sentidos, un adelantado a su tiempo.
5. Sprite es el nombre de un sistema operativo distribuido con un núcleo
monolítico desarrollado por la University of California, Berkeley, más
concretamente por el grupo de investigación de John Ousterhout.
Este sistema operativo tiene la apariencia para los programadores de un
sistema único, ya que la distribución se produce dentro del propio núcleo y de
este modo, Sprite nos da la impresión de estar trabajando sobre un típico
sistema UNIX.
GNU Hurd
Es un conjunto de programas servidores que simulan un núcleo Unix que
establece la basedel sistema operativo GNU. El Proyecto GNU lo ha estado
desarrollando desde 1990 comosoftware libre, distribuyéndolo bajo la
licencia GPL. Hurd intenta superar los núcleos tipoUnix en cuanto a
funcionalidad, seguridad y estabilidad, aun manteniéndose compatible
con ellos. Esto se logra gracias a que Hurd implementa la especificación PO
SIX (interfazportable del sistema operativo), pero eliminando
las restricciones arbitrarias a los usuarios.
Taos
Taos es un sistema operativo basado en Kernels. Que introducen
técnicas novedosas comola compilación en demanda para tolerar
sistemas heterogéneos. Taos es capaz de operar ensistemas
heterogéneos sin incurrir en la ineficiencia que el uso de una máquina
abstractaconlleva como ocurre en el caso de Java.Taos combina el
enlazado de código con la traducción a nativo en demanda de tal modo
quetodo el sistema está compuesto por una serie de
nodos
(la abstracción básica en Taos) quebásicamente son paquetes de datos
de tamaño variable susceptibles de enlazarse entre si.
6. Características Sistemas distribuidos
•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.
7. •Núcleo monolítico: Como ejemplo de sistema operativo de núcleo monolítico está UNIX. Estos sistemas tienen un núcleo grande y
complejo, que engloba todos los servicios del sistema. Está programado de forma no modular, y tiene un rendimiento mayor que un
micronúcleo. Sin embargo, cualquier cambio a realizar en cualquier servicio requiere la parada de todo el sistema y la recompilación
del núcleo.
•Micronúcleo: La arquitectura de micronúcleo ofrece la alternativa al núcleo monolítico. Se basa en una programación altamente
modular, y tiene un tamaño mucho menor que el núcleo monolítico. Como consecuencia, el refinamiento y el control de errores son más
rápidos y sencillos. Además, la actualización de los servicios es más sencilla y ágil, ya que sólo es necesaria la recompilación del
servicio y no de todo el núcleo. Como contraprestación, el rendimiento se ve afectado negativamente.
•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
8. Gestión de memoria
La memoria compartida distribuida es una abstracción que permite que los procesos que ejecutan en un sistema
distribuido puedan comunicarse utilizando memoria compartida. Esta abstracción se construye utilizando: el paso
de mensajes disponible. El empleo de memoria compartida como mecanismo de comunicación': facilita el
desarrollo de aplicaciones, ya que el modelo de programación es más sencillo y lá sincronización puede realizarse
utilizando construcciones tradicionales, cómo pueden ser los semáforos.
La memoria compartida.distribuida se implementa utilizando paso de mensajes para distribuir los datos a las
memorias de las distintas computadoras. No hay que olvidar que para poder ejecutar un programa es necesario
que éste, junto con sus datos, resida en memoria principal. La distribución de los datos, normalmente páginas, se
puede hacer replicando páginas en distintas computadoras o migrando páginas de una computadora a otra.
El empleo de replicación conlleva a la existencia de múltiples copias de una página, con los posibles problemas de
coherencia que ello puede plantear. La migración, en cambio, se basa en no permitir la existencia de múltiples
copias. Cuando un proceso requiere acceso a una página (se habrá producido un fallo de página en la
computadora en la que ejecuta), el sistema' de memoria compartida distribuida se encargará de transferir la
página del lugar en el que se encuentre (en esta computadora la página se marcará como no presente) hasta lá
computadora que provocó el fallo. Este enfoque elimina los posibles problemas de coherencia en el acceso a
datos compartidos, pero el rendimiento del sistema puede degradarse en caso de accesos muy frecuentes por
parte de diferentes procesos a una misma página,-puesto que ésta estará transfiriéndose constantemente de una
máquina a otra.
9. Ventajas y desventajas
•Una de las ventajas de los sistemas distribuidos es la
economía, pues es mucho más barato añadir servidores y
clientes, que adquirir equipos de mayor potencia de cómputo,
cuando se requiere aumentar la potencia de procesamiento.
Otra ventaja es el trabajo en conjunto. Por ejemplo: en una
fábrica de ensamblado, los robots tienen sus CPUs diferentes y
realizan acciones en conjunto, dirigidos por un sistema
distribuido.
• Los S.O.D. tienen una mayor confiabilidad. Al estar
distribuida la carga de trabajo en muchas máquinas la falla de
una de ellas no afecta el trabajo individual de las demás, el
sistema sobrevive como un todo, herido, pero sobrevive. Otra
ventaja es la Capacidad de crecimiento incremental. Se pueden
añadir procesadores al sistema incrementando su potencia en
forma gradual según sus necesidades.
•Ahora bien las ventajas de un S.O.D. con respecto a PCs
Independientes son que se pueden compartir recursos, como
programas y periféricos, muy costosos. Esto abarca satélites,
Impresoras, dispositivos de almacenamiento, señales de video
para broadcast, metrología, espectrómetros, microscopios etc.
Pero también se comparte la interacción en el dominio de los
usuarios, al establecer comunicaciones múltiples se pueden
atender las necesidades de muchos usuarios a la vez, lo que
constituye un servicio global
•Por muy maravillosos que nos puedan parecer los
sistemas operativos distribuidos, también tienen
sus desventajas. La sincronización del sistema es
una tarea árdea de la cual nunca se descansa y la
estandarización del sistema es un tanto complicada
y limitante.
•Debido a que no todos los sistemas operativos
son de carácter distribuido enlazar los distintos
tipos de sistemas operativos es un poco
complicado.
•El interés de hacer el SOD lo más transparente
posible lo hace muy complicado en su
programación y el lograr que el sistema operativo
no tenga problemas para que no cause problemas
a otros equipos que le asignaron tareas es un poco
dificultoso.
10. Sistemas operativos de red
Los sistemas operativos de red (Network Operating System, NOS), son aquellos S.O. que además de incorporar
herramientas propias de un sistema operativo como son por ejemplo las herramientas para manejo de ficheros y
directorios, incluyen otras para el uso, gestión y mantenimiento de la red, así como herramientas destinadas a
correo electrónico, envío de mensajes, copia de ficheros entre nodos, ejecución de aplicaciones contenidas en otras
máquinas, compartición de recursos hardware etc.
El sistema operativo de red determina estos recursos, así como la forma de compartirlos y acceder a ellos. Para
determinar el sistema operativo de red más adecuado, es necesario establecer en primer lugar la arquitectura de la
red, es decir, si va a ser cliente/servidor o trabajo en grupo.
Esta decisión suele estar condicionada por el tipo de seguridad que se requiere. Después de identificar las
necesidades de seguridad de la red, hay que determinar los tipos de interoperabilidad necesaria en la red.
11. Características de sistemas de red
Después de cumplir todos los requerimientos de hardware para instalar una LAN, se necesita instalar un sistema operativo
de red (Network Operating System, NOS), que administre y coordine todas las operaciones de dicha red. Los sistemas
operativos de red tienen una gran variedad de formas y tamaños, debido a que cada organización que los emplea tiene
diferentes necesidades. Algunos sistemas operativos se comportan excelentemente en redes pequeñas, así como otros se
especializan en conectar muchas redes pequeñas en áreas bastante amplias. Pero en general, las características
genéricas de un sistema operativo de red son:
•Conecta todos los equipos y recursos de la red.
•Gestión de usuarios centralizada.
•Proporciona seguridad, controlando el acceso a los datos y recursos. Debe validar los accesos (claves, certificados,
sistemas biométricos, etc.) y ver aplicar las políticas de seguridad.
•Coordina las funciones de red, incluso con las propias del equipo.
•Comparte recursos (lleva a cabo la coordinación y los privilegios a la hora de compartir). Por tanto, mejora notablemente
la utilización de los recursos.
•Permite monitorizar y gestionar la red y sus componentes.
•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.
•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.
•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.
12. Ventajas y desventajas
La gestión se vuelve más sencilla:
•La gestión de los recursos y equipos de la
red se hace de forma centralizada.
•Puede conectar los equipos y recursos de
la red.
•Coordina funciones de periféricos y
recursos.
•Proporciona seguridad en el control de
acceso.
•Optimiza la utilización de los recursos
•Equipos más caros y potentes para actuar
como servidores.
•Coste del sistema operativo (coste por
conexiones simultáneas...)
•Sistema crítico: necesidad de redundancia,
personal especializado, etc.
13. Robustez aspecto de diseño
•Transparencia
•Fiabilidad
•Rendimiento
•Escalabilidad
•Flexibilidad
Sistemas operativos distribuido vs Sistemas distribuidos
Existe una diferencia vital entre los sistemas operativos distribuidos y los sistemas distribuidos. Podríamos
llamar a un Sistema Distribuido una capacidad del Sistema operativo Distribuido, es decir: Un sistema
distribuido es la relación que existe entre una computadora independiente y un servidor de archivos o
dispositivos compartidos.
Cada computadora ejecuta sus programas en su memoria propia haciendo uso de su único microprocesador
y memoria, este no comparte memoria ni asigna tareas a otros procesadores de la red. Sin embargo, un
Sistema operativo distribuido tiene acceso a todos los dispositivos compartidos de la red incluyendo
procesadores y memoria RAM.
Una de las ventajas claras que nos ofrece la idea de sistema
distribuido es que el funcionamiento de todo el sistema no recae
en la responsabilidad de una sola unidad, sino que cualquier
equipo puede sustituir a otro en caso de que falle. La forma más
evidente de lograr la Robustez y por lo tanto la Confiabilidad 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 disponibles
múltiples respaldos parciales o totales en los otros equipos.
14. comparativa entre Sistemas distribuidos y de red
Los sistemas operativos distribuidos desempeñan las mismas funciones que un sistema operativo normal, pero
con la diferencia de trabajar en un entorno distribuido; es decir, estos 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; allí radica la principal diferencia entre ambos.
Elemento SO
Distribuido
So de
Red
¿Se ve como un uniprocesador
virtual?
Si No
¿Todos ejecutan el mismo SO? Si No
¿Cuántas copias del SO
existen?
Ninguna Ninguna
¿Cómo se logra la
comunicación?
Mensajes Archivos
compartidos/
Mensajes
¿Se requiere un acuerdo en los
protocolos de Red?
Si Si
¿Existe una única cola de
ejecución?
Si (No) No
¿Existe una semántica bien
definida para los archivos
compartidos?
Si Por lo general
15. Acceso a archivos remotos
un sistema que permite acceder a archivos en cualquier sitio, en cualquier momento y con el dispositivo que tú
elijas, siempre que tengas una conexión a Internet. Para esto se creo Internet en primer lugar, para conseguir y
compartir información siempre que se quiera aprovechando la cantidad de usuarios usando la red. Antes de que
Internet nos permitiera compartir archivos de la forma en la que lo hacemos, las cosas eran más complicadas para
hacer muchos trabajos. Si teníamos que traer trabajo a casa o llevarlo a reuniones y conferencias, teníamos que
llevar todo guardado en discos.
Más tarde, los ordenadores portátiles, teléfonos inteligentes y otros dispositivos móviles mejoraron mucho en el
sentido de portabilidad para llevar todos los datos necesarios. Ya era mucho más fácil llevar prácticamente todo
con nosotros, desde fotos, presentaciones, videos, archivos de texto o de cálculo, bases de datos, etc. Sin
embargo, todavía había que manejar discos, flash, y otras cosas para poder mostrar y manejar los datos que se
tenían. Internet parecía la solución idea, aunque al principio las velocidades no era las de hoy. Enviar y recibir
archivos grandes era problemático, y el uso de unidades de almacenamiento seguía siendo necesario.
Hoy en día, a pesar de los enormes tamaños de los archivos que se manejan, gracias a al mejorado ancho de
banda que existe, se pueden descargar muchos gigas en solo minutos. Se pueden incluso ver películas en modo
streaming sin tener que descargarnos los archivos de video completos como antes. Todo esto ha hecho que las
compañías ofrezcan servicios de acceso para archivos remotos.
16. Metodos de Acceso a archivos remotos
Escritorio remoto / Remote desktop / Terminal Server Client / RDC
• VNC
• Teamviewer / Log me In
• FTP
• VPN Métodos de acceso remoto.
17. Atomicidad
Atomicidad Las transacciones son un mecanismo estándar para manejar los cambios al estado del un sistema
distribuido. Proveen un modelo para controlar el acceso concurrente a los datos y para manejar las fallas
inherentes al cómputo distribuido. Si se permite que el trabajo que los objetos realizan, progrese
concurrentemente sin considerar transacciones, lo único que se obtendrá será un caos total. Una transacción
es generalmente una unidad de trabajo que se hace a nombre de una aplicación o componente. Cada
transacción puede estar compuesta de múltiples operaciones realizadas en datos que están dispersos en uno
o varios procesos o en una o varias máquinas. Cada transacción asegura el trabajo de proteger la integridad
del estado de un sistema al proveer cuatro garantías básicas conocidas como las propiedades ACID:
atomicidad (atomicity), consistencia (consistency), aislamiento (isolation) y durabilidad (durability)
Atomicidad Una transacción tiene que ser atómica lo que significa que es indivisible; todas las operaciones
deben ejecutarse o ninguna en lo absoluto. No debe haber posibilidad de que solo una parte se ejecute. En un
sistema bancario, por ejemplo, una transferencia de dinero entre dos cuentas de cheques tiene que ser
atómica; tomar dinero de una cuenta para agregarlo a otra. No es posible ejecutar una de las operaciones y la
otra no. La atomicidad se garantiza a través de mecanismos de base de datos con los que se hace el
seguimiento de la transacción. S i la transacción falla por cualquier razón, las actualizaciones que se hayan
realizado hasta el momento serán deshechas. Solo si la transacción llega al fin los cambios se volverán parte
de la base de datos. La propiedad de atomicidad permite escribir operaciones que emulan transacciones de
negocio tales como retiros de cuentas de cheques, reservaciones de vuelo o compra y venta de bonos entre
otras.
18. Control de concurrencia
Protocolos de control de concurrencia a base de bloqueo utilizan el concepto de bloqueo de elementos de
datos. Un bloqueo es una variable asociada a un elemento de datos que determina si las operaciones de
lectura / escritura se pueden realizar en ese elemento de datos.
En general, una matriz de compatibilidad de bloqueo se utiliza lo que indica si un elemento de datos puede
ser bloqueado por dos operaciones al mismo tiempo.
Los sistemas de control de concurrencia a base de bloqueo pueden utilizar ya sea de una sola fase o de dos
fases protocolos de bloqueo. Protocolo de bloqueo de una sola fase En este método, cada transacción se
bloquea un elemento antes de su uso y libera el bloqueo tan pronto como se haya terminado de usarlo. Este
método de bloqueo proporciona para una máxima concurrencia, pero no siempre hace cumplir la
secuencialidad.
Estos algoritmos se comprometen a asegurar que las transacciones en el orden dictado por sus marcas
de tiempo. Una transacción de más edad debería comprometerse antes de una operación menor, ya
que la transacción más antigua entra en el sistema antes de que el menor de ellos. Las técnicas de
control de concurrencia basado en la indicación de la hora generan horarios serializables de tal manera
que la programación en serie equivalente se ordena según la edad de los participantes transacciones
19. Conclusión
Finalizando la monografía hay que tomar en cuenta que el primer Sistema Operativo de red estaba
enfocado a equipos con un procesador Motorola 68000, pasando posteriormente a procesadores Intel
como Novell Netware.
Existen diversos Sistemas Operativos de red capaces de gestionar una red dependiente de las
arquitecturas de las máquinas que se utilicen; sin embargo, los más ampliamente usados son: Novell
Netware, Personal Netware, LAN Manager, Windows NT Server, UNIX y LANtastic.
Puede parecerte una descripción somera, pero no pretendemos que conozcas todos los sistemas en
profundidad, ya que están avanzando continuamente y lo importante es conocer las últimas versiones.
Podemos destacar que existen diferentes SO, entre ellos Sisteamas Operativos de red, y dentro de ellos
a su vez una infinidad de variedades. Pero todos y cada uno de ellos presentan características similares,
las mismas que fueron descritas a lo largo del artículo.
En cuanto a la evolución de los Sistemas Operativos de Red, a pesar de los desarrollos de Novell y
Microsoft, como fue descrito, todas las tecnologías han convergido en utilizar el protocolo TCP/IP como
"nativo", el que ha sido utilizado por Unix desde sus inicios.
20. Fabricio Torrico (Noviembre de 2015). Sistemas operativos de red [en línea], Disponible en:
http://sistemasoperativos.forogratuito.net/t45-sistemas-operativos-de-red [Consulta: 2018, 19 de marzo]
Fernando S. Redes y protocolos [en línea], Disponible en: http://e-
ducativa.catedu.es/44700165/aula/archivos/repositorio/1000/1062/html/index.html [Consulta: 2018, 19 de
marzo]
Susana Cruz Miranda (2013) SISTEMAS OPERATIVOS DE RED [en línea], Disponible en:
http://susanacruz21.blogspot.com/ [Consulta: 2018, 19 de marzo]
Juanda (2012) Sistemas Operativos en Red [en línea], Disponible en:
http://es.wikieducator.org/Usuario:Juanda/sor/Introducci%C3%B3n [Consulta: 2018, 19 de marzo]
Bibliografia
Javier Forteza (2013). Sistemas Operativos Distribuídos [en línea], Disponible en:
http://html.rincondelvago.com/sistemas-operativos-distribuidos_2.html [Consulta: 2018, 20 de marzo]
Andrew S. Tanenbaum (1996). "Sistemas Operativos Distribuidos", Prentice Hall.
Armando Dueñas Rodríguez. Sistemas operativos distribuidos [en línea], Disponible en:
http://www.monografias.com/trabajos6/sidi/sidi.shtml [Consulta: 2018, 20 de marzo]
MC. J. ADRIAN HERRERO PEREZ (2011). Sistemas operativos distribuidos: ventajas y desventajas contra
sistemas operativos centralizados [en línea], Disponible en:
https://sites.google.com/site/mrtripus/home/sistemas-operativos-2/1-3-sistemas-operativos-distribuidos-
ventajas-y-desventajas-contra-sistemas-operativos-centralizados [Consulta: 2018, 20 de marzo]
Francisco Haz (2011).Sistemas operativos de red y distribuidos [en línea], Disponible en:
https://tercerobachilleratochecaschool07.wikispaces.com/wiki/members [Consulta: 2018, 20 de marzo]
Armando Ayala (Septiembre de 2012). Sistemas Operativos Distribuidos [en línea], Disponible en:
http://armando-upz.blogspot.com/2012/09/diferencias-entre los-sistemas.html [Consulta: 2018, 20 de marzo]