Exploración de Procesos, Bloqueos y Sistemas Operativos

Enviado por Programa Chuletas y clasificado en Informática y Telecomunicaciones

Escrito el en español con un tamaño de 5,95 KB

Tipos de Procesos

Según su Diseño

  • Reutilizables: Se cargan en memoria cada vez que se usan.
  • Reentrantes: Se carga una copia del código en memoria.

Según su Acceso a Recursos

  • Apropiativos: Acceden a los recursos y solo los liberan de forma voluntaria.
  • No Apropiativos: Permiten a otros procesos apropiarse de los recursos.

Según su Permanencia en Memoria

  • Residentes: Permanecen en memoria durante toda su ejecución.
  • Intercambiables: El SO puede llevarlos a disco durante su ejecución.

Según su Nivel de Privilegio

  • Privilegiados
  • No Privilegiados

Según su Propietario

  • De usuario
  • De sistema

Creación de Procesos

Los procesos se crean por:

  • Inicialización del sistema
  • Llamada al sistema
  • Petición de usuario
  • Inicio de un proceso por lotes

Bloqueos

Un bloqueo se presenta cuando:

  • Los recursos son compartidos entre usuarios.
  • Dos sistemas quieren acceder al mismo dispositivo externo.
  • Dos procesos ocupan el mismo recurso al mismo tiempo.
  • Falta un paso en el proceso.
  • Hay fallas en los drivers de un dispositivo externo.

Técnicas para Manejar Bloqueos

  1. Algoritmo de la avestruz
  2. Detección y recuperación
  3. Evitarlos

Bloqueos Fijos y Fragmentación

Los bloqueos fijos llevan a la fragmentación, que es la cantidad de memoria desaprovechada por el gestor de memoria.

Tipos de Fragmentación

  • Fragmentación interna: Espacios libres de memoria asignada a un proceso, pero que este no ocupa.
  • Fragmentación externa: Espacios de memoria no asignados que no pueden utilizarse.

Bloqueos Variables y Segmentación

Los bloqueos variables utilizan la segmentación, que divide la memoria en segmentos de longitud variable, adaptándose a las necesidades de cada proceso y eliminando la fragmentación interna.

Virtualización

El software de virtualización implementa un hipervisor, una capa de abstracción entre el hardware físico y la máquina virtual, actuando como intermediario entre lo real y lo virtual.

Conceptos Clave

  • Programa o aplicación: Software diseñado para realizar tareas específicas.
  • Unidad Central de Procesos (CPU): Encargada del control y ejecución de operaciones.
  • Unidad de Control: Interpreta y procesa la información.
  • Memoria Principal: Almacena instrucciones y datos para la ejecución de procesos.

Clasificación de Sistemas Operativos (SSOO)

Por su Estructura Interna

  • Monolítica: Todos los componentes en un solo programa.
  • Por capas o estructura jerárquica: Dividen el SO en pequeñas partes.
  • Máquina Virtual: Presenta una interfaz a cada proceso.

Por su Modo de Explotación

  • Procesamiento por lotes o Batch: Procesan gran cantidad de trabajo sin interacción del usuario.
  • Tiempo real: Priorizan los procesos sobre la interacción del usuario.

Por Número de Usuarios

  • Monousuario
  • Multiusuario

Por Número de Tareas

  • Monotarea
  • Multitarea

Por Número de Procesadores

  • Monoproceso
  • Multiproceso: Asimétricamente (un maestro) o simétricamente.

Por Forma de Compartir Recursos

  • Sistemas centralizados: Usan el recurso de una computadora central.
  • Sistemas distribuidos: Computadoras separadas conectadas en red.
  • Sistemas en red: Dos o más equipos unidos por un medio de comunicación.

Por Disponibilidad

  • Propietarios
  • Libres

Comandos

Comando Kill

Envía señales a los procesos en ejecución:

  • Kill -1: Para procesos calados.
  • Kill -2: Ctrl + c.
  • Kill -3: Ctrl + \.
  • Kill -9: Mata el proceso.
  • Kill -15: Indica al proceso que termine.
  • Kill -18: Continúa el proceso después de ser parado.
  • Kill -19: Para el proceso, pero está preparado para continuar.

Comando ps

  • -e: Informa de todos los procesos.
  • -f: Lista completa de cada proceso.
  • -l: Listados largos y completos.
  • -a: Muestra procesos de otros usuarios.
  • -x: Muestra procesos sin terminal asociado.

Comando fdisk

Para crear particiones:

  1. sudo fdisk /dev/sda (seleccionar disco)
  2. Pulsar n (nueva partición)
  3. Pulsar p (primaria) o e (extendida)
  4. Dejar valores por defecto o cambiarlos
  5. Pulsar w (escribir tabla y salir)
  6. sudo fdisk -l (verificar creación)
  7. mkfs.ext4 /dev/sda* (asignar sistema de ficheros)
  8. sudo mount //dev/sda* (montar partición)

Registros

Algunos registros importantes:

  • HKEY_CLASSES_ROOT
  • HKEY_CURRENT_USER
  • HKEY_LOCAL_MACHINE
  • HKEY_USERS
  • HKEY_CURRENT_CONFIG
  • HKEY_PERFORMANCE_DATA

Entradas relacionadas: