Cada máquina tiene acceso total a todos los datos de la base.
Para proporcionar este
acceso compartido a los datos, el sistema también debe proporcionar control de acceso y bloqueo para garantizar que no se produzcan operaciones conflictivas. Esta función, comúnmente conocida como administrador de bloqueo distribuido (DLM), se incluye en algunas tecnologías de clúster. La tecnología de clústeres está cambiando rápidamente. Algunos productos de clúster admiten docenas de sistemas en un clúster, así como nodos agrupados que están separados por millas. Muchas de estas mejoras son posibles gracias a las redes de área de almacenamiento (SAN), como se describe en la sección 12.3.3, que permiten que muchos sistemas se conecten a un grupo de almacenamiento. Si las aplicaciones y sus datos se almacenan en la SAN, el software del clúster puede asignar la aplicación para que se ejecute en cualquier host que esté conectado a la SAN. Si el host falla, cualquier otro host puede hacerse cargo. En un clúster de base de datos, decenas de hosts pueden compartir la misma base de datos, lo que aumenta considerablemente el rendimiento y la confiabilidad.
1.4 Estructura del sistema operativo
Ahora que hemos analizado la información básica sobre la organización y la
arquitectura de los sistemas informáticos, estamos listos para hablar sobre los sistemas operativos. Un sistema operativo proporciona el entorno en el que se ejecutan los programas. Internamente, los sistemas operativos varían mucho en su composición, ya que están organizados en muchas líneas diferentes. Sin embargo, hay muchos puntos en común que consideramos en esta sección. Uno de los aspectos más importantes de los sistemas operativos es la capacidad de multiprogramación. En general, un solo usuario no puede mantener ocupados ni la CPU ni los dispositivos de E / S en todo momento. La multiprogramación aumenta la utilización de la CPU al organizar los trabajos (código y datos) para que la CPU siempre tenga uno para ejecutar. La idea es la siguiente: El sistema operativo mantiene varios trabajos en la memoria simultáneamente (figura 1.7). Este conjunto de trabajos puede ser un subconjunto de los trabajos que se mantienen en el grupo de trabajos, que contiene todos los trabajos que ingresan al sistema, ya que es la cantidad de trabajos que se pueden mantener en el grupo de trabajos. El sistema operativo selecciona y comienza a ejecutar uno de los trabajos en la memoria. Eventualmente, es posible que el trabajo tenga que esperar a que se complete alguna tarea, como una operación de E / S. En un sistema no multiprogramado, la CPU permanecería inactiva. En un sistema multiprogramado, el sistema operativo simplemente cambia y ejecuta otro trabajo. Cuando dicho trabajo tiene que esperar, la CPU conmuta a otro trabajo, y así sucesivamente.