Intel 80286
# Intel 80286

El Intel 80286 (llamado oficialmente iAPX 286, también conocido como i286 o 286) es un microprocesador de 16 bits de la familia x86, que fue lanzado al mercado por Intel el 1 de febrero de 1982. Cuenta con 134.000 transistores. Al igual que su primo contemporáneo, el 80186, puede ejecutar correctamente la mayor parte del software escrito para el Intel 8086 y el Intel 8088. Las versiones iniciales del i286 funcionaban a 7 y 8 MHz, pero acabó alcanzando una velocidad de hasta 25 MHz. Fue el microprocesador elegido para equipar al IBM Personal Computer/AT, introducido en 1984, lo que causó que fuera el más empleado en los compatibles AT hasta principios de los 1990.

A pesar de su gran popularidad, hoy en día quedan pocos ordenadores con el i286 funcionando. El sucesor del i286 fue el Intel 80386, de 32 bits.

## Historia

Tras las versiones iniciales a 6 MHz y 8 MHz, Intel lanzó un modelo a 12,5 MHz. AMD y Harris ampliaron esa velocidad a 20 MHz y 25 MHz, respectivamente. En promedio, el 80286 tenía una velocidad de unas 0,21 instrucciones por ciclo de reloj. El modelo de 6 MHz operaba a 0,9 MIPS, el de 10 MHz a 1,5 MIPS, y el de 12 MHz a 1,8 MIPS.

## Diseño

El rendimiento del 80286 por ciclo de reloj es más del doble que el de sus predecesores, el Intel 8086 y el Intel 8088. De hecho, el aumento del rendimiento por ciclo de reloj puede ser el mayor entre las diferentes generaciones de procesadores x86. El cálculo de los modos de direccionamiento más complejos (como base + índice) utilizaba menos ciclos de reloj porque era realizado por un circuito especial en el 286; el 8086 tenía que realizar el cálculo de la dirección efectiva en la ALU general, lo cual tomaba muchos ciclos. Además, las operaciones matemáticas complejas (como MUL/DIV) tomaban menos ciclos que en el 8086.

Al tener un bus de direcciones de 24 bits, es capaz de direccionar hasta 16 MiB de memoria RAM, mientras que el 8086 solo puede direccionar 1 MiB. Aunque el MS-DOS puede utilizar la RAM adicional (memoria extendida) mediante una llamada a la BIOS INT 15h, AH=87h, o como disco RAM o mediante emulación de memoria expandida habiendo habilitado previamente mediante software la memoria extendida, el costo de la memoria y la rareza de software que utilizara la memoria extendida y que pocos ordenadores basados en el i286 tuvieron más de 1 MiB de memoria. Adicionalmente, había una reducción de rendimiento involucrada al acceder la memoria extendida desde el modo real, como se indica a abajo.

El i286 fue diseñado para correr aplicaciones multitarea, incluyendo comunicaciones (como PBX automatizadas), control de procesos en tiempo real y sistemas multiusuario.

El último nivel E-stepping del 80286 fue un muy limpio CPU, libre de varios errores significativos que causaron problemas para los programadores y los escritores de sistemas operativos en los primeros CPU B-step y C-step (comunes en los AT y los clones AT).

## Características

Una de las características interesantes de este procesador es que fue el primer procesador x86 con modo protegido, en el cual existían cuatro anillos de ejecución y división de memoria mediante tablas de segmentos. En este modo trabajaban las versiones de 16 bits del sistema operativo OS/2. En este modo protegido se permitía el uso de toda la memoria directamente, habilitando que pudiera ser direccionada hasta 16 MiB de memoria con la unidad de gestión de memoria (MMU) lineal del chip y con 1 GiB de espacio de dirección lógica. La MMU también ofrecía protección entre aplicaciones para evitar la escritura de datos accidental (o malintencionada) fuera de la zona de memoria asignada. Por diseño, una vez que el procesador entraba en el modo protegido, no podía volver al modo real compatible con el 8086 sin un reinicio provocado por hardware. En el IBM PC/AT, IBM añadió circuitería externa como también código especializado en el ROM BIOS para habilitar una serie especial de instrucciones de programa para causar el reinicio, permitiendo la reentrada al modo real mientras se conservaba la memoria activa. Aunque esto trabajaba correctamente, el método imponía una enorme penalización en el desempeño.

Esta limitación llevó a la famosa referencia de Bill Gates sobre el 80286 como un “chip de cerebro muerto”, puesto que estaba claro que el nuevo ambiente de Microsoft Windows no podría correr múltiples aplicaciones de MS-DOS con el 286. Podría decirse que fue responsable de la división entre Microsoft e IBM, dado que IBM insistió en que el OS/2, originalmente una empresa conjunta entre IBM y Microsoft, corriera en un 286 (y en modo de texto). Para ser justo, cuando Intel diseñó el 286, no fue diseñado para poder correr en multitarea aplicaciones de modo real; el modo real fue pensado como una manera simple para que un “bootstrap loader” preparase el sistema y después cambiara al modo protegido.

En teoría, las aplicaciones de modo real podían ser ejecutadas directamente en modo protegido de 16 bits si ciertas reglas fueran seguidas; sin embargo, como muchos programas del DOS rompían esas reglas, el modo protegido no fue ampliamente usado hasta la aparición del sucesor del 80286, el Intel 80386 de 32 bits, que fue diseñado para ir fácilmente hacia adelante y hacia atrás entre los modos.

