Tutoriales

Qué es un proceso informático y qué función tiene

Seguramente hasta escuchado alguna vez eso de matar un proceso en Windows, o que se ha quedado bloqueado un programa. Hoy te explicamos de qué se trata y además veremos las diferencias con un subproceso, un término muy popularizado debido a los hilos de procesamiento.

Proceso informático

Que es un proceso

En informática, un proceso se trata básicamente de un programa que entra en ejecución. Los procesos son una sucesión de instrucciones que pretenden llegar a un estado final o que persiguen realizar una tarea concreta. Lo más importante de este concepto, es de dónde sale un proceso o qué es realmente un programa y un sistema operativo.

El sistema operativo es el software básico de un ordenador, con éste, el usuario es capaz de interactuar a partir de un entorno gráfico o mediante entradas de texto en forma de instrucciones. El sistema operativo es capaz de ejecutar otros procesos dentro de sí mismo e incluso crearlos mediante código de programación y una compilación.

Por su parte, un programa es un algoritmo que genera una secuencia de instrucciones con las que podemos realizar una tarea concreta. Por supuesto los programas actuales no solo realizan una, sino muchas tareas gracias a tener muchos de estos algoritmos en su código de programación, cada uno de ellos para una función específica.

Podemos entender esto con una simple analogía de tostar el pan por la mañana:

  • El sistema operativo será nuestra casa o la habitación en donde estemos, la cual proporciona los medios para poder ejecutar la tarea.
  • El programa será la tarea que queremos realizar, la de tostar el panel
  • Los procesos serán las distintas tareas que tendremos que hacer hasta llegar a la solución: abrir el pan –> enchufar el tostador -> colocar el pan -> esperar a que se tueste -> sacarlo -> desconectar el tostador.
  • Nosotros somos el procesador, los encargados de ejecutar la secuencia de tareas o procesos.

Qué hay dentro de un proceso: los threads

Proceso informático
Ejecución en doble hilo

Un proceso también se puede dividir en distintas partes para ver cómo se ejecuta en nuestro ordenador. Dentro de él tenemos lo que llamamos instrucciones, que corresponden a cada uno de los pasos que debemos hacer para completar esa tarea.

Además, para separar cada proceso, el procesador le asigna un contador de programa, para que cada uno este separado y bien diferenciado de otro que incluso puede ser igual, por ejemplo, abrir dos veces el explorador. De esta forma cada proceso se guarda en distintos registros, con distintas variables y por supuesto en distinta región de la memoria RAM.

Es en este punto, es en donde aparece el concepto de hilos de procesamiento o threads. Como sabemos, los sistemas actuales permiten ejecutar varios programas de forma simultánea, y en consecuencia, tendremos gran cantidad de procesos activos en el sistema, decimos que son multihilo. Cada proceso entonces se divide en uno o varios hilos de ejecución o subprocesos. Cada hilo, tiene sus propias instrucciones y un estado de ejecución, es decir, unos valores en los registros con los que el procesador sabe en qué fase se encuentran.

Siguiendo con el símil de tostar el pan, podríamos entender esto de la siguiente forma:

  • Fijándonos en el proceso de esperar que se tueste el pan, podemos dividirlos en varios subprocesos o hilos, por ejemplo, partir el pan dos trozos y aprovechar las dos ranuras del tostador. O también comernos un trozo mientras tostamos el otro.
  • Cada trozo estará más o menos tostado, y ese será su estado de ejecución, nosotros, el procesador, debemos estar pendientes de que no se queme.

Como empieza y termina un proceso

Proceso informático

El hecho de que los ordenadores son sistemas multiproceso nos lleva a pensar que evidentemente, habrá procesos que estén relacionados unos con otros. De la misma forma, un proceso a lo mejor necesita el resultado de otro para continuar ejecutándose. Por eso los programas se dividen en subrutinas

Una tarea que tiene barias subrutinas debe esperar a que estas terminen y den un resultado para continuar la ejecución. Digamos que se mantendrá en una cola de procesos con un determinado contador parado hasta que el valor de una variable active de nuevo el proceso. Por supuesto, la idea siempre del procesador será terminar primero, el que primero empezó (first in – first out).

Siguiendo con la comparativa del pan, una subrutina puede ser la de esperar una cuenta atrás hasta que el pan esté tostado. El apartado nos mandará una señal para avisarnos de que retiremos el pan, continuando así con otro proceso.

Las formas de empezar un proceso informático serán las siguientes:

  • Que nosotros arranquemos un programa o el propio ordenador: desencadenamos una ejecución obligada al pinchar en el icono o pulsar un botón
  • Que el sistema llame a los programas o procesos: se ejecutará el boot loader del disco duro y el sistema comenzará a cargar procesos en memoria. O bien el sistema le pida a un programa, por ejemplo, un controlador, ejecutarse.

Y también se pueden terminar:

  • Terminar la rutina o el programa: dando un resultado final que considera correcto
  • Finalizar de forma repentina por un error: la rutina puede estar mal programada y no dar el resultado esperado
  • A partir de otro proceso o interruptor por nosotros mismos: nosotros mismos podemos ejecutar una tarea que elimine el que se está ejecutando
  • Se puede bloquear: si espera una terminada respuesta y ésta no llega el proceso permanecerá bloqueado hasta que el sistema detecte que no puede continuar.
  • Por un corte de alimentación

Como ver matar un proceso en Windows

La siguiente tarea que podemos hacer es la de visualizar los procesos en el sistema operativo Windows. Esto es tarea sencilla, ya que solo debemos de pulsar con botón derecho sobre la barra de tareas y elegir la opción “Administrador de tareas”. Una segunda forma de hacer esto será pulsar la combinación de teclas “Ctrl+ Mayus + Esc”. Y una tercera será pulsar la combinación de teclas “Ctrl + Alt + Supr”.

De esta forma, sacaremos una aplicación que monitoriza tanto procesos como servicios en ejecución de programas y el sistema operativo, además de un monitor de rendimiento del hardware. De esta forma es como podremos matar o intentar matar un proceso que esté bloqueado.

Proceso informático

En la pestaña procesos tenemos toda la lista con su actividad en tiempo real representada. Solo debemos seleccionar el que queramos eliminar y pulsar Supr.

Proceso informático

Todavía podemos hacer un poco más, dirigiéndonos al apartado de “rendimiento” y ver la actividad de todo nuestro hardware principal. En la esquina inferior derecha, estando en el apartado “CPU”, encontraremos una lista de especificaciones del procesador. En ella, veremos representados sus núcleos y también sus hilos, threads o procesadores lógicos. En esta captura sabemos que nuestro procesador tiene 4 hilos y dos núcleos.

Proceso informático

Y no paramos, porque ahora vamos a pulsar sobre la opción de “Abrir el monitor de recursos” para abrir una nueva aplicación que nos muestra más detalles acerca de la CPU y los procesos. Nos dirigimos al apartado de “CPU” de este monitor y veremos una lista de procesos en los que también tenemos una columna que nos muestra todos los subprocesos o hilos de cada uno de ellos.

Conclusión sobre un proceso informático

Los procesos llevan entre nosotros desde que se crearon las primeras computadoras. Es un concepto aplicable a muchas otras áreas, pero siempre con una contante, la de realizar una serie de tareas hasta llegar a un resultado. No solo se trata de procesos digitales, hemos hecho un simil con una tarea cotidiana, y además las primeras computadoras era mecánicas y ya ejecutaban algoritmos.

Os dejamos con algunos enlaces a tutoriales que os puedan interesar:

Si quieres puntualizar alguna cuestión o tienes alguna duda al respecto, deja tu comentario en la caja.

José Antonio Castillo

Graduado en Ingeniería en Tecnologías Industriales. Amante de la informática, el gaming y casi cualquier deporte de motor.
Los datos de carácter personal que nos facilite mediante este formulario quedarán registrados en un fichero de Miguel Ángel Navas Carrera, con la finalidad de gestionar los comentarios que realizas en este blog. La legitimación se realiza a través del consentimiento del interesado. Si no se acepta no podrás comentar en este blog. Puedes consultar Política de privacidad. Puede ejercitar los derechos de acceso, rectificación, cancelación y oposición en [email protected]
Botón volver arriba