Аппаратная платформа компьютера

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск
Схема, иллюстрирующая многоуровневую структуру компьютера

Аппаратная платформа компьютера (архитектура компьютера) — уровень, образованный микроархитектурой, микропрограммой управления ядром микропроцессора и архитектурой набора команд на аппаратной базе конкретных микросхем процессора, чипсета, других физических компонентов, которые в совокупности составляют аппаратную модель вычислительной системы.

Предназначен для запуска определенных семейств программных продуктов (операционная система, прикладное программное обеспечение), которые, в свою очередь, разработаны исходя из возможностей и для запуска на данной аппаратуре.

Конкретно, аппаратные платформы отличаются друг от друга совокупностью аппаратуры (процессором, чипсетом), а также разработанными (и запускаемыми) программными компонентами.

Платформы-бренды[править | править вики-текст]

Одной из наиболее распространённых офисных платформ и персональных компьютеров является IBM PC. На рынке персональных компьютеров также распространены компьютеры Apple. Эти платформы являются широко известными брендами.

Аппаратная платформа Актуальность Разработчик Разрядность, бит Типы систем Год начала производства Снятия с производства Примечания
Amiga Нет Commodore International, Escom, MacroSystem 32 ПК, игровая приставка, сервер 1985 1996 Архитектура «классических» Amiga на процессорах m68k. В производстве имеется клон на современной элементой базе (MiniMig))
Amiga PowerPC Да Eyetech Group, Genesi, bPlan GmBH, ACube Systems Srl 32/64 ПК 2002 В производстве Современные Amiga работающие на процессорах PowerPC.
IA-32 Да Intel 32 ПК, сервер, ноутбук, кластер 1985 ? Доминирующая архитектура в мире Windows
x86-64 Да AMD 64 ПК, сервер, ноутбук, кластер 2003 В производстве Обратная совместимость с i386. Широко производимая, но, из-за отсутствия 64 bit драйверов для некоторых устройств, чуть реже используемая архитектура.
SPARCv8 Нет Sun Microsystems 32 рабочая станция,сервер 1992 ?
SPARCv9 Да Sun Microsystems 64 рабочая станция,сервер 1994 В производстве
IA-64 Да Intel и Hewlett Packard 64 сервер 2001 В производстве Разрабатывалась на смену 32 битных CPU Intel, но не совместима с i386. Потеряла важность с появлением x86-64
Alpha Нет DEC 64 рабочая станция, сервер 1992 27 октября 2007 года
ESA/390 Да IBM 32 мейнфрейм 1990 ? Обратно совместим с System/360 и ESA/370. Фирмами среднего размера применяется для хранения данных и виртуализации серверов (LPAR).
z/Architecture Да IBM 64 мейнфрейм 2000 В производстве Обратно совместим с ESA/390. Применяют до 60 LPAR. Возможно несколько машин этого класса объединить в кластер.
Xbox 360 Да Microsoft в сотрудничестве IBM, ATI и SiS 64 игровая приставка 2005 В производстве CPU Xenon с архитектурой PowerPC, 3 ядра с двумя аппаратными потоками на каждое, 3,2 ГГц. Заявленная суммарная производительность системы — 1 ТFLOPS (производительность CPU — 115 Гфлопс). Частично совместим с Xbox.
PlayStation 3 Да Sony в сотрудничестве с Toshiba и IBM 64 игровая приставка 2006 В производстве Частично совместима с PlayStation и PlayStation2. 2 Тфлопс. CPU Cell. GPU RSX от NVidia.
Famicom (Dendy в России) Нет Nintendo, Масэюки Уэмурой 8 игровая приставка 1983 В производстве Процессор 6502 1,79 МГц, ОЗУ 2 Кб, картридж ПЗУ 48 Кб, видеопамять 2 Кб, 256×240 пикселов, 48 цветов, пятиканальный звукогенератор.
Motorola 68xxx Нет Apple 16 ПК 1984 1996 ПК Apple Macintosh под управлением Mac OS Classic версий до 7.5.1
PowerPC Нет Apple 32 ПК, сервер 1996 2006 ПК и сервера Apple Macintosh под управлением Mac OS Classic версии 8, версии 9 и Mac OS X для платформы PowerPC.

Платформы-анклавы[править | править вики-текст]

Иногда ветвь CPU прекращает развитие, и может возникнуть компьютерный анклав, то есть пользователи по-прежнему любят свои компьютеры или не могут от них отказаться. Технический прогресс в анклаве замедлен или полностью остановлен. Железо компьютерного анклава на уровне машинных кодов не совместимо с мейнстрим платформами и постепенно морально стареет. Это значит, что у пользователей есть большой соблазн сменить платформу. Программисты если и пишут новый софт, то, как правило, на свободных, нежели коммерческих, началах.

  • Анклав Commodore 64 во многом обязан своему существованию возможности писать музыку на этом компьютере 1982 года выпуска. Немецкая группа Welle:Erdball, играющая в стиле Synthpop, пишет пять своих участников — пятым, всегда и везде указываемым в списке музыкантом, является компьютер Commodore 64.
  • 8-битные процессоры Intel, такие как 8080 и 8085, несовместимы с 8086 и другими 16-битными процессорами Intel. Сегодня 8080 и 8085 являются анклавом. Примером из анклава может быть компьютер MFA с процессором 8085. Он по-прежнему применяется студентами для изучения функционирования ЭВМ. Несовместимые с архитектурой IA-32 процессоры/платформы линий iAPX 432, i960 и i860, тоже ушедшие в прошлое, по разным причинам анклавов не образуют.
  • ZX Spectrum, будучи созданным в 1982, применяется любителями до сих пор. Процессоров Z-80 произведено более миллиарда. В мире огромное число клонов ZX Spectrum, многие из которых сделаны в СССР и России. Современный спектрум имеет CD привод, модем и существует во многом благодаря участию в демосцене, которая в РФ получила огромную популярность именно на ZX Spectrum. Таким образом, хотя ZX Spectrum не слишком активно совершенствуется технически, но остаётся полотном для компьютерного искусства.

Несовместимые аппаратные платформы[править | править вики-текст]

Аппаратные платформы несовместимы в случае различия программной модели процессора, а также различия системных шин и устройств на материнской плате.

Несовместимость кода, выполняемого процессором[править | править вики-текст]

Корпорация Intel, развивая свои семейства процессоров, наполняет процессоры дополнительными командами: команды математического сопроцессора (FPU); команды оптимизированные для обработки мультимедийного контента (MMX); серии команд SSE (SSE, SSE2, SSE3, SSE4 и SSE5); поддерживаемые только AMD команды 3DNow!, а также 64-битный набор команд AMD64. Новые команды серьёзно влияют на совместимость процессоров, поэтому разработчикам программного обеспечения приходится ориентироваться на две платформы, более старую и «многочисленную» IA-32 и новую, перспективную x86-64. Проблема совместимости кода — ситуация, когда процессоры различных семейств не могут выполнять один и тот же машинный код. Например, между двумя 32-битными процессорами одного и того же производителя, Intel — Pentium и Pentium 2, может возникнуть несовместимость по причине присущего ограничения (аппаратного отсутствия MMX команд), если на первом будет запущена программа, откомпилированная с учётом имеющихся на Pentium 2 аппаратных возможностей.

Несовместимость устройств и материнских плат[править | править вики-текст]

Конкретно взятая материнская плата, особенно персонального компьютера, также вносит свой вклад в несовместимость платформ. На современной материнской плате расположено множество встроенных (англ. integrated, интегрированных в плату) устройств, для которых, в отличие от определённых в дистрибутиве семейства операционных систем Windows NT восьми альтернативных (англ. Hardware abstraction layer, HAL) и мультиплатформенных драйверов для целых классов устройств, нужны специфические драйверы. Поэтому, при установке операционной системы Windows 9x или NT, она посредством установки драйверов специфического оборудования, «привязывается» к конкретной материнской плате. Последующий перенос операционной системы на другую материнскую плату сопряжен со сложностью обеспечения аппаратной совместимости новой аппаратной платформы.

Для решения этой проблемы в корпоративном сегменте, новая техника (материнская плата, периферийные устройства) проходит тщательную подгонку под существующий HAL, либо, если разрабатываемая линейка является революционной и перспективной, под неё создается новый HAL, согласованный со сторонними разработчиками программного и аппаратного обеспечения.

Кроссплатформенное программное обеспечение[править | править вики-текст]

Запуск программного обеспечения на более чем одной аппаратной платформе и/или операционной системе является важной задачей, как для разработчиков новой аппаратуры, так и для программистов.

  • Debian компилирует свои пакеты для GNU/Linux для трёх архитектур процессоров Intel: IA-32 (x86-32), x86-64, IA64. Также официально создаются пакеты для ещё 8 аппаратных платформ. Пакеты, оптимизированные для конкретных процессоров своих платформ пользователи могут создать сами. Debian GNU/Hurd и GNU/kFreeBSD пока поддерживают меньшее количество платформ.
  • ОС NetBSD портирована на 60 аппаратных платформ (включающих в общей сложности 17 различных процессорных архитектур).
  • Microsoft разрабатывает специальные ветки своей операционной системы Microsoft Windows: Windows CE и Windows Embedded.
  • Запуск на различных архитектурах одного и того же прикладного программного обеспечения без необходимости обеспечивать совместимость на уровне ОС реализуется путём стандартизации языков, компиляторов, библиотек и среды исполнения (см., например, POSIX), а также путём перехода на исполнение ПО в виртуальной машине и стандартном окружении, которые реализуются для каждой платформы и гарантируют единообразное исполнение ПО независимо от платформы (см., например, Common Language Infrastructure и JVM).

Литература[править | править вики-текст]

  • Э.Таненбаум. Архитектура компьютера = Structured Computer Organization. — 5-е изд.. — СПб.: Питер, 2007. — 848 с. — (Классика Computer Science). — ISBN 5-469-01274-3.
  • Барри Брэй. Микропроцессоры Intel: 8086/8088, 80186/80188, 80286, 80386, 80486, Pentium, Pentium Pro Processor, Pentium 4. Архитектура, программирование и интерфейсы = The Intel Microprocessors 8086/8088, 80186/80188, 80286, 80386, 80486, Pentium, Pentium Pro Processor, Pentium 4. Architecture, Programming,and Interfacing. — Шестое издание. — СПб.: БХВ-Петербург, 2005. — 1328 с. — ISBN 5-94157-422-3.

См. также[править | править вики-текст]

Ссылки[править | править вики-текст]