Gestión de Memoria y Sistemas Distribuidos en Sistemas Operativos

Gestión de Memoria

Función Principal

La función principal de la gestión de memoria es la transferencia de casos de memoria externa (ME) para la memoria principal (MP), ya que el tiempo de acceso es mayor en la ME. El sistema operativo (SO) trata de reducir el número de operaciones de entrada/salida (E/S) para la ME y es responsable de tratar de mantener en la MP el mayor número de casos. Además, debería permitir a los nuevos procesos ejecutar sin espacio en la MP y debe ejecutar programas más grandes que la capacidad de memoria física utilizando técnicas de superposición y el uso de memoria virtual.

Superposición

La superposición consiste en dividir el programa en módulos y usar la misma página de memoria para la aplicación de los módulos. El tamaño se determina basándose en el tamaño del módulo más grande y tiene problemas de rendimiento a causa del exceso de intercambio de módulos entre la ME y la MP.

Memoria Virtual

Se aplica a los programas que requieren más memoria de la disponible para su ejecución. El swapping out es la transferencia del programa de la MP a la ME, y el swapping in es la transferencia del programa de la ME a la MP.

Asignación Contigua Simple

Utilizada en sistemas operativos monoprogramables, divide la MP en un área para el SO y otra para los programas. El usuario no tiene control sobre el control de la MP. La protección a través de registradores/zona de restricción es fácil de aplicar, pero no usa eficientemente los recursos de hardware.

Asignación Contigua con Particiones Fijas o Estática Absoluta

La división de la memoria en piezas de tamaño fijo (particiones) se define en el arranque del SO en base a los programas que se ejecutan en ese momento. Los programas se cargan en las particiones. Los compiladores y ensambladores están limitados a generar código absoluto. Cuando el tamaño de la partición se cambia, el SO tiene que ser reiniciado. Existe un problema de fragmentación interna, donde los programas no ocupan todas las particiones, dejando áreas libres de memoria.

Asignación Contigua con Particiones Dinámicas

Sin el concepto de partición de tamaño fijo, cada programa usa solo el espacio de memoria necesario para la partición. Genera fragmentación externa porque los programas dejan áreas de memoria disponibles cada vez más pequeñas que no podrían ser utilizadas por otros programas. Para resolver este problema, se pueden recoger las zonas libres en una zona libre única o reubicar las particiones ocupadas eliminando los espacios entre ellas. Esta técnica reduce el problema de la fragmentación, pero aumenta la complejidad y el uso del procesador y espacio en disco.

Administración de la Memoria Virtual

Combina la MP y la ME como una memoria única, lo que permite que un mayor número de procesos compartan la MP.

Espacio de Direcciones Virtuales

Es la dirección del programa de asignación de memoria virtual. Cuando el programa se ejecuta, la dirección virtual se traduce a la física.

Bloqueo de Recursos (Deadlock)

Es la espera de un recurso asignado que nunca será liberado o un evento que no se producirá. Para que se produzca un bloqueo simultáneamente, son necesarias cuatro condiciones:

  • Exclusión mutua
  • Espera de recursos
  • No preemption
  • Espera circular

Acceso al Subsistema de Entrada/Salida

El SO tiene un conjunto de rutinas que permite la comunicación con cualquier dispositivo conectado. Las operaciones de E/S se realizan mediante llamadas al sistema de E/S.

Operación Síncrona

El proceso está a la espera de la finalización de la operación.

Operación Asíncrona

El proceso se encuentra en estado listo para funcionar incluso con operaciones en proceso. Debe haber una señal para indicar el final de la operación.

Controlador de Dispositivo

Implementa la comunicación entre la E/S y los controladores de dispositivos (dispositivos de hardware para el manejo de E/S).

DMA (Acceso Directo a Memoria)

Permite que algunos dispositivos tengan acceso directo para leer y escribir en la memoria.

Dispositivo Estructurado

Almacenan la información en bloques de tamaño fijo con un lugar para la lectura (por ejemplo, discos duros). Pueden tener acceso directo a la dirección o acceso secuencial, donde los otros bloques se recorren secuencialmente para alcanzar el bloque deseado.

Dispositivo No Estructurado

Envían o reciben una cadena de bloques no estructurados (por ejemplo, la impresora).

Tiempos de Lectura y Escritura de Datos

Buscar

Posición de la cabeza de lectura/escritura.

Latencia Rotacional

Esperar hasta que el sector deseado esté en la posición correcta para la lectura.

Transferencia

Tiempo necesario para transferir el bloque a la MP.

Redundancia y Protección de Datos

La creación de una tabla de registros, que tiene 6 niveles, tiene como objetivo aportar más capacidad de almacenamiento, rendimiento y fiabilidad.

Virtualización

El proceso de ejecutar múltiples sistemas operativos en un único dispositivo.

Virtualización de Hardware

Ejecutar varios SO en la misma máquina. Para el usuario, elimina la incompatibilidad entre el SO y las aplicaciones; para servidores, elimina la necesidad de subservidores.

Virtualización de Presentación

Acceso a un entorno informático sin acceso físico a él. Varios usuarios pueden utilizar el mismo sistema al mismo tiempo.

Virtualización de Aplicaciones

Acceso a las aplicaciones en un servidor virtual, sin necesidad de instalar la aplicación en el PC.

Máquina Virtual (VM)

Entorno operativo completo que se comporta como un equipo independiente.

Beneficios de la Virtualización

  • Consolidación de servidores
  • Entornos de desarrollo y pruebas
  • Continuidad del negocio
  • Centro de datos dinámico

Almacenamiento

Dispositivo o soporte para el almacenamiento a largo plazo de los datos.

Telnet

Administración remota a través de IP, soporta acceso remoto sin seguridad.

SSH

Administración remota de servidores, soporta acceso remoto y encapsula los protocolos, seguridad de claves asimétricas (clave pública y clave privada).

VNC

Acceso remoto a máquinas con cualquier SO, soporta asistencia remota, utiliza solo TCP/IP, no pierde la sesión en caso de desconexión, pero no transfiere archivos, abre una terminal a la vez y la actualización de pantalla es lenta.

Servicios de Terminal Server

Para administrar el servidor desde cualquier máquina cliente, todo el procesamiento se realiza en el servidor, permite la conexión simultánea con el servidor (crea sesiones para cada cliente).

Modos de Ejecución

Modo de Administración Remota

Gestión del servidor desde cualquier lugar (requiere que el usuario sea administrador) y no requiere licencia.

Modo de Servidor de Aplicaciones

El servidor ejecuta aplicaciones de forma remota, se utiliza cuando los clientes ejecutan aplicaciones con pocos recursos de hardware que requieren gran potencia de procesamiento y requiere licencia.

Escritorio Remoto

Conexión remota al escritorio de Windows, tiene como objetivo controlar de forma remota los equipos de una LAN o de Internet, permite el intercambio de discos y puertos serie.

Seguridad Informática

Violaciones de Seguridad

  • Violación de la confidencialidad: Lectura no autorizada de datos.
  • Violación de la integridad: Modificación no autorizada de datos.
  • Violación de la disponibilidad: Destrucción no autorizada de datos.
  • Robo de servicio: Uso no autorizado de recursos.
  • Denegación de servicio: Prevenir el uso legítimo del sistema.

Tipos de Ataques

  • Enmascaramiento: Comunicación en la que el participante finge ser otra máquina o alguien más.
  • Ataque de reproducción: Repetición maliciosa o fraudulenta de una transmisión de datos.
  • Ataque Man-in-the-Middle: El atacante se hace pasar por el emisor y el receptor.

Niveles de Protección

  • Protección física: Control de acceso a la sala del sistema.
  • Protección humana: Solo usuarios autorizados pueden acceder al sistema.
  • Protección del sistema operativo: El sistema necesita protegerse contra las vulnerabilidades del SO.
  • Protección de la red: Seguridad para evitar la interceptación de datos o la intrusión en las computadoras.

Autenticación

Para probar la identidad del remitente de un mensaje, trabaja en conjunto con la codificación, es útil para probar si se ha cambiado el mensaje. El algoritmo de autenticación está formado por un conjunto de claves (K), un conjunto de mensajes (M), un conjunto de autenticadores (A), una función de generación de autenticación del mensaje y una función de evaluación de la autenticidad del mensaje.

Cifrado

Utilizado para restringir a los emisores o receptores de los mensajes, basado en secretos (claves) distribuidos selectivamente a las computadoras. Las herramientas son cifrado, cifrado simétrico, cifrado asimétrico, autenticación y distribución de claves.

Firewall

Un dispositivo que se coloca entre el concentrador o un conmutador que conecta las computadoras e Internet. Acepta las peticiones de los hosts de la red y las envía a Internet, bloquea los intentos de conexión desde el exterior, monitoriza y registra las conexiones, limita las conexiones basadas en las direcciones y/o puertos de origen y destino, y la dirección de la conexión.

Tipos de Firewall

  • Firewall personal: Capa de software incluida en el SO o añadida a una aplicación. Limita la conexión a un host en particular.
  • Firewall proxy de aplicación: Entiende los protocolos utilizados por las aplicaciones.
  • Firewall de llamada al sistema: Se encuentra entre el núcleo y las aplicaciones y monitoriza las llamadas al sistema.
  • Firewall de filtrado de paquetes: Determina qué direcciones IP pueden hacer conexiones y transmisiones de datos.
  • Firewall de aplicación: Controla aplicaciones conocidas como servidores proxy e instaladas. Permite la comunicación directa con Internet y actúa como intermediario a través de la evaluación de la sesión TCP.

Sistemas Distribuidos (SD)

Sistemas autónomos, conectados por una red de comunicación y bien acoplados. Cada componente del SD tiene sus propios recursos. Las principales razones para la creación de SD son: distribución de los recursos, aumento de la velocidad de procesamiento, fiabilidad y comunicación. Trabajan con clusters.

Clusters

Sistemas formados por un conjunto de nodos conectados por una red de alto rendimiento y dedicada. Cada nodo tiene sus propios recursos.

Migración de Datos

Una forma de acceso a los recursos compartidos, mediante la transferencia total o parcial de un archivo.

Migración de la Computación

Una forma de acceso a los recursos compartidos, se utiliza cuando el tiempo de transferencia de datos es mayor que el tiempo de acceso remoto.

Migración de Procesos

Una de las formas de acceso a recursos compartidos, el proceso se puede realizar en diferentes lugares, se utiliza para el balanceo de carga, mayor velocidad y la elección de hardware/software.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.