
- •1990Г. Intel® 386™ sl
- •1991Г. Intel® 486™ sx
- •1992Г. Intel® 486™ sl
- •1992Г. Intel® 486™ dx2
- •1992Г. Intel® 486™ sx2
- •1993Г. Intel® Pentium® (p5)
- •1993Г. Intel® Pentium® (p54c)
- •1994Г. Intel® 486™ dx4
- •1995Г. Intel® Pentium® Pro
- •1997Г. Intel® Pentium® mmx (p55c)
- •1997Г. Intel® Pentium® mmx (Tillamook)
- •1997Г. Intel® Pentium® II (Klamath)
- •1998Г. Intel® Pentium® II (Deschutes)
- •1998Г. Intel® Pentium® II OverDrive
- •1998Г. Intel® Pentium® II (Tonga)
- •1998Г. Intel® Celeron® (Covington)
- •1998Г. Intel® Pentium® II Xeon
- •1998Г. Intel® Celeron® (Mendocino)
- •1999Г. Intel® Celeron® (Mendocino)
- •1999Г. Intel® Pentium® II pe (Dixon)
- •1999Г. Intel® Pentium® III (Katmai)
- •1999Г. Intel® Pentium® III Xeon™ (Tanner)
- •1999Г. Intel® Pentium® III (Coppermine)
- •1999Г. Intel® Celeron® (Coppermine)
- •1999Г. Intel® Pentium® III Xeon™ (Cascades)
- •2000Г. Intel® Pentium® 4 (Willamette, Socket 423)
- •2000Г. Intel® Xeon™ (Foster)
- •2001Г. Intel® Pentium® III-s (Tualatin)
- •2001Г. Intel® Pentium® III-m (Tualatin)
- •2001Г. Intel® Pentium® 4 (Willamette, Socket 478)
- •2001Г. Intel® Celeron® (Tualatin)
- •2001Г. Intel® Pentium® 4 (Northwood)
- •2001Г. Intel® Xeon™ (Prestonia)
- •2002Г. Intel® Celeron® (Willamette-128)
- •2002Г. Intel® Celeron® (Northwood-128)
2002Г. Intel® Celeron® (Willamette-128)
Новый Celeron®выполнен на основе ядра Willamette по 0.18 мкм процессу. Отличается от Pentium® 4 на том же ядре вдвое меньшим объёмом кэша второго уровня (128 против 256 Kb). Предназначен для установки в разъём Socket 478. Кодовое имя: Willamette-128.
Тех. характеристики:
технология производства: 0,18 мкм;
тактовая частота: 1,6-2 ГГц;
кэш первого уровня: 8 Кб;
кэш второго уровня 128 Кб (полноскоростной);
процессор 64-разрядный;
шина данных 64-разрядная (400 МГц); разъём Socket 478.
2002Г. Intel® Celeron® (Northwood-128)
Celeron® Northwood-128 отличается от Willamette-128 только тем, что выполнен по 0,13 мкм техпроцессу. Кодовое имя: Willamette-128.
Тех. характеристики:
технология производства: 0,13 мкм;
тактовая частота: 1,6-2 ГГц;
кэш первого уровня: 8 Кб;
кэш второго уровня 128 Кб (полноскоростной);
процессор 64-разрядный;
шина данных 64-разрядная (400 МГц); разъём Socket 478.
18
Классический режим адресации, использованный в первых моделях семейства. Использует сегментированную модель памяти, организованную следующим образом: адресное пространство в 1 MiB разбивается на 16-байтовые блоки, называемые параграфами. Всего параграфов в 1 MiB — 65536, что позволяет пронумеровать их 16-разрядными числами. Сегменты памяти имеют размер 65536 байт, и всегда начинаются на границе параграфа. Адрес ячейки памяти состоит из двух частей: номера параграфа, с которого начинается сегмент и смещения внутри сегмента и обычно записывается как SSSS:OOOO, где S и O — шестнадцатеричные цифры. SSSS называется сегментной компонентой адреса, а OOOO — смещением. Адрес ячейки, выдаваемый на шину, представляет собой сегментную компоненту умноженную на 16 плюс смещение. Сегментная компонента помещается в специальный регистр, называемый сегментным, а смещение в регистр IP(регистр инструкций). Микропроцессоры 8086/8088, 80186/80188 и 80286 имели четыре сегментных регистра, т.е могли работать одновременно с четырьмя сегментами памяти, имеющими определенное назначение. В 80386 добавили ещё два, не имеющих специального назначения.
Сегментные регистры и их назначение:
CS — Сегмент кода. Используется для выборки команд программы;
DS — Сегмент данных. Используется по умолчанию для доступа к данным;
ES — Дополнительный сегмент. Является получателем данных в командах обработки строк;
SS — Сегмент стека. Используется для размещения программного стека;
FS — Дополнительный сегментный регистр. Специального назначения не имеет. Появился в процессоре 80386;
GS — Аналогично предыдущему, но в новых процессорах с 64-битной архитектурой имеет особый статус: может использоваться для быстрого переключения контекстов.
Несмотря на то, что сегментные регистры имеют специальные назначения, архитектура допускает при обращении к данным заменить один сегмент на любой другой. Сегменты кода, стека и получателя строк всегда используют регистры CS, SS и ES и не могут быть изменены.
Общий объём памяти, адресуемый в реальном режиме составляет 1048576 байт (0000:0000-F000:FFFF(00000-FFFFF)-логический адрес (физический адрес) в шестнадцатеричной системе счисления). Сегментный подход позволяет разделить всю память на 16 сегментов, начинающихся с адресов, кратных 64 Кбайт. Эти 16 сегментов называют страницами памяти. Обычно деление на страницы используется для совместного функционирования устройств, интерфейсы которых отображены на адресное пространство памяти; тогда каждое такое устройство использует одну страницу памяти, и адрес ячейки в адресном пространстве устройства будет совпадать со смещением в сегменте памяти компьютера. Так в компьютерах IBM PC страницы c 11 по 15 используются как «видеопамять»(адресное пространство видеоадаптера), а шестнадцатая страница(размещающаяся в адресах FFFF:0000 — FFFF:FFFF) получила название «области верхней памяти» (High Memory Area), которую впоследствии MS-DOS использовала для размещения своего ядра и буферов ввода-вывода, оставив больше «обычной» памяти прикладным программам. Таким образом реально доступная пользователю память составляет 640 Кбайт (первые 10 страниц).
Также в реальном режиме отсутствует защита памяти и разграничение прав доступа, поэтому он уже практически вышел из употребления. Является режимом по умолчанию для всех моделей процессоров семейства x86
19
Суть защищённого режима заключается в следующем. Программист и разрабатываемые им программы используют логическое адресное пространство (виртуальное адресное пространство), размер которого может составлять 1024 Мбайт (для i286). Логический адрес преобразуется в физический адрес автоматически с помощью схемы управления памятью(MMU). Благодаря защищённому режиму, в памяти можно хранить только ту часть программы, которая необходима в данный момент, а остальная часть могла храниться во внешней памяти (например, на жёстком диске). В случае обращения к той части программы, которой нет в памяти в данный момент, операционная система может приостановить программу, загрузить требуемую секцию кода из внешней памяти и возобновить выполнение программы. Следовательно, становятся допустимыми программы, размер которых больше объема имеющейся памяти. Другими словами, пользователю кажется, что он работает с большей памятью, чем на самом деле. Однако реализация системы виртуальной памяти была еще далека от совершенства. Для использования защищённого режима необходима многозадачная операционная система, например Microsoft Windows 2.0, IBM OS/2 или UNIX.
20
С появлением 32-разрядных процессоров 80386 фирмы Intel процессоры могут работать в трех режимах: реальном, защищённом и виртуального процессора 8086.
В защищённом режиме используются полные возможности 32-разрядного процессора — обеспечивается непосредственный доступ к 4 Гбайт физического адресного пространства имногозадачный режим с параллельным выполнением нескольких программ (процессов). Собственно говоря, многозадачный режим организует многозадачная операционная система, однако микропроцессор предоставляет необходимый для этого режима надежный механизм защиты задач друг от друга с помощью четырехуровневой системы привилегий. Так же в этом режиме доступна страничная организация памяти, повышающая уровень защиты задач друг от друга и эффективность их выполнения.
В процессоре i386 компания Intel учла необходимость лучшей поддержки реального режима, потому что программное обеспечение времени его появления не было готово полностью работать в защищённом режиме. Поэтому, например, в i386, возможно переключение из защищённого режима обратно в реальный (при разработке 80286 считалось, что это не потребуется, поэтому на компьютерах с процессором 80286 возврат в реальный режим осуществляется схемно — через сброс процессора).
При включении микропроцессора в нём автоматически устанавливается режим реального адреса. Переход в защищённый режим осуществляется программно путем выполнения соответствующей последовательности команд. Программы, предназначенные для защищённого режима, должны быть написаны особым образом. Это означает, что реальный и защищённый режим несовместимы.
21
Задача виртуального 8086 представляет собой обычную задачу защищенного режима со следующими особенностями:
Режим активируется установкой флажка EFLAGS.VM с помощью привилегированной инструкции (IRET, JMP <task>) (непривилегированная команда POPF, даже исполняясь на уровне привилегий 0, состояния этого флажка не изменяет).
Адрес, аналогично реальному режиму, является двухкомпонентным, состоящим из 16-битного номера 16-байтного параграфа, задающего базовый адрес сегмента и 16-битного смещения внутри сегмента;
Исходя из формата адреса, возможна адресация только нижнего мегабайта памяти (+65520 байт HMA); однако, благодаря страничному отображению, в эту область могут быть отображены произвольные страницы памяти, что позволяет организовать мультизадачность для задач DOS;
Задача исполняется с самыми низкими привилегиями в кольце 3.
Прерывания обрабатываются обычными обработчиками ОС защищенного режима. Таблица векторов прерываний по адресу 0 не используется (если не активно расширение VME). Модуль операционной системы, часто называемый V86-монитором, может эмулировать прерывание реального режима, программно обращаясь к этой таблице;
Меняется значение поля EFLAGS.IOPL. В режиме V86 оно используется для перехвата некоторых инструкций (CLI, STI, PUSHF, POPF, INT, IRET), а для перехвата ввода/вывода требуется использование битовой карты разрешения портов в сегменте состояния задачи;
Начиная с процессора Pentium в режим V86 были введены опциональные функции: таблица перенаправления прерываний и виртуализация флажка прерываний. Теперь процессор, без вмешательства ОС мог непосредственно использовать таблицу векторов прерываний по адресу 0, причем не для всех прерываний, а только для тех, что разрешила операционная система с помощью специальной битовой карты (аналогичной карте ввода/вывода) в сегменте состояния задачи. Виртуализация флага прерываний также уменьшает число исключительных ситуаций, требующих программной обработки операционной системой, что, в свою очередь, сказывается на общей производительности.
Процессоры с архитектурой x86-64 поддерживают V86 только в наследственном, но не в длинном режиме. В длинном режиме флажок EFLAGS.VM попросту игнорируется. Поэтому, для поддержки виртуальных DOS-задачи требуется переключение в наследственный режим, сопряженное с двойным сбросом MMU. А поскольку роль DOS и её приложений в наши дни практически сошла на нет, операционные системы x86-64 не включают такого рода поддержку V86. Тем не менее, некоторые современные средства аппаратной виртуализации позволяют виртуализовать как реальный режим, так и V86, получая в результате двойную виртуализацию.