t3 p2 Flashcards
estructura S.O, operacionesS.O, gestión de procesos y protección
nombra las estructuras de sistemas operativos
- monolítica
- sistema en capas (jerarquía)
- máquina virtual
- cliente-servidor (microkernel)
- sistema híbrido (hybrid-kernel)
monolítico
La “peor”, pero la más extendida. Se caracteriza por tener todos sus componentes principales integrados en un único bloque de código que opera en modo kernel (nivel más privilegiado). Esto significa que funciones como la gestión de procesos, manejo de memoria, control de dispositivos, y sistemas de archivos están completamente integradas y se comunican directamente entre sí sin restricciones ni intermediarios.
kernel
es una única entidad ejecutable que tiene acceso completo al hardware y gestiona todas las interacciones del sistema
sistema en capas (jerarquía)
Organiza sus funciones en una estructura jerárquica, donde cada capa cumple una función específica y depende únicamente de las funciones proporcionadas por la capa inmediatamente inferior. 6 capas.
máquina virtual
Permite la multiprogramación. Se crea un monitor de máquina virtual (VMM) que se ejecuta directamente sobre el HW. Este monitor crea máquinas virtuales que reproducen el HW del ordenador.
Cada máquina virtual (VM) ejecuta su propio sistema operativo, completamente aislado de las demás. Un fallo en uno no afecta a los demás.
microkernel, cliente-servidor
Limita el núcleo del sistema (el kernel) a manejar solo las tareas esenciales, como la comunicación entre procesos (IPC), la gestión básica de la memoria y la planificación de procesos. Todas las demás funciones del sistema operativo, como la gestión de dispositivos, el sistema de archivos y las redes, se ejecutan en modo usuario. Los procesos ejecutados en modo usuario deben pedir permisos al microkernel para acceder a ciertos recursos o realizar operaciones.
sistema híbrido (hybrid kernel)
Busca aprovechar las ventajas de ambos modelos y minimizar sus desventajas. El objetivo principal de un kernel híbrido es ofrecer un rendimiento cercano al de un kernel monolítico, manteniendo al mismo tiempo una modularidad y estabilidad similares a las de un microkernel. Ejemplos: Windows, MAC.
Funciones S.O
- aceptar y ejecutar procesos
- secuenciar procesos
- interpretar comandos
- gestionar los recursos
- manejar la E/S
- manejar los errores
- protección y seguridad
- gestionar el multiacceso
características S.O
- conveniencia
- eficiencia
- habilidad para evolucionar
- administrador de hardware
- relacionar dispositivos
- organizar datos
- manejar comunicaciones
- facilitar E/S.
qué es un proceso
Un programa en ejecución junto con el contexto (registros, variables, etc.).
planificador del procesador (scheduler)
Manera en la que se decide la asignación del tiempo de ejecución de cada proceso.
características de los procesos
- Cantidad de operaciones de E/S que realiza el proceso
- Cantidad de uso de CPU
- Procesos de Lote o Interactivos, de lote más eficientes en cuanto a la lectura de datos.
- Procesos en Tiempo Real, tienen prioridad
- Longevidad de los Procesos, según sean más rápidos o más lentos para finalizar su labor.
bloque de control de procesos (PCB)
estructura de datos que contiene toda la información vital de un proceso (estado, prioridad, recursos asignados, etc) utilizada por el sistema operativo para gestionar, controlar y programar dicho proceso.
para qué se consideran las características de los procesos
para elegir el algoritmo de planificación más adecuado
estados de los procesos (clasificación, nombrar)
- activos
- ejecución, preparado/listo, bloqueado/en espera - Inactivos
- suspendido bloqueado, suspendido programado - otros
- nuevo, terminado, suspendido
estados de procesos “activos”
Son aquellos que compiten por el procesador o están en condiciones de hacerlo
estados de procesos “inactivos”
Son aquellos que no pueden competir por el procesador, pero que pueden volver a hacerlo por medio de ciertas operaciones. Se trata de procesos que no han terminado su trabajo y que pueden volver a activarse desde el punto en que se quedaron sin que tengan que volver a ejecutarse desde el principio.
ejecución
El proceso está utilizando la CPU y ejecutando sus instrucciones.
preparado/listo
El proceso está completamente cargado en memoria principal y listo para ejecutarse, pero está esperando su turno para acceder a la CPU.
bloqueado / en espera
El proceso está esperando que ocurra un evento externo para continuar su ejecución (por ejemplo, necesita un recurso no disponible todavía).
suspendido bloqueado
Proceso retirado de la memoria principal porque está esperando un recurso no disponible y el sistema lo suspende para liberar memoria. Se reanuda cuando el evento del bloqueo se resuelva (cuando el recurso esté disponible).
suspendido programado
Proceso detenido por el planificador del sistema para liberar recursos. No necesariamente tiene que estar bloqueado o esperando recursos. Se reanuda cuando el planificador lo decida.
nuevo
el proceso está en creación. Ha sido definido, pero aún no ha sido admitido en la cola de procesos listos para ejecutarse.
suspendido
el proceso está temporalmente retirado de la memoria principal (swap) para liberar recursos, pero no se ha terminado. Puede regresar a listo cuando se reactiva.
terminado
el proceso ha completado su ejecución o ha finalizado de manera anormal.
operaciones sobre procesos que puede realizar el S.O
Crear. Orden de ejecución de un programa.
Destruir. Eliminación del proceso
Suspender. Paralizar un proceso que puede ser reanudado posteriormente
Reanudar. Activar un proceso previamente suspendido
Cambiar la prioridad.
Temporizar la ejecución. Ejecución de un proceso cada cierto tiempo (fijo)
Despertar. Desbloquear un proceso
tipos de creación (operaciones S.O)
- Jerárquica. Cada proceso que se crea es hijo del proceso creador y hereda el entorno de ejecución de su padre.
- No jerárquica. Cada proceso creado por otro proceso se ejecuta independientemente de su creador con un entorno diferente.
qué son las prioridades
El tiempo de ejecución y los recursos asignados a cada proceso dependen de sus características, necesidades e importancia.
clasificación prioridades
Asignadas por el SO
Asignadas por el usuario
Estática
Dinámica.
seguridad
implica evitar la pérdida de datos e impedir operaciones de personas no autorizadas. Incluye aspectos técnicos, administrativos, legales y políticos. Las copias de seguridad tanto en local como en remoto son básicas para mantener la seguridad. Otros requisitos para la seguridad son la privacidad, la integridad y la disponibilidad.
autenticación
El método de autenticación más común es pedir al usuario algo que tiene o que conoce, por ejemplo una contraseña. Para mayor seguridad se utiliza el doble factor de autenticación.
amenazas de origen software
explotan las debilidades de los sistemas. Ejemplos: Bomba Lógica, Puerta Falsa, Caballo de Troya, Virus, Bacteria, Gusano.
protección
pretende asegurar que cada proceso siga las políticas establecidas para el uso de los recursos del sistema de forma consistente. La protección del sistema debe proporcionar un conjunto de mecanismos que permita llevar a cabo las políticas que definen qué datos han de ser protegidos y gobiernan el uso de los recursos.
dominio de protección
es un par objeto-derechos que relaciona un objeto específico con los derechos que se tienen sobre este. Un dominio puede ser de usuario, de proceso o de procedimiento. Los dominios se pueden almacenar en Listas de Control de Acceso o en Capacidades.
sistemas distribuidos
Los componentes del sistema (hardware y software) se encuentran en computadoras dispersas en diferentes ubicaciones físicas unidas mediante una red. 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, esto es transparente para el usuario (no necesita conocer los detalles técnicos).
computación en la nube
es la prestación de servicios a demanda a través de internet. Los centros de procesamiento de datos (CPD) contienen las máquinas y equipos físicos con las bases de datos, plataformas y aplicaciones que utilizan los usuarios. Los CPD se ubican en diferentes zonas geográficas y están interconectados por red, asegurando la continuidad del servicio incluso ante fallos. Ventajas: alta disponibilidad, acceso global, escalabilidad. Desventajas: conexión, seguridad y privacidad.
clasificación sistemas distribuidos (nombrar)
- sistemas fuertemente acoplados
- sistemas débilmente acoplados
sistemas fuertemente acoplados
los procesadores comparten la memoria y un reloj global, cuyos tiempos de acceso son similares para todos los procesadores.
sistemas débilmente acoplados
los procesadores no comparten ni memoria ni reloj, ya que cada uno cuenta con su memoria local.
ventajas y desventajas de los sistemas distribuidos
Los sistemas distribuidos tienen mayor resiliencia y rendimiento con buena escalabilidad y tolerancia a fallos, pero es necesaria mayor sincronización y coordinación con mayor necesidad de seguridad.
monolítico: ventajas, desventajas y ejemplo
los componentes del sistema operativo pueden comunicarse directamente entre ellos, lo que facilita la comunicación interna y suele resultar en un alto rendimiento. Sin embargo, esta estrecha integración también significa que cualquier error en un componente puede comprometer todo el sistema, lo que dificulta el mantenimiento y la depuración. Ej: LINUX, UNIX
sistema en capas (jerarquía): ventajas, desventajas y ejemplos
Mejor organización, facilidad de mantenimiento y depuración del sistema, pero peor rendimiento. Ejemplo clásico de un sistema en capas es el sistema operativo THE (Technische Hogeschool Eindhoven).
máquina virtual, ventajas e inconvenientes
Esta estructura presenta flexibilidad, pero complejidad en su gestión
Microkernel: ventajas, desventajas, ejemplo
Apuesta por la modularidad y la seguridad al delegar muchas funciones fuera del núcleo, pero pierde algo de rendimiento. Ejemplo: Symbian.