Windows XP 64 bits emulara 32 bits (en ingles)

15/10/2003 - 22:15 por Ille Corvus | Informe spam
http://www.newsfactor.com/perl/story/22469.html

¿Podria ser un favor a Intel? (duda)


Ille Corvus. Res, non verba.
"Cave canem..."
 

Leer las respuestas

#1 JM Tella Llop [MS MVP] ·
15/10/2003 - 22:27 | Informe spam
si te hubieses leido los articulos de debate mios te habrías enterado del modo de funcionamiento de los procesadores AMD. que no les queda mas remedio que tener el Long Mode y dentro de el el Compatibility Mode porque sino no se jalan una rosca con el software actual.

Para los que estén interesados pego aquí los dos:

- PRIMERO
Bien, vamos a introducir un poco el debate, y vamos a empezar viendo como funcionan los procesadores de 64 bits conocidos.

Hasta el momento son dos: uno el Itanium de Intel. Este procesador es arquitectura RICS, por tanto una arquitectura a la que no estamos acostumbrados como usuarios finales. Basicamente se distingue de la arquitectura CICS (la que usan los sistemas de sobremesa actuales), en que sus instrucciones ensambladoreas son mucho mas elemenales, tienen decenas de registos de proposito general y particulares. El codigo a ejecutar, su optimizacion, se basa en lo optimizado que esté el compilador. Endoabladamente rapidos, pero dificil de ajustar los compiladores para un rendimiento optimo.
El Itanium e Itanium II están pensados para servidores. Existe un XP Profesional de 64 bits para ellos. En principio y debido a su precio, arquitectura de placa madre totalmente diferente, no existencia de perifericos de consumo, etc.. no estando orientado al mercado domestico... nos vamos a olvidar de él.

De cara al mercado domestico ha surgido el AMD64 como primer procesador de 64 bits. Basicamente es un procesador de 32 bits de los que conocemos, "ampliados" sus registros a 64 bits, aumentando el numero de registros, y aumentando las lineas de direcciones a 64 bits. (las lineas de datos, en los procesadores actuales (Pentium y AMD) de 32 bits, ya eran de 64 bits).

¿que significa aumentar las lineas de direcciones a 64? Bien, que la memoria que podemos direccionar con 64 bits es 2 elevado a la 64. (no es cierto, ya que el limite está en 58. De todas formas es una cantidad inimaginable por ahora).

Los actuales procesadores son capaces de manejar en principio 2 elevado a 32, es decir 4 Gigas de memoria. Tambien es mentira, ya que se puede usar 4 bits de registros de control para poder manejar 16 veces esa cantidad, es decir 64 Gigas de memoria usando lo que Intel ha definido como Physical Address Extensions (no se si AMD lo soporta, creo que no al ser propietario Intel de esta tecnologia).

Windows 2000, 2003 y XP, puede arrancarse con el parametro /PAE en el boot.ini y ya puede acceder a los 64 Gigas de memoria. Cada tarea está limitada a un espacio de de direcciones de 4 GB, siendo 2 para el sistema operativo y 2 para el espacio de usuario. Con el parametro /3GB, pueden darse 3 gigas a cada tarea y uno al sistema operativo).

Linux (ninguno de sus nucleos) puede usar PAE. Por diseño de Linux en arquitectura actual de 32 bits, está limitado a 4 GB de RAM con 3:1 es decir, 3 para la tarea y 1 para el sistema.

** Modos de funcionamiento del AMD64. (modos en que puede funcionar la CPU)

1) Long Mode: que a su vez:
1.1) 64 bit mode
1.2) compatibility mode

2) Legacy mode

Veamos que soporta cada uno de ellos:

1) Long mode exige un sistema operativo de 64 bits.

1.1) En 64 bit mode, todos los procesos deben ser de 64 bits. No puede ejecutarse software de 32 ni de 16. (por tanto, el msdos ha muerto incluso en emulacion. No existe). No existe el modo virtual 8086.

1.2) En compatibility mode, el sistema operativo es de 64 bits, pero se pueden ejecutar programas de 32 bits. No pueden ejecutarse de 16. No existe el modo cirutal 8086, por tanto, el msdos, ni tan siquiera en modo compatiblidad podrá ejecutarse.

2) Legacy mode: soporte X86 real, 8086 virtual y protegido (es para instalar sistemas operativos de 16 y 32 bits) Pueden ejecutarse aplicaciones de 16 y 32 bits. En este caso el que sea de 64 bits el procesador, es como si no lo es. En este funcionamiento es identico a las maquinas actuales.

Primer problema: ¿puede switchearse de modo?. No que yo sepa una vez arrancado el sistema operativo (no ha caido en mis manos todavia un manual assembler de este procesador, por lo cual, esta aseveracion puede ser incompleta). De todas maneras, aunque se pudiese, ningun sistema operativo lo haría, ya que es lo mismo que actualemtne en los procesadores de 32, que aunque permiten el modo real y el protegido, la cpu arranca en modo real, pero en cuanto se carga el sistema pasa a protegido y ya no switchea a modo real nunca debido al coste en ejecucion que ello supone (el modo msdos en estos procesadores, no es por switcheo a modo real, sino por usar un modo protegido especial llamado Virtual 8086). Por tanto, un sistema una vez arrancado, sera de uno de los modos dados anteriormente y no switcheará a otro de los posibles.

En la actualidad, en modo Legacy Mode es infinitamente mas lento que cualquier procesador de 32. (mas que nada porque la frecuencia es inferior y no está optimizado para instrucciones de 32 bits).

Igualmente, no existen sistemas operativos (windows) de 64 bits para estos procesadores. Microsoft watá trabajando en una beta de XP para ellos. El actual XP de 64 bits es para Itanium cuya arquitectura es totalmente diferente.

-

A la vista de lo anterior, queda abierto el debate: ¿necesitamos en la actualidad procesadores de 64 bits, o es solo por un motivo de mercado? Me explico, actualmente la velocidad de los procesadores es ya un tema critico y no va a crecer espectacularmente. Admeas, por mucho que crezca, ya no notaremos mejoras en los sistemas actuales. (precticamente de un PIII a 1 GB a un P4 a 3.2, no se nota tanta diferencia. no es 3,2 veces mas rapido...) Y por tanto el "consumo" de la gente se irá frenando.

Hay que "aumentar" dicho consumo. Solucion: nos inventamos el 64 bit. Y como todos queremos ser mas que el projimo... la demanda irá creciendo.

Particularmente creo que no es necesario ni existen limitaciones que tecnicamente nos obliguen a los 64 bits. Ni tan siquiera que lo aconsejen. (y que conste, que en cuanto salga el AMD64 a la calle, me compraré uno. y eso que AMD tampoco me gusta ;

Ayer, comentamos los modos fe funcionamiento del AMD64, y no entramos a ver como se va a implementar el sistema opertaivo (importantisimo), y el resto del software.

Recordemos un poco:

** Modos de funcionamiento del AMD64. (modos en que puede funcionar la CPU)

1) Long Mode: que a su vez:
1.1) 64 bit mode
1.2) compatibility mode

2) Legacy mode

Veamos que soporta cada uno de ellos:

1) Long mode exige un sistema operativo de 64 bits.

1.1) En 64 bit mode, todos los procesos deben ser de 64 bits. No puede ejecutarse software de 32 ni de 16. (por tanto, el msdos ha muerto incluso en emulacion. No existe). No existe el modo virtual 8086.

1.2) En compatibility mode, el sistema operativo es de 64 bits, pero se pueden ejecutar programas de 32 bits. No pueden ejecutarse de 16. No existe el modo cirutal 8086, por tanto, el msdos, ni tan siquiera en modo compatiblidad podrá ejecutarse.

2) Legacy mode: soporte X86 real, 8086 virtual y protegido (es para instalar sistemas operativos de 16 y 32 bits) Pueden ejecutarse aplicaciones de 16 y 32 bits. En este caso el que sea de 64 bits el procesador, es como si no lo es. En este funcionamiento es identico a las maquinas actuales.
-

* La primera pregunta que surge es ¿en que modo de funcionamiento se va a implementar WIndows XP con las extensiones de 64 bits para esta arquitectura?.

- Entiendo que será en el modo 1.2 (por exclusion del resto. El modo 2), es el actual XP, que funcionaría bastante mas lento que en uno cualquiera de los chips actuales P4 o AMD, y no podría usar nada de la arquitectura nueva. Por tanto, no tiene sentido. El modo 1.1) obligaría a que todo el software fuese de 64 y nada del software actual funcionaría).


* Sobre el supuesto anterior ¿que impactos tendría a la tecnoliga actual?: veamos ventajas y desventajas.

- El acceso a memoria, (su velocidad) será exactamente igual al actual. El bus de datos del P4 actual ya es un bus de 64 (solo es de 32 el de direcciones). Por tanto, o cambia el diseño de las placas madre y se hacen chips de memoria mas rapidos -y mas caros- o no se notará ventajas.

- Los drivers, en un sistema de 64 bits, deberán ser reescritos -no solo compilados-. Por tanto, no tendremos drivers para nuestros dispositivos, excepto los que traiga el propio sistema operativo. Y mucho hardware, sus fabricantes, no sacaran drivers. simplemente porque el desarrollo de estos será muy caro, y les conviene mas, sacar nuevo hardware y en ese nuevo añadir tambien drivers de 64. Con eso consiguen su proposito de renovar tambien el parque de hardware. Para ellos, todo seran ventajas. Para los usuarios, seran gastos.

- El software actual de 32 bits (todo de 32 bits), funcionaría, en principio sin problemas. Digo en principio, porque el software que ahora mismo cargue drivers o filtros dinamicamente, no funcionará ya que esos drivers o filtros deben ser obligatoriamente de 64 bits. Ejemplos de esto, son el software de grabacion de DVD, el software de visionado de DVD -ya que necesita codecs-. Los codecs de video deberán ser reescrotos todos. Los actuales no funcionarán.

- El software que no tenga esas cosas, funcionará, pero "penalizado". Es decir mas lento que en las maquinas actuales, ya que estará usando un modo de compatibilidad, y no es el modo nativo del procesador.

- El software de 16 bits, que actualmente funciona sin problemas (muchisimo software actual, aunque no nos lo parezca, sigue siendo de 16 bits, o tiene modulos de 16).

- El msdos, no funcionará ni tan siquiera en ventana. Esto es debido a que el modo virtual 8086 no está soportado en esta modalidad del procesador.


** ¿un poco tetrico el panorama al menos al principio?... ¿no?...

Y la pregunta del millon: ¿se venderan suficientes unidades para que los fabricantes de software se planteen la migracion a 64, con el gasto de desarrollo que esto conlleva?...



Jose Manuel Tella Llop
MS MVP - DTS


Este mensaje se proporciona "como está" sin garantías de ninguna clase, y no otorga ningún derecho.

This posting is provided "AS IS" with no warranties, and confers no rights.
You assume all risk for your use.


"Ille Corvus" wrote in message news:
http://www.newsfactor.com/perl/story/22469.html

¿Podria ser un favor a Intel? (duda)


Ille Corvus. Res, non verba.
"Cave canem..."

Preguntas similares