Введение
Тип компьютерной системы
С момента появления персональных компьютеров в 1980-х годах IBM и другие производители создали мейнфреймы, совместимые с IBM и основанные на архитектуре ПК, которые обеспечивают совместимость с более крупными мейнфреймами IBM. В течение некоторого времени системы, совместимые с мейнфреймами и основанные на ПК, предлагали более низкую цену и меньшее потребление электроэнергии и занимали меньше площади. Однако они уступали по производительности и надежности аппаратному обеспечению класса мейнфреймов. Эти продукты были востребованы у разработчиков мейнфреймов, в образовании и при обучении, в очень небольших компаниях, где не требовалась критически важная обработка данных, а также в некоторых областях ликвидации последствий стихийных бедствий (например, в системах выездной оценки страховых случаев при ураганах).
Предыстория
До середины 1990-х годов мейнфреймы представляли собой очень большие машины, которые часто занимали целые комнаты. Эти комнаты обычно оснащались системами кондиционирования и специальными электроснабжающими устройствами для обеспечения трехфазного электрического питания, необходимого для работы машин. Современные мейнфреймы теперь физически значительно меньше и практически не требуют специальных помещений или инженерных решений.
Система/370
IBM продемонстрировала использование набора команд мейнфрейма в своем первом настольном компьютере – IBM 5100, выпущенном в 1975 году. Этот продукт использовал микрокод для выполнения многих инструкций процессора System/370, что позволяло ему запускать слегка модифицированную версию интерпретатора языка APL для мейнфреймов IBM. В 1980 году распространились слухи о новом персональном компьютере IBM, возможно, о миниатюрной версии System/370. В 1981 году появился персональный компьютер IBM, но он не был построен на архитектуре System/370. Однако IBM использовала свою новую платформу ПК для создания некоторых нестандартных комбинаций с дополнительным оборудованием, способным выполнять инструкции S/370 непосредственно на компьютере.
Персональный компьютер XT/370
В октябре 1983 года IBM анонсировала персональный компьютер IBM XT/370. Это был продукт «три в одном». Он мог запускать PC DOS локально, функционировать как терминал 3270 и, что наиболее важно отличало его от IBM 3270 PC, выполнять инструкции S/370 локально. XT/370 представлял собой IBM Personal Computer XT (системный блок 5160) с тремя специализированными 8-битными платами. Процессорная плата (370PC P) содержала два модифицированных чипа Motorola 68000 (способных эмулировать большинство инструкций S/370 с фиксированной точкой и без операций с плавающей точкой) и копроцессор Intel 8087, модифицированный для эмуляции инструкций S/370 с плавающей точкой. Вторая плата (370PC M), соединенная с первой через уникальный коннектор на задней панели, содержала 512 КБ памяти. Третья плата (PC3277 EM) являлась эмулятором терминала 3270, необходимым для загрузки системного программного обеспечения с хост-системы. Компьютер XT/370 загружался в DOS, а затем запускал программу управления VM/PC. Память на платах добавляла дополнительную системную память, поэтому первые 256 КБ (материнской платы) можно было использовать для передачи данных на расширительную карту объемом 512 КБ. Расширенная память имела двойной порт и предоставляла дополнительные 384 КБ для XT Machine, увеличивая общий объем оперативной памяти на стороне XT до 640 КБ. Арбитр памяти мог переключать второй банк памяти объемом 128 КБ на карте на другие банки, позволяя процессору XT Intel 8088 обращаться ко всей оперативной памяти на карте 370PC M. Помимо 416 КБ доступной оперативной памяти для приложений S/370, XT/370 поддерживал до 4 МБ виртуальной памяти, используя жесткий диск в качестве файла подкачки. IBM утверждала, что XT/370 достигал 0,1 MIPS (при условии, что данные помещались в оперативную память). В 1984 году цена XT/370 в типичной конфигурации составляла примерно , что было выгодно по сравнению с мейнфреймами IBM в пересчете на $/MIPS; например, IBM 4341 обеспечивала 1,2 MIPS за . Хотя теоретически он снижал нагрузку на мейнфреймы клиентов, перенося ее на более компактный компьютер, с увеличением количества приобретаемых XT/370 клиенты, вероятно, увеличивали общую нагрузку на мейнфреймы, тем самым увеличивая продажи мейнфреймов IBM. Подобно версии VM/CMS для мейнфреймов, VM/PC также создавала иллюзию виртуальных дисков, но в версии для ПК они хранились как файлы PC DOS на дискетах или жестких дисках. Например, виртуальный диск CMS, принадлежащий пользователю FRED с адресом устройства 101, хранился как файл DOS FRED.101. Команды CMS IMPORT и EXPORT позволяли извлекать файлы с этих виртуальных дисков, а также выполнять преобразование ASCII/EBCDIC. XT/370 поставлялся с клавиатурой XT с 83 клавишами (10 функциональными клавишами). В более поздних версиях XT/370 плата PC3277 EM была заменена на платы IBM 3278/79. XT/370 был одним из XT-систем, которые могли использовать второй жесткий диск, установленный в расширительном шасси 5161. В 1984 году журнал BYTE назвал XT/370 «успехом, заслуживающим высокой оценки». Журнал похвалил IBM за «упаковку всех функций 370 в XT» и выразил надежду на технические улучшения, которые «могут привести к еще более совершенному компьютеру». Производство XT/370 было прекращено в апреле 1987 года.
Персональный компьютер AT/370
В 1984 году IBM представила IBM Personal Computer AT/370 с картами, аналогичными используемым в XT/370, и обновленным программным обеспечением, поддерживающим как диски большего объема, так и DMA-передачи с карты 3277 на карту процессора AT/370. Система была почти на 60% быстрее, чем XT/370. VM/PC версии 2, выпущенная в ноябре 1985 года, повысила производительность до 50%, позволяя использовать дополнительную память (помимо диска) в качестве кэша страниц для VM. В статье Computerworld от ноября 1985 года отмечалось, что машина "продается не очень хорошо". Официально называемая IBM 7437 VM/SP Technical Workstation (а позднее также известная как Personal System/370), она представляла собой автономную башню, подключаемую к карте MCA, установленной в PS/2 Model 60, 70 или 80. Башня 7437 содержала процессор и 16 Мбайт оперативной памяти, а PS/2 обеспечивала ввод/вывод и дисковое хранилище. 7437 работала под управлением операционной системы IBM VM/SP, и один из представителей IBM описал 7437 как "9370 с одним терминалом". Она предназначалась для существующих пользователей S/370, а ее цена в ноябре 1988 года составляла 18 100 долларов США при минимальном заказе в 25 единиц. Одной из ее задач было предоставление S/370-совместимого компьютера для одного пользователя, способного запускать приложения для автоматизированного проектирования и инжиниринга, разработанные для мейнфреймов IBM, такие как CADAM и CATIA. Графическую поддержку обеспечивала графическая система IBM 5080, представляющая собой напольную башню. 5080 подключалась к 7437 через PS/2 с помощью кабеля и адаптера MCA.
Личный/370
Позже IBM представила Personal/370 (также известный как P/370) – однослотовую 32-битную карту MCA, которую можно было добавить к компьютерам PS/2 или RS/6000 для параллельного запуска операционных систем System/370 (таких как MUSIC/SP, VM, VSE) с OS/2 (на PS/2) или AIX (на RS/6000), поддерживая работу нескольких одновременных пользователей. Это была полная реализация процессора S/370, включающая сопроцессор FPU и 16 МБ памяти. Управление и стандартные каналы ввода-вывода осуществлялись через основную операционную систему и аппаратное обеспечение. Для обеспечения специализированного ввода-вывода, характерного для мейнфреймов, такого как локальные блоки управления 3270, ленточные накопители 3400/3480 или преобразователи протоколов 7171, можно было добавить дополнительную карту с каналами 370. Несмотря на то, что это был продукт, представленный одной картой, P/370 работал в три раза быстрее, чем 7437, достигая производительности 3,5 МИПС, что соответствовало уровню IBM 4381 начального класса. В последующей книге (того же автора) утверждалось, что производительность P/370 составляет 4,1 МИПС. Personal/370 был доступен уже в ноябре 1989 года, но только по специальному заказу.
Система/390
В 1995 году IBM представила карту "Enhanced S/390 MicroProcessor Complex", которая обеспечивала поддержку архитектуры IBM ESA/390 на системе, основанной на ПК. Продукты IBM для ПК также развивались, чтобы поддерживать эту архитектуру, и использовали данную карту (номер детали IBM 8640 PB0) в моделях IBM PC Server 330 в 1998 году и IBM PC Server 500.
Процессорная карта S/390
Важной целью при разработке процессорной карты S/390 была полная совместимость с существующими операционными системами и программным обеспечением мейнфреймов. Процессор реализует все инструкции ESA/390 и XA, что исключает необходимость трансляции инструкций. Существует три поколения карт:
Оригинальная процессорная карта S/390 включала 32 МБ выделенной памяти с возможностью установки дополнительных дочерних карт объемом 32 МБ или 96 МБ, что позволяло достичь общего объема оперативной памяти 64 МБ или 128 МБ. Производительность процессора официально оценивалась в 4,5 МИПС. Карта была разработана для подключения к хост-системе MicroChannel. Вторая версия была разработана для хост-системы PCI. Она включала 128 МБ выделенной памяти в стандартной комплектации и сохраняла производительность на уровне 4,5 МИПС. Третья версия, известная как карта P/390E (Enhanced – улучшенная), включала 256 МБ выделенной памяти и оценивалась в 7 МИПС. Она также была разработана для хост-системы PCI. Существовала крайне редкая версия карты P/390E с объемом памяти 1 ГБ (возможно, выпущенная только в виде предсерийных образцов).
R/390
R/390 — обозначение карты расширения, используемой в сервере IBM RS/6000. Оригинальный R/390 был оснащен процессором POWER2 с частотой 67 или 77 МГц и от 32 до 512 МБ оперативной памяти, в зависимости от конфигурации. Карту расширения MCA P/390 можно установить в любую систему MCA RS/6000, а карту PCI P/390 — в некоторые ранние модели PCI RS/6000; все эти конфигурации называются R/390. Для серверов R/390 требуется операционная система AIX версии 4.
P/390
P/390 – это обозначение карты расширения, использовавшейся в IBM PC Server, и она была дешевле, чем R/390. Оригинальный сервер P/390 был установлен в корпус IBM PC Server 500 и оснащался процессором Intel Pentium с частотой 90 МГц для работы с OS/2. Модель была обновлена в середине 1996 года и переименована в PC Server 520, в которой использовался процессор Intel Pentium с частотой 133 МГц. Обе модели поставлялись в стандартной комплектации с 32 МБ оперативной памяти и могли быть расширены до 256 МБ. PC Server 500 имел восемь слотов расширения MCA, а PC Server 520 добавил два слота расширения PCI и убрал два слота MCA.
S/390 Интегрированный сервер
S/390 Integrated Server (также известный как S/390 IS) — это мейнфрейм, размещенный в относительно небольшом корпусе (HxWxD – 82 x 52 x 111 см). Он поступил в продажу с ноября 1998 года. Он предназначен для клиентов, которым не требуется пропускная способность и производительность S/390 Multiprise 3000 (который имеет те же размеры). Используется всего 256 МБ памяти ECC и один основной процессор CMOS (производительность около 8 МИПС); процессор S/390, используемый в Integrated Server, фактически является платой P/390 E. Pentium II используется в качестве IOSP (I/O Service Processor). Он поддерживает четыре канала ESCON и до четырех параллельных каналов. Имеются стандартные слоты PCI и ISA. Поддерживается максимум 255 ГБ внутренних жестких дисков (16 дисков по 18 ГБ, с 2 дисками для обеспечения избыточности). Поддерживаемые операционные системы: OS/390, MVS/ESA, VM/ESA и VSE/ESA.
Системы на базе ПК Fujitsu
Fujitsu предлагает две системы, составляющие нижний сегмент линейки продуктов BS2000 на базе S/390. SQ100 – это более медленная конфигурация, использующая двухъядерные процессоры Intel Xeon E7220 с частотой 2,93 ГГц и обеспечивающая производительность до 200 РПФ. SQ200, представленный позднее, использует шестиядерные процессоры Xeon X7542 с частотой 2,66 ГГц и имеет производительность до 700 РПФ. Все мейнфреймы BS2000 на базе Intel 64 могут работать под управлением Linux или Windows в отдельных разделах. Fujitsu также продолжает разрабатывать и производить собственные процессоры S/390 и аппаратное обеспечение для мейнфреймов высокого класса своей линейки BS2000.
z/Архитектура и сегодня
С конца 1990-х годов процессоры ПК стали достаточно мощными для эмуляции мейнфреймов без необходимости в копроцессорной карте. В настоящее время существует несколько эмуляторов персональных компьютеров, поддерживающих System/390 и z/Architecture. FLEX ES от Fundamental Software эмулирует как System/390 (ESA/390), так и z/Architecture. Утверждается, что это один из самых популярных продуктов для эмуляции IBM-совместимых мейнфреймов на ПК (по состоянию на 2006 год). Хотя FLEX ES может работать на большинстве ПК, лицензионное соглашение требует, чтобы он запускался на машине, с которой был продан; ранее это включало серверы Compaq Proliant и HP, но сегодня это почти всегда одобренный сервер IBM xSeries или ноутбук ThinkPad. Hercules – это эмулятор с открытым исходным кодом для наборов инструкций System/370, System/390 и z/Architecture. Однако для выполнения прикладных программ требуется полноценная операционная система. Хотя IBM не лицензирует свои текущие операционные системы для работы на Hercules, более ранние операционные системы System/370 находятся в общественном достоянии и могут легально использоваться на Hercules. zPDT (System/z Personal Development Tool) – это продукт IBM, позволяющий независимым разработчикам программного обеспечения IBM PartnerWorld (ISV) легально запускать z/OS 1.6 (или более позднюю версию), DB2 V8 (или более позднюю версию), z/TPF или z/VSE 4.1 (или более позднюю версию) на ПК, которые можно приобрести на базе эмуляции Linux. IBM ZD&T (Z Development and Test Environment) – это продукт IBM, предоставляющий среду на базе x86, которая эмулирует аппаратное обеспечение Z и запускает подлинное программное обеспечение z/OS, обеспечивая непревзойденную переносимость и совместимость приложений. IBM Z Development and Test Environment можно использовать для обучения, демонстрации, разработки и тестирования приложений, включающих компоненты мейнфреймов. Z390 и zCOBOL – это портативный макроассемблер и компилятор COBOL, компоновщик и набор инструментов эмуляции, обеспечивающий возможность разработки, тестирования и развертывания ассемблерных и COBOL-программ, совместимых с мейнфреймами, на любом компьютере, поддерживающем среду выполнения J2SE 1.6.0+.