Intel X86S es oficialmente exclusivo de 64 bits tras la eliminación de las funciones de 16 bits y 32 bits
Fue a partir de la década de los años 70 cuando los primeros procesadores comerciales de PC aparecieron, siendo el primero de ellos el Intel 4004, que hace unos años cumplió su 50º aniversario. Este procesador apenas tenía 740 kHz y se trataba de una CPU de 4 bits, el cual sería empleado en calculadoras mientras pasaban los años y la compañía iba lanzando procesadores más potentes. En la actualidad, Intel está trabajando en una nueva versión de la arquitectura x86 llamada X86 1.2, la cual pierde las funciones de 16 y 32 bits.
Después del Intel 4004, llegaron el 8008 en 1972 y el 8080 en 1974, aunque el que más éxito tuvo fue el 8086 en 1978, siendo una CPU de 16 bits. Este último procesador y todos los que continuaron fueron los primeros en emplear la arquitectura x86, la cual como ya estás viendo, tiene muchos años y aunque permite asegurar la compatibilidad de los procesadores a partir del 8086, Intel está tratando de actualizarla.
Intel X86S 1.2 se encarga de eliminar las funciones de 16 y 32 bits, además de muchos otros cambios
#Intel released the X86S (simplified, legacy-free X86) specification 1.2 with a lot of modifications and new CPUID bits:
CPUID.7.1.ECX[2]: X86S (LEGACY_REDUCED_OS_ISA)
CPUID.7.1.ECX[4]: SIPI64 (64-bit “start-up” interprocessor interrupt)https://t.co/vX9R6hINqt https://t.co/dcekaF540v pic.twitter.com/FCOOz6FKGs— InstLatX64 (@InstLatX64) September 24, 2024
Intel está trabajando en una nueva versión de la arquitectura X86 bajo el nombre de X86S. La versión X86S 1.2 ha sido la última publicada por Intel y en el post de X de InstLatX64 podemos ver un resumen de algunos de los cambios realizados en esta. Todos estos forman parte del proceso de optimización que Intel está realizando en este nuevo conjunto de instrucciones que se centrarán en los 64 bits. Y es que, podemos leer como se han eliminado ciertas funciones de 16 y 32 bits.
La versión 1.2 trae consigo la eliminación del ring 0 y el modo vm86 de los 32 bits, eso sí no lo elimina del todo si tenemos en cuenta que ha añadido un "modo de compatibilidad de 32 bits". Respecto a los 16 bits, vemos que elimina el modo protegido, real y la direccionamiento.
Se ha eliminado la compatibilidad nativa de 32 bits
Junto a estos cambios, tenemos la eliminación de los MTTRs fijos, el I/O a nivel de usuario, el control legacy de FPU en CR0, las instrucciones de acceso CR o la eliminación de XAPIC para solo soportar X2APIC. Podemos determinar por estos cambios que el objetivo de Intel es modernizar la arquitectura X86 que tiene casi 40 años, pero a su vez, está tomando un camino que podría no tener vuelta atrás. Precisamente lo que hizo a x86 popular fue el hecho de que ofrecía compatibilidad con procesadores y funciones antiguas. Esto ha permitido que todas las CPU x86 y los sistemas operativos funcionen sin demasiados problemas y algunos creen que estos cambios eran innecesarios.
Con X86S se elimina la compatibilidad nativa de 32 bits, la cual hemos visto que ha ido perdiendo importancia con la llegada de las CPU de 64 bits hace 20 años y un poco más adelante, los sistemas operativos de 64 bits. La gran mayoría de ordenadores a día de hoy emplean los SO de 64 bits para así aprovechar más de 4 GB de RAM, un requisito que es fácil de cumplir en la actualidad. Eso sí, aunque se hayan publicado estas notas sobre X86S, por ahora Intel no lo ha implementado, aunque en el momento en el que lo haga, perderíamos esa compatibilidad legacy que X86 nos ha proporcionado.