Mind map
Procesos en Linux.

Mapa mental: Procesos en Linux
Map content
Procesos en Linux.
Se puede definir como un programa en ejecución.
- Un proceso es un ente dinámico.
- Cambia su estado continuamente, según sus necesidades.
- Su creación se da con la llamada al sistema fork()
- Todos los procesos derivan de un único proceso padre, que el sistema lanzó en su inicialización.
- Un programa es un ente estático.
- Un proceso es un ente dinámico.
Es la unidad de trabajo del sistema en un momento dado.
Implementa multiprogramación y técnicas de tiempo compartido
- task_struct: almacena toda información relacionada al proceso
- task_interrumpible: el proceso está esperando por la llegada de una señal.
- task_running: el proceso se encuentra activo.
- task_ininterrumpible: el proceso espera por recursos hardware.
- task_zombie: el proceso termina, pero no se elimina de la tabla de control.
- Varias task_struct conforman la tabla de control de procesos.
- state: estado actual del proceso.
- policy: prioridad del proceso.
- mm: contiene información sobre la memoria vitrual de cada proces.
- task_struct: almacena toda información relacionada al proceso
Planificación.
- Cómo se reparte el tiempo de procesador entre distintas tareas.
- Determina el siguiente proceso a tomar por la CPU.
- Procesos ordinarios.
- Procesos de tiempo real (ejecutados primero).
- Rutina goodness: determina la política de planificación.
- A mayor valor devuelto, mayor prioridad.
- schedule: define el mecanismo de planificación.
Identificadores de proceso.
- PID: identificador de proceso dado por el SO.
- PPID: identifica el proceso padre.
- UID: permite saber quien lanzó el proceso. GUID: a qué grupo pertenece el propietario del proceso.
- EUID, EGID: los toman ciertos programas en su ejecución.
- FSUID, FSGID: usados cuando se trabaja con sistemas de archivos.
- SUID, SGID: almanecan los UID y GID originales cuando el proceso modifica los mismos.
Archivos.
- fs, files: mantienen información sobre el sistema de archivos y archivos abiertos por el proceso.
- Contenidos en task_struct.
- fs, files: mantienen información sobre el sistema de archivos y archivos abiertos por el proceso.
Espacio de direccionamiento.
- Entes estáticas: almacenadas en unidades secundarias.
- Entes dinámicas: almacenadas en memoria principal.
- Memoria virtual: lanzar programas a la CPU con mayor tamaño que la memoria física.
- Zonas de memoria
- Sólo lectura:instrucciones que componen el programa
- Heap: asignación de memoria dinámica.
- PC: dirección de la instrucción en ejecución.
- Lectura-escritura: almacenamiento de datos globales.
- SP: dirección a partir de la cual se salvarán las variables.
Procesos e hilos.
- El objetivo es compartir recursos de manera cómoda.
- Derivan las tareas: entidad que sólo posee recursos.
- Un proceso se compone de una tarea, la cual tiene un único hilo en ejecución.
- Tendrán espacio de direccionamiento virtual.
- Threads con la misma tarea, tendrán el mismo espacio virtual.
- Mismos espacios de memoria que un proceso.
- Creados mediante la llamada al sistema clone. Aún cuando su objetivo es crear procesos.
- POSIX: biblioteca estándar para el entorno multihilo.
- Creación.
- Seguridad.
- Portabilidad.
- POSIX: biblioteca estándar para el entorno multihilo.
- Derivan las tareas: entidad que sólo posee recursos.
- El objetivo es compartir recursos de manera cómoda.
Information
- Description
- Mapa mental sobre el entorno de procesos en Linux.
- Created by
- air-base
- Views
- 70
- Tags
- Rating