El microprocesador o CPU es el que se encarga de realizar cálculos, comparaciones numéricas y transferencia de datos como respuesta a las peticiones de los programas almacenados en memoria. Este está conformado por la unidad de control, la unidad de proceso o unidad aritmético lógica (ALU) y los registros.
En este la unidad de control es la que se encarga de gobernar todo el funcionamiento del ordenador, controla paso a paso la ejecución de las instrucciones que se encuentran en memoria central y genera las órdenes necesarias para el funcionamiento de la unidad de procesos y canales. Además, controla el proceso de lectura y escritura de instrucciones y datos de la memoria central. La ALU es la que se encarga de ejecutar las operaciones aritméticas y lógicas. Los registros son dispositivos de un ordenador para el almacenamiento temporal de datos.
Referencia:
Alberto Antonio Pérez Vásquez
Diferencias entre las arquitecturas x86 y x64
Por un lado x86 es el nombre dado comúnmente a los procesadores de la familia Intel que manejan instrucciones de 32 bits, (luego por extensión esta denominación se extendió a los procesadores que utilizan direcciones de 32 bits de las diferentes empresas que fabrican procesadores como AMD). La familia x86 reagrupa los microprocesadores compatibles con el juego de instrucciones Intel 8086. Por tanto, x86 representa a ese conjunto de instrucciones, siendo también una denominación genérica dada a los correspondientes microprocesadores.
x64 por su parte inicialmente fue una denominación utilizada por AMD utilizada para agrupar a los procesadores que hacen parte del conjunto que utilizan instrucciones de 64 bits, en contraparte Intel a este tipo de procesadores los denominó EMT64.
Conociendo este tipo de clasificaciones se nos viene a la cabeza una pregunta, ¿qué es una instrucción?. A grandes rasgos, una instrucción es la forma como los programas hacen uso de la memoria, un ejemplo práctico de esto es que 32 bits sería como tener una autopista de 32 carriles por la cual circulen los carros y 64 bits sería lo mismo pero con 64 carriles. De ahí se derivan varios dilemas como lo son de que un procesador de 64 bits debiera funcionar al doble que uno de 32, esto en teoría es cierto pero en la práctica no se nota mucho la diferencia, otro de los problemas que se plantean sería el de tener un sistema operativo de 32 bits con un procesador de 64 bits, en este caso volvemos al ejemplo de la autopista para resolverlo, sería como tener una vía de 64 carriles en la que solo podamos utilizar 32 carriles.
Actualmente se manejan versiones de sistemas operativos de 64 bits, un mito de estos es de que todos los programas que se deban tener instalados ahí, deben ser escritos para direcciones de 64 bits, estos es falso en cierta medida ya que los sistemas operativos en su mayoría sí reconocen los programas escritos para 32 bits, pero en algunos casos se pueden presentar problemas de memoria y compatibilidad al momento de usarlos.
Ventajas y Desventajas de 64 bits con respecto a 32 bits
Ventajas
- Se pueden usar más registros.
- Manejo de más cantidad de memoria RAM.
- La asignación en memoria de archivos es menos útil con arquitecturas de 32 bits, especialmente con la introducción de tecnología de grabación de DVD relativamente económica. Un archivo de 4 GB ya no es inusual y tales archivos grandes no pueden ser asignados fácilmente con arquitecturas de 32 bits. Sólo se puede asignar una región del archivo en el espacio de direcciones y para acceder al archivo usando asignación de memoria, estas regiones deben ser localizadas dentro y fuera del espacio de direcciones según sea necesario. Esta es una cuestión clave, ya que la asignación de memoria es uno de los métodos más eficientes para transportar datos del disco a la memoria, cuando es correctamente implementado por el SO.
Desventajas
- La principal desventaja de las arquitecturas de 64 bits es que, con respecto a las de 32 bits, los mismos datos ocupan ligeramente más espacio en memoria debido al crecimiento de los punteros y posiblemente otros tipos y al relleno para alineamiento (dependiendo del tipo de programa, algunos pueden multiplicar su tamaño). Esto incrementa los requisitos de memoria de un proceso dado y puede tener implicaciones para el uso eficiente de la caché del procesador. Mantener un modelo parcial de 32 bits es una manera de manejar esto y es en general razonablemente efectivo. De hecho, el sistema operativo de altas prestaciones Z/OS ha escogido este enfoque actualmente, requiriendo que el código de programa resida en varios espacios de direcciones de 32 bits mientras que los objetos de datos pueden (opcionalmente) residir en regiones de 64 bits.
Referencia:
Por último me gustaría enseñarle a las personas a determinar qué arquitectura posee su procesador, ya sea x86 o x64 (32 o 64 bits). Entonces:
¿Cómo determinar o saber si tienes un CPU de 32 o 64 bit?
Cada vez que se va a instalar un sistema operativo o alguna aplicación, se puede notar que hay versiones de 32-bit y de 64-bit para descargar. ¿Cuál es la adecuada para cada computador?.
Antes que nada se debe determinar qué tipo de procesador se tiene, si es un CPU de 32 o 64 bit. La mayoría de los computadores modernos vienen de 64-bit, pero si se quiere tener seguridad al respecto, es fácil averiguarlo. Esto es importante porque, aunque un hardware de 64-bit puede correr un software de 32-bit y funcionar bien, en algunos casos puede dar problemas. Lo ideal es que se sepa cuál es la arquitectura del computador antes de instalar algo.
Dependiendo del computador y su sistema operativo, se utilizará un método distinto para conocer este importante dato.
Sistemas Operativos
Se comienza buscando el icono de “Mi PC” para luego hacer click derecho sobre él y después en “Propiedades” al final del menú contextual. Aparecerá una ventana nueva con información del sistema. Hay que ubicar “Tipo de Sistema”.
Si dice que es de 64-bit entonces se sabrá que el procesador del computador tiene esta arquitectura. Sin embargo, si dice que tiene un sistema operativo de 32-bit no se puede tener total seguridad al respecto. En la imagen de arriba se muestra que el Windows instalado es de 64-bit, por lo que se concluiría que el procesador es de la misma arquitectura y no se tendría que averiguar nada más.
Si, por lo contrario, dijera que es de 32-bit habría que investigar un poco más. Para esto se debe clickear en “Configuración avanzada del sistema” (Advanced System Settings) en el menú a la izquierda de la misma ventana. Después se debe ubicar el botón “Variables del Sistema”, el cual está ubicado en la parte de abajo de la pestaña de “Avanzado”. Ahora es necesario conseguir la variable “PROCESSOR_ARQUITECTURE” en la parte de abajo. El valor de la derecha explicará qué tipo de procesador se tiene: si dice “x86”, se tiene un sistema de 32-bit, de lo contrario es uno de 64-bit.
El proceso en Linux es más simple. Hay que abrir el terminal y escribir lscpu. Esto entregará la información del CPU. Las primeras dos líneas informará qué arquitectura tienes. Si dice que puede correr 32-bit y 64-bit, como muestra la imagen, entonces quiere decir que se tiene un procesador de 64-bit. Si indica que solo se puede correr 32-bit, entonces el procesador es de 32-bit.
- Mac
En la barra ubicada en la parte superior de la pantalla, hacer click sobre el icono de la manzana que se encuentra en el extremo izquierdo. Después hay que hacer click en “Sobre esta Mac”. En la nueva ventana se podrá ver el nombre del procesador que usa el computador. Finalmente se debe comparar el nombre que tiene con la tabla de arriba para saber si es un CPU de 32 o 64.
Referencia:
Renata Franco