GESTION DE PROCESOS por Carlos Llatas

Comienza Ya. Es Gratis
ó regístrate con tu dirección de correo electrónico
GESTION DE PROCESOS por Carlos Llatas por Mind Map: GESTION DE PROCESOS por Carlos Llatas

1. Definicion

1.1. Los procesos se definen como el conjunto de recursos e instrucciones necesarias para ejecutar un programa

1.2. Se puede decir que un programa es una entidad pasiva, mientras que el proceso es lo que hace que trabaje el codigo

1.3. En los sistemas multiprocesos es muy importante maximizar el uso del CPU por lo que varios procesos se ejectuan de manera simultanea quedando en espera solo procesos que necesiten recursos que ya esten siendo ocupados

2. Estado de un Proceso

2.1. Los procesos en sistemas operativos multitareas estos se encuentran en estados diferentes ya que no siempre el sistema tiene la capacidad de trabajar a todos al mismo tiempo, y los procesos se mantienen en 4 estados diferentes

2.1.1. Nuevo

2.1.1.1. Este es el estado en el que se encuantran cuando estos procesos son recien creados ejemplo es cunado recien iniciamos el sistema, o cuando cargamos paginas web

2.1.2. Preparado

2.1.2.1. Los procesos que se encuentran en este estado estan esperando al que el sistema operativo les asigne un nucleo del procesador para trabajar, los que se encuentran en este estado o pueden finalizar o ser ejecutados dependiendo de su necesidad

2.1.3. Ejecucion

2.1.3.1. Cuando se enecuentran en este estado los procesos estan realizando tareas en el CPU

2.1.4. Bloqueado

2.1.4.1. Los procesos que estan Bloqueados se encuentras a que pase algun evento externo para pasar a ejecucion como alguna señal E/S o bien este al igual que el preparado puede ser terminado por alguna señal externa

3. Planificacion de un Proceso

3.1. El sistema operativo es el que se encarga de decidir los procesos que el cpu va a hacer estando libre y cuando estos saldran del CPU

3.2. Existen diferentes politicas de planificacion que son los siguientes:

3.2.1. Primero en llegar

3.2.2. Primero el proceso mas corto

3.2.3. Prioridades

3.2.4. Turno rotatorio

3.2.5. Retroalimentacion

3.3. En linux los procesos estan divididos en tres categorias: interactivos, tiempo real o por lotes

3.4. En Windows la planificacion se maneja en la utilizacion de colas multiples de prioridades

3.5. Mac OS X es similar a Windows

4. Creacion y Destruccion

4.1. Unix

4.1.1. Los procesos estan identificados con PID

4.1.2. Algo mas que es importante son los UID y GID, que son los ID de usuario y de grupo respectivamente, todos estos forman parte del PCB que es el bloque de control de procesos

4.2. Windows

4.2.1. Se controlan por eventos

4.2.2. El programa principal espera un evento como un click para luego procesar ese evento

4.2.3. Windows al igual que UNIX tiene llamadas al sistema que son bastantes grandes

4.2.4. Windows ocupa un conjunto de procesos para solicitar los servicios al sistema operativo llamado API Win32

4.3. Tabla de comandos

4.3.1. UNIX

4.3.1.1. Fork-Crea un proceso nuevo Waitpid-Puede esperar a que un proceso termine Execve- CreateProcess= fork + execve Exit-Termina la ejecución Open-Crea un archivo o abre uno existente Close-Cierra un archivo Read-Lee datos de un archivo Write-scribe datos en un archivo Lseek-Mueve el apuntador de archivo Stat-Obtiene diversos atributos de archivo Mkdir-Crea un directorio nuevo Rmdir-Elimina un directorio vacío Link-enlaces Mount-montajes unmount-desmontajes Chdir-Cambio el directorio de trabajo actual Kill-Elimina un proceso Time-Obtiene la hora actual

4.3.2. Windows

4.3.2.1. CreateProcess-Crea un proceso nuevo WaitForSingleObject-Puede esperar a que un proceso termine ExitProcess-Termina la ejecución CreateFile-Crea un archivo o abre uno existente CloseHandle-Cierra un archivo ReadFile-Lee datos de un archivo WriteFile-Escribe datos en un archivo SetFilePointer-Mueve el apuntador de archivo GetFileAttributesEx-Obtiene diversos atributos de archivo CreateDirectory-Crea un directorio nuevo RemoveDirectory-Elimina un directorio vacío SetCurrentDirectory-Cambio el directorio de trabajo actual TerminateProcess-Elimina un proceso GetLocalTime-Obtiene la hora actual

5. Gestion de Memoria

5.1. Se encarga de asignar la memoria a los programas de la computadora

5.2. Todas las computadoras tienen una jerarquia en la memoria, primero tienen el cache que es muy minima, leugo la Ram y por ultimo el almacenamiento con varios gygabites disponibles

5.3. El administrador de memoria es el encargado de ver que esta en uso o no y asignar y liberar la memoria dependiendo quien lo necesite

5.4. Esta parte es importante porque permite lel optimizar y maximizar el rendimiento ademas de dar a los programas entre si