Inicio > Hardware, Sistemas, Sistemas operativos > Sistemas operativos y arquitecturas de 32 y 64 bits

Sistemas operativos y arquitecturas de 32 y 64 bits

Llevo un tiempo dándole vueltas a este post y por fin a visto la luz. Espero que después de su lectura hayas aprendido algo nuevo, te haya aclarado las ideas y te sea útil a la hora de elegir un sistema operativo en consonancia con el cerebro de tu ordenador.

LA ARQUITECTURA DE UN ORDENADOR.

La arquitectura de un ordenador está constituida por la arquitectura de su conjunto de instrucciones o ISA (del inglés Instruction Set Architecture) y su microarquitectura.

Arquitectura del ordenador = Arquitectura del conjunto de instrucciones (ISA) + Microarquitectura

La arquitectura del conjunto de instrucciones (ISA) es una imagen abstracta del sistema de computación tal como sería visto por un programador en lenguaje máquina, e incluye el conjunto de instrucciones, modos de direccionamiento, registros y formatos de direcciones y datos soportados por el procesador o CPU (del inglés Central Processing Unit).

Los procesadores, y por extensión los ordenadores, quedan definidos por tanto en base a la arquitectura del conjunto de instrucciones que implementan, así podemos encontrar referencias a procesadores u ordenadores de tipo CISC, RISC o SISC:

  • CISC (Complex Instruction Set Computer).
  • RISC (Reduced Instruction Set Computer).
  • SISC (Specific Instruction Set Computer).

En arquitectura de computadoras, 16 bits, 32 bits o 64 bits es un adjetivo usado para describir enteros, direcciones de memoria u otras unidades de datos que comprenden hasta 16 bits, 32 bits o 64 bits de ancho. En el tema que nos ocupa, se utilizan para referirse a una arquitectura de procesador basadas en registros, bus de direcciones o bus de datos que permiten procesar (interna y externamente) datos de ese ancho.

Diferentes familias de procesadores pueden tener diferentes ISA, por este motivo, un programa compilado para un tipo de máquina no podrá ejecutarse en otra con un conjunto de instrucciones diferentes. Del mismo modo, un procesador con una arquitectura de 32 bits no podrá ejecutar un sistema operativo u otra aplicación compilada para una arquitectura/procesador de 64 bits. Sin embargo, por compatibilidad hacia atrás, lo inverso suele ser posible, es decir, podemos ejecutar aplicaciones de 32 bits en procesadores de 64 bits.

La microarquitectura, en cambio, es de nivel más inferior, más concreto. Muestra las partes constituyentes del sistema y cómo se interconectan e interoperan, para así implementar la especificación de la arquitectura. La microarquitectura generalmente es representada empleando un digrama de bloques que describe las interconexiones entre registros, buses y bloques funcionales de la máquina.

Diagrama de bloques de la microarquitectura Intel Nehalem

Diagrama de bloques de la microarquitectura Intel Nehalem

Diferentes ordenadores podrían tener una misma arquitectura del conjunto de instrucciones, y así ser capaces de ejecutar los mismos programas, sin embargo, pueden tener diferentes microarquitecturas. Esas diferentes microarquitecturas (junto con los avances en las tecnologías de fabricación de semiconductores) son las que permiten nuevas generaciones de procesadores que permiten alcanzar mejores niveles de rendimiento o performance comparadas con las generaciones previas.

Por otra parte, las construcciones de hardware, el esquema físico del circuito y otros detalles físicos son llamados implementación de esa microarquitectura. Dos máquinas pueden tener la misma microarquitectura, y por lo tanto el mismo diagrama de bloques, pero diferentes implementaciones del hardware.

Die Nehalem

Die Nehalem

ARQUITECTURAS INTEL Y AMD DE 32 Y 64 BITS.

Cuando buscamos información sobre arquitecturas de 32 y 64 bits de Intel y AMD podemos terminar realmente mareados y confusos entre tantos términos que, en principio, parecen iguales pero en el fondo no lo son, o que nos llevan a pensar una cosa totalmente errónea. A modo de ejemplo, ¿las arquitecturas IA-32 e IA-32e son la misma arquitectura? ¿las dos arquitecturas (IA-32 e IA-32e) son de 32 bits? ¿es la arquitectura x86-64 una arquitectura de Intel cómo lo es la arquitectura x86-32? ¿i386, x86-32, x86 e IA-32 son lo mismo? ¿es lo mismo x86-64, x64 e IA-64? ¿es lo mismo IA-64 e Intel 64?

Vamos a aclarar un poco las cosas…

IA-32 (Intel Architecture, 32 bits) es la arquitectura del conjunto de instrucciones de los procesadores de Intel 80×86 y de los primeros microprocesadores de AMD. IA-32 fue una extensión de 32 bits, implementada por primera vez en 1986 en el procesador Intel 80386, sucesor de los antiguos procesadores Intel 8086, 8088, 80186 y 80286 de 16-bit y el denominador común de todos los diseños 80×86 subsiguientes (80486, 80586, 80686). Por este motivo, también es conocida de manera genérica como arquitectura i386, x86-32 o x86, aunque bajo esta última denominación (x86), y también como x86-16, se suele incluir a los procesadores Intel de 16 bits.

El salto a los 64 bits se produjo con la aparición de una nueva extensión en el año 2000 derivada de IA-32 llamada x86-64, desarrollada por AMD y posteriormente renombrada a AMD64 (el primer procesador con soporte para este conjunto de instrucciones fue el Opteron). Mas tarde, en el 2004, esta arquitectura extendida fue adoptada por Intel, el nuevo conjunto de instrucciones recibió el acrónimo EM64T (“Extended Memory 64 Technology”), cuyo nombre código fue Yamhill o IA-32e, y posteriormente fue renombrado adoptando el nombre definitivo de Intel 64 (arquitectura utilizada por primera vez a principios del 2005 con el Pentium 4). A estas arquitecturas de 64 bits se las conoce de manera genérica como x86-64 o x64, y no debemos confundirlas con la arquitectura IA-64 de 64-bits.

La arquitectura IA-64 (Intel Arquitecture, 64 bits) de Intel (perogrullada), fue lanzada en 1999, y no es directamente compatible con el conjunto de instrucciones IA-32 (excepto bajo emulación software) como sí sucede en el caso de las arquitecturas Intel 64 y AMD64. IA-64 es la arquitectura utilizada por la línea de procesadores Itanium e Itanium 2, por lo que inicialmente fue conocida por el nombre de Intel Itanium Architecture.

Resumiendo:

Arquitectura:    Conocida inicialmente como:    Nombre genérico      Bits:
IA-32            -                              i386, x86-32, x86    32 bits
AMD64            x86-64 (Hammer)                x86-64, x64          64 bits
Intel 64         EM64T (Yamhill o IA-32e)       x86-64, x64          64 bits
IA-64            Itanium Architecture           -                    64 bits

OTRAS ARQUITECTURAS.

Además de las arquitecturas de Intel y AMD existen otras muchas, entre las más conocidas:

  • SPARC (del inglés Scalable Processor ARChitecture) es una arquitectura RISC originalmente diseñada por Sun Microsystems y que podemos encontrar en los procesadores de Sun (ahora Oracle).
  • PowerPC (usualmente abreviada PPC) es el nombre de la arquitectura de computadoras de tipo RISC desarrollada por IBM, Motorola y Apple. Los procesadores de esta familia son utilizados principalmente en ordenadores Macintosh de Apple hasta el año 2006 y en varios modelos IBM.
  • ARM (Advanced RISC Machines) es una familia de microprocesadores RISC diseñados por la empresa Acorn Computers y desarrollados por Advanced RISC Machines Ltd., una empresa derivada de la anterior.
  • PA-RISC es el nombre por el que se conoce una arquitectura de microprocesadores desarrollada por sistemas Hewlett-Packard y VLSI Technology Operation. Esta arquitectura se basa en el modelo RISC y en PA (Precision Architecture). También se suelen referir a ella como la arquitectura HPPA (Hewlett Packard Precision Architecture). Los primeros PA-RISC fueron dispositivos de 32 bits. El diseño fue actualizado en 1996 dando lugar a la versión 2.0 de la arquitectura. Esta nueva versión era una arquitectura de 64 bits.
  • Alpha es una arquitectura de microprocesadores diseñada por DEC e introducida en 1992 bajo el nombre AXP. Cuenta con un juego de instrucciones RISC de 64 bits, pero también puede manejar datos de 32, 16 bits y por último de 8 bits.

APROVECHANDO LAS VENTAJAS DE UNA ARQUITECTURA DE 64 BITS.

En la arquitectura de ordenadores, el término 16, 32 o 64 bits suele hacer referencia, como hemos visto, al diseño del procesador, pero también esta relacionado con el tamaño de los buses (de datos, de dirección y de control) del equipo. Centrándonos en la arquitectura de 64 bits, una CPU de 64 bits puede calcular tareas individuales más rápido que un procesador de 32 bits y puede direccionar una cantidad de memoria considerablemente superior al límite de 4GB impuesto por los procesadores de 32 bits.

Las ventajas del hardware de 64 bits solo se pueden aprovechar al máximo si el software que se instala está diseñado para usar todas las características del hardware. El software diseñado para equipos de 32 bits, aunque es compatible con una arquitectura de 64 bits, ofrecerá pocas o ninguna de las ventajas deseadas cuando se instala en un equipo de 64 bits. Por esta razón siempre que sea posible conviene utilizar software de 64 bits sobre hardware de 64 bits.

Llegados a este punto, seguro que te estarás preguntando…

¿PERO PARA QUE SIRVE TODO ESTO?

Supongamos que queremos instalar una distribución GNU/Linux en nuestro ordenador y nos decantamos por Mandriva Linux Free 2010.2. En su página de descarga tendremos la posibilidad de elegir entre una versión de 32 bits o de 64 bits:

Mandriva Download

Sabiendo si el procesador de nuestro ordenador es de 32 bits o de 64 bits tendremos claro por qué opción decantarnos.

Supongamos ahora que la distribución elegida es Ubuntu 10.10 y deseamos descargar su CD utilizando BitTorrent. En la página de descarga encontraremos los siguientes enlaces:

Ubuntu Download

Página alternativa de descarga de Ubuntu 10.10 con BitTorrent

Ahora la cosa se complicaría un poco, podemos ver referencias a amd64 e i386 en los enlaces. Resulta que tengo un procesador Intel de 64 bits, pero eso de amd64 me suena a microprocesadores AMD, así que me decanto por el enlace ubuntu-10.10-alternate-i386.iso.torrent. En este caso la opción sería poco acertada, ya que estarías instalando una versión de Ubuntu de 32 bits sobre una arquitectura de 64 bits, desaprovechando sus ventajas. La opción correcta hubiese sido hacer clic en el enlace ubuntu-10.10-alternate-amd64.iso.torrent ya que, aunque se trata de una arquitectura desarrollada por AMD, es compatible con los micros de Intel. Si nuestro micro fuese de 32 bits la opción correcta habría sido ubuntu-10.10-alternate-i386.iso.torrent.

La mayor complicación viene cuando la distribución elegida es Debian:

Debian Download

Como vemos tenemos un bonito listado de arquitecturas de entre las cuales tendremos que elegir una para nuestro ordenador, en función de si este integra un microprocesador Intel (Itanium o no), AMD, Alpha, Sparc… y si, en el caso de los dos primeros, es de 32 bits o 64 bits… ¿Sabrías cual elegir? Espero que este post te ayude a hacerlo.

Enlaces relacionados:

Tu opinión es importante, por favor, si has llegado hasta aquí, dedica 2 segundos a darme tu opión sobre el blog. Gracias.

About these ads
  1. Aida
    25 octubre, 2011 en 23:31 | #1

    Gracias por la información!!!!!

  2. Soledad
    12 septiembre, 2012 en 17:49 | #2

    Muy bien logrado tu aportación, ¡felicidades!

  3. Leo Kopel
    14 octubre, 2012 en 1:21 | #3

    Muy bueno, justo lo que buscaba.
    Gracias

  4. benito
    17 enero, 2013 en 15:50 | #4

    Gracias por la info!Me decantare por Fedora 18 x86_64 bits.Espero que las aplicaciones en su mayoria esten para esta arquitectura, aunque leyendo dicen que Skype no esta disponible en 64 bits.Veremos como se comporta el sistema.Gracias de nuevo.

  5. 17 enero, 2013 en 21:07 | #5

    Gracias a todos por vuestros comentarios.

    Un saludo

  6. 15 marzo, 2014 en 2:28 | #6

    Gracias. Yo andaba perdido en este tema…

  1. No trackbacks yet.

Deja un comentario

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

Seguir

Recibe cada nueva publicación en tu buzón de correo electrónico.

%d personas les gusta esto: