¿Qué es la ordenación de la memoria?

La ordenación o reordenación de la memoria es un proceso mediante el cual la unidad central de procesamiento (CPU) toma las solicitudes de memoria de la computadora y las ordena en el patrón más optimizado. El proceso cambia las solicitudes, a menudo los procesos se completan fuera de orden, pero los usuarios y programadores no ven esto. Por lo general, esto se puede hacer muy fácilmente en un solo sistema de CPU, pero un sistema con varias CPU puede experimentar un problema al realizar el pedido. Si no se utilizara este proceso, las computadoras no serían tan eficientes al completar las solicitudes de los usuarios.

Siempre que alguien hace algo en una computadora (mueve el mouse, abre un programa o edita una imagen, por ejemplo), la CPU tiene que aprobar el uso de memoria para la tarea. Estas solicitudes normalmente llegan de forma lineal, pero rara vez se procesan de esa manera. Con la ordenación de la memoria, las tareas se procesan de la mejor manera posible para que la computadora sea más rápida. Por ejemplo, si la CPU puede encargarse fácilmente del segundo proceso antes del primero, usará memoria para ese proceso antes de pasar a otros.

Las solicitudes a menudo se realizan fuera de orden, lo que podría confundir a los usuarios y programadores. Al mismo tiempo, la CPU está programada para saber que el orden de la memoria puede confundirlos, por lo que realiza todo de una manera que hace que parezca que los procesos se completan linealmente, aunque no lo estén. Esto hace que sea más fácil de entender para los usuarios y generalmente evita que los programadores tengan que ingresar una codificación excesiva para garantizar que la CPU funcione de manera eficiente.

Normalmente, la ordenación de la memoria se puede realizar fácilmente en una computadora con una sola CPU, pero puede haber problemas con una computadora que tiene varias CPU. Esto se debe a que es más fácil aprobar y ordenar correctamente los accesos a la memoria con una CPU, pero dos o más CPU pueden fallar al intentar procesar varias tareas. Si hay una comunicación adecuada entre las dos o más CPU, este problema generalmente se mitiga.

Sin el ordenamiento de la memoria, las tareas podrían resultar más difíciles para la computadora y el programador. Por el lado de la computadora, la CPU solo podría satisfacer las solicitudes a medida que llegaran, lo que significa que todo el proceso se ralentiza y puede hacer que los usuarios esperen. Para el programador, tendría que escribir una codificación excesiva para garantizar que la CPU se encargue adecuadamente de todas las tareas, lo que haría que la creación del programa tomara mucho más tiempo.