Está en la página 1de 9

ESCUELA POLITÉCNICA NACIONAL

FACULTAD DE INGENIERÍA DE
SISTEMAS
INGENIERÍA DE SISTEMAS INFORMÁTICOS Y DE COMPUTACIÓN
JEFFERSON GILBERTO ALQUINGA CHUQUIMARCA

Laboratorio de:

Sistemas Operativos

Nombre:
Jefferson Alquinga

Práctica No.:

3
Tema:

Comandos Linux para gestión de procesos

Objetivos:

 El estudiante estará en capacidad de reconocer y saber cuales son los


principales comandos que muestran el consumo de memoria del
CPU
 EL estudiante podrá conocer que es un proceso y cuales son sus estados,
y como funciona un bloque de control de procesos
 El estudiante estará en capacidad de conocer la información con la que cuenta
cada programa en ejecución
 El estudiante estará en capacidad de conocer las responsabilidades del
sistema operativo en relación a la gestión de procesos.

Marco Teórico:
Que es un proceso
Es una mínima Unidad de Ejecución de una tarea determinada, siguiendo un conjunto
de instrucciones que ha sido especificado, utilizando un recurso del sistema y
partiendo de la base de un estado determinado, para lo cual se obtiene lógicamente
un resultado afín al deseado.[1]
Además necesita recursos como son:
 Cpu
 Memoria RAM
 Input Output devices

Utiliza diferentes componentes como son

 Una sección de texto (sección de codigo)


 Una sección de datos
 Process ID
 Process father ID
 PROCESS USER ID
 Registros: paticulares y generales
Estados: Nuevo ,listo ,en ejecución bloqueado y terminado
 Prongram counter: es la siguiente dirección de la siguiente instrucción de
un proceso
 Start pointer
 Información de contabilidad
 Información de CPU
 Información de la RAM
RESPONSABILIDADES DEL SO EN RELACION A LA GESTION DE PROCESOS
 CREACION DE PROCESOS
 Eliminar procesos((kill process)
 Planificar procesos
 Clonación de procesos
 Otros: bloqueo mutuo, comunicación, sincronización
 Sección de datos: variables globales, variables locales,
acumuladores, contadores,
Todos estos están presentan en el BCP (Block Control Process)
Block Control Process

El BCP Es un conjunto de información que corresponde a cada proceso y que se


almacena en la RAM
es una estructura de datos que contiene información del proceso relacionado con él. El
bloque de control del proceso también se conoce como bloque de control de tareas,
entrada de la tabla de procesos, etc.[2] [1]

Fig 1. Tabla de Procesos

PID : proceso ID
State: estado de un proceso

Cabe señalar que el BCP esta dentro de una tabla de procesos

Estados de un procesos:

 Nuevo (new): Cuando el proceso es creado.


 Ejecutando (running): El proceso tiene asignado un procesador y está
ejecutando sus instrucciones.
 Bloqueado (waiting): El proceso está esperando por un evento (que se
complete un pedido de E/S o una señal).
 Listo (ready): El proceso está listo para ejecutar, solo necesita del recurso
procesador.
 Finalizado (terminated): El proceso finalizó su ejecución[3]
Fig. 2. Estados de un proceso

Desarrollo:

Ps(Process Status): comando que nos muestra los procesos actuales como el nombre,
recursos usados.

Fig 3. Comando ps que muestra los procesos actuales

Ps -a: nos muestra los procesos actuales de otros usuarios


Fig 4. Ps -a que muestra los procesos de otros usuarios

| grep “ ”: permite al usuario encontrar texto dentro del archivo que nos encontremos

Fig 5. Comando grep que permite buscar palabras


Sleep: se utiliza para temporizar un intervalo de tiempo determinado. La unidad de
tiempo por defecto es el segundo.
Sleep 10: temporiza 10 segundos y luego continuará con la siguiente instrucción si la
hay.

Fig 6. Comando sleep que temporiza un intervalo de tiempo y luego sigue con la siguiente instruccion

Top: nos da un informe en tiempo real de los procesos activos

Top -id5: nos muestra un informe en tiempo real de los procesos activos con una
actualización de cada 5 seg
Free: comando Linux que permite desplegar por pantalla información del consumo de
la RAM, su memoria disponible, su memoria utilizada, swap o de intercambio, la
memoria compartida y la memoria libre.

 Memoria SWAP: Swap es un espacio de intercambio que utiliza el disco


duro, en lugar de la RAM para almacenar datos temporalmente[4]

Fig 7. comando free que muestra la informacion de consumo de memoria

Pstree: muestra un árbol de procesos


Fig 8 Comando pstree que muestra el arbol d eprocesos

Bash: (bourn again shell)


Shell: s un archivo ejecutable que debe interpretar los comandos, transmitirlos al
sistema y arrojar el resultado. Existen varias shell. La más común es sh (llamada
Bourne shell), bash (Bourne again shell), csh (C Shell), Tcsh (Tenex C shell), ksh (Korn
shell)
y zsh (Zero shell). Generalmente, sus nombres coinciden con el nombre del
ejecutable.[5]

getpid() devuelve el identificador de proceso del proceso actual

Fig 9. Comando getpid que devuelve el numero de proceso actua

Jobs: lista los trabajos que se están ejecutando actualmente, ya sea los que están
suspendidos (Control-Z) como los que están corriendo en segundo plano (background).

bg : pone en ejecución un trabajo que está en segundo plano detenido.

kill -9 6272 nos permite matar un proceso. Este comando usado junto al PID mata el
proceso.

echo “ ” : se puede mostrar en pantalla texto


cat: permite crear archivos y visualizarlos
1. Doble redireccionamiento utilizamos >>, es decir, permite sobreescribir en el
archivo Así, por ejemplo, cada vez que ejecutes date >> horaclase, el resultado
se añadirá al archivo existente.

Conceptos basicos

 Demonio: es un programa en ejecución en segundo plano.


 Zombies: Son procesos muertos pero que ocupan recursos.
 RSS (RESIDENT SET SIZE): Es el tamaño de la memoria residente.
 VSZ: Es el tamaño de la memoria virtual. Incluye toda la memoria a la que
puede acceder el proceso, incluida la memoria intercambiada y la memoria de
bibliotecas compartidas.
 STAT: Estado del proceso.
S: interrumpible sleep - esperando el evento - estado bloqueado
D: uninterrumpible sleep
R: running – estado en ejecución
Z: proceso zombie
T: estado detenido o terminated

Head -5: muestra la cantidad de los primeros procesos que el usuario necesite.

tail -5: obtenemos los últimos 5 procesos en ejecución.

pidof sleep: permite saber que proceso esta suspendido


fg (foreground): que pasa los procesos en background a primer plano en donde ya
podemos detener el proceso con ctrl+Z.
Apt :advanced packaging tools
Apt-get upgrade: actualiza e isntala los nuevos paquetes actualizados en la base de
datos
CLI : command line interface
Análisis de resultados:

Se pudo determinar y establecer una nueva forma de mostrar comando en pantalla de


una forma mas amigable con el usuario como es el caso de echo , en el cual podemos
escribir en el terminal lo que iremos a mostrar a continuación .
Ademas como pasar procesos entre primero y segundo plano y a la vez finalizarlos de
una forma rápido, también con el uso del comando ps podemos identificar cuales son
los procesos que están ejecutándose.

Conclusiones y recomendaciones:

 Se pudo determinar el uso de los símbolos + y – los cuales nos indican que es el
último proceso ejecutado y el penúltimo proceso en ejecución respectivamente
 El redireccionamiento >> nos permite sobre escribir en archivos de una manera
muy sencilla, y de esta manera poder mostrarlos en el terminal

 En relación a los procesos se puede afirmar que ampersand nos permite


mantener el control sobre el primer plano de manera que nos permite ejecutar
otros procesos mientras el primer proceso ejecutado se realiza en segundo
plano.

 Se recomienda depurar y mantener los códigos de Gestión de procesos

 La memoria virtual es unidimensional ya que las direcciones van desde 0 hasta


la dirección máxima permitido una tras otra.

Bibliografía:

[1] “Qué es un proceso - Gestión de Procesos - Aiteco Consultores - Desarrollo y


Gestión.” [Online]. Available: https://www.aiteco.com/que-es-un-proceso/.
[Accessed: 27-Oct-2019].
[2] “¿Qué es el bloque de control de proceso (PCB)?” [Online]. Available:
https://www.tutorialspoint.com/what-is-process-control-block-pcb. [Accessed:
27-Oct-2019].
[3] C. Rojas, “ESTADOS DE UN PROCESO.” .
[4] “Para qué sirve el Swap en Linux y cómo cambiarlo.” [Online]. Available:
https://hipertextual.com/2015/09/swap-en-linux. [Accessed: 27-Oct-2019].

También podría gustarte