En resumen:.. X86 chupa
Las dos últimas décadas de la informática personal estaban dominados por el x86 arquitectura, mientras incrustado hardware, como los teléfonos celulares, reproductores multimedia y hornos de microondas utilizados tradicionalmente diseños hambrientos de poder más simples y menos, a saber, ARM, MIPS y SH3 arquitecturas.
Desde que los dispositivos primero ‘inteligentes’ ( PDAs / teléfonos donde se puede instalar sus propias aplicaciones personalizadas) han aparecido, que ha sido un sueño de muchas personas para reducir la brecha en la potencia y capacidades de estos dispositivos y ordenadores de sobremesa de computación. Ha habido una gran cantidad de proyectos de la comunidad para ejecutar las distribuciones Linux / BSD en toda regla en los dispositivos de mano, pero no fue hasta hace poco que los grandes jugadores como M $ y Apple dirigieron su atención a las arquitecturas que no sean x86. 2012 va a ver el final del mundo aparición de una gran cantidad de ordenadores portátiles basados en ARM, ya que Windows 8 va a ser portado a la arquitectura.
La migración a (o, más bien, la adopción de) una nueva arquitectura ha causado una gran cantidad de FUD y confusión. Vamos a considerar algunos de los mitos más comunes sobre x86 vs debate no x86 y analizar los puntos de los dos campos fuertes y débiles
Mito 1:. X86 tiene una enorme base de software y no puedes reemplazarlo
Realidad:. la mayoría de los vendedores comerciales (incluyendo M $ , Adobe, etc) está adaptando o que ya haya portado su software a la nueva arquitectura. Software de código abierto, debido a la efforst de las principales distribuciones como Debian, ya está portado a casi cualquier cosa que pueda calcular.
Por supuesto, hay un montón de software de legado, para la que incluso el código fuente puede ser perdido. Pero eso es sólo porque alguien fue lo suficientemente estúpido como para hacer que su software de código cerrado desde el principio. A pesar de que este llamamiento a los administradores, desde el punto de vista de la ingeniería es código cerrado código el peor pecado porque reduce interoperabilidad con otras piezas de software, causa muchos problemas cuando se rompe API / ABI ( en importantes cambios ) y por supuesto que no se puede confiar en los binarios cuando usted no puede ver el código.
Una aproximación al problema de software legado es lo que la industria ha estado haciendo durante siglos – la virtualización. Emulación de hardware, para ser más precisos. A pesar de que reduce el rendimiento de múltiples órdenes de magnitud, puede ser un salvador, en algunos casos extremos. . Por ejemplo, cuando se necesita su aplicación de negocios antiguo una vez en dos meses, pero quiere disfrutar de su portátil fresco y luz ARM el resto del tiempo
Mito 2: x86 es estandarizada. Incluso sin el soporte del proveedor, un conjunto genérico de controladores funciona en cualquier lugar. ARM, ¿dónde está tu ACPI
Realidad: La realidad es que a pesar de que Normas existo, que rara vez se implementan correctamente. Incluso en cosas como ACPI x86, gráficos híbridos, teclas de función se rompen a menudo y no estándar que significa es probable que su ordenador portátil no funcionará hasta que instale el conjunto personalizado de los controladores del OEM. ¿O va a funcionar, pero agotar la batería como un loco
Mito 3:.. ARM nunca será tan rápido como X86 Si bien esto es cierto que los SoC ARM modernas son típicamente lag casi una década detrás de X86 en términos de poder de procesamiento, es posible construir un alto rendimiento RISC SoC. El problema es que el aumento de rendimiento por medio de la reducción de tamaño de la pastilla aumentará la potencia de manera exponencial. Emulación de un CISC X86 en un núcleo RISC aumenta la complejidad de la CPU y por lo tanto reduce el rendimiento por vatio. La realidad es que ARM CPUs se utilizan principalmente en hardware portátil , por ejemplo, ordenadores portátiles, teléfonos inteligentes, tablets, donde se prefiere el ahorro de energía sobre el rendimiento.
El verdadero problema con X86 es que es un término general utilizado para referirse a un montón de hardware que se remonta a las calculadoras de la zona de la prehistoria a los sistemas de la más nueva ‘Ivy Bridge’. Un problema notable de esta arquitectura es la presencia de tres modos incompatibles de ejecución: modo real de 16 bits, el modo protegido de 32 bits, modo largo de 64-bit. El software de legado tiende a ser una mezcla de éstos e implica cambios de contexto que aumentan la latencia y reducir potencialmente el nivel de seguridad.
Mientras X86 es montado por una multitud de restos de la pasado, todavía tiene ventajas sobre ARM / MIPS utiliza típicamente en hardware embebido :
- Harware virtualziation apoyo (hipervisor). ARM, por ejemplo, es todavía para liberar el núcleo Cortex A15 y el conjunto de instrucciones ARMv8 añadiendo extensiones de virtualización. Si bien es posible utilizar el hipervisor TrustZone virtualizar hardware, hay que hacer notar que no hay absolutamente ninguna norma que describen lo que las API deben proporcionar un sistema operativo TZ y TrustZone está diseñado para proteger al usuario de la manipulación de su hardware y no para proteger la los datos del usuario de portarse mal entorno de ejecución
- apoyo estandarizada BIOS / EFI para el hardware común:. framebuffer VESA, controladores SATA / EHCI / xHCI, teclado i8042 etc Aunque estas interfaces normalmente no permiten utilizar la computación avanzada y capacidades de ahorro de energía del hardware, que permiten obtener un núcleo a medida que se ejecuta en una nueva junta directiva que carecen de documentación del fabricante del hardware.
Entonces, la pregunta es: ¿Es la migración a una nueva arquitectura necesaria
La respuesta es:. sí y no />
Lo que se necesita es la adaptación de software para el nuevo paradigma de computación. 80-s y 90 s fueron dominados por la impresión de que la frecuencia de la CPU se puede aumentar indefinidamente y la memoria RAM es cara. Recientemente, sin embargo, la memoria RAM se ha convertido en muy asequible y CPUs están golpeando la barrera de la frecuencia debido a la tecnología utilizada junto con el ahorro de energía restricciones (bueno, hay algunas alternativas como el uso de interconexiones ópticas o regresando de nuevo a usar el germanio para los semiconductores, pero finalmente va a golpear el cuello de botella de nuevo en un par de años). computación moderna involucra sistemas multiprocesador asimétricos con arquitecturas heterogéneas y el uso de los procesadores vectoriales (SSE, neón, CUDA) para explotar el paralelismo a nivel de datos .