Что такое мэйнфрейм - сервер или хранилище данных? Преимущества мэйнфрейма

Термин «мэйнфрейм» в последние годы обычно ассоциируется с занимавшими огромные помещения вычислительными машинами 80-х годов, безвозвратно ушедшими в прошлое на многих российских предприятиях, внедривших для решения своих задач сети персональных компьютеров. Согласно одному из прогнозов Gartner Group, последний мэйнфрейм предполагалось выключить в 1993 году. Срок этот давно истек, но рынок мэйнфреймов остается стабильным и их продажи ежегодно растут.

Езусловно, решение многих задач автоматизации предприятий с помощью персональных компьютеров, RISC-серверов, архитектуры «клиент-сервер» и современных средств разработки приложений оказывается намного дешевле, чем использование мэйнфреймов. Однако, как показала практика, внедрение персональных компьютеров рентабельно далеко не во всех случаях, особенно если речь идет о крупных организациях, где на первый план выходят вопросы хранения больших объемов данных, их целостности, надежности обслуживающих их приложений. И в этих случаях применение мэйнфреймов может оказаться удачной альтернативой набору из персональных компьютеров и RISC-серверов.

Несмотря на нынешнюю популярность ПК и RISC-серверов, мэйнфреймы активно используются на многих предприятиях. Мало того, корпорация IBM, родоначальница данной категории средств вычислительной техники, не только продолжает их выпускать, но и разрабатывает новые модели. Причина приверженности IT-отделов крупных компаний к «большим» ЭВМ заключается в развитых возможностях защиты данных, в высоком быстродействии, в наличии средств резервного копирования и восстановления после сбоев, в поддержке виртуальных машин — то есть во всем том, к чему производители перcональных компьютеров и серверов приблизились только сегодня.

Немного истории

ервые мэйнфреймы были выпущены корпорацией IBM в апреле 1964 года: именно тогда была разработана архитектурная концепция семейства System/360 (S/360). Это был самый дорогостоящий проект в истории вычислительной техники — на его выполнение было затрачено более 5 млрд. долл. Данный проект был направлен на разработку всесторонне продуманного комплекса решений в области аппаратуры, программного обеспечения, технологии производства, организации распространения и технического обслуживания семейства компьютеров, различных по производительности и цене. System/360 стало первым большим семейством компьютеров, позволявшим использовать взаимозаменяемое программное обеспечение и периферийное оборудование. Вместо того чтобы приобретать новую систему по мере роста потребностей и увеличения бюджета, владельцы мэйнфреймов данной серии теперь могли просто наращивать вычислительные возможности по частям, добавляя или заменяя лишь необходимые аппаратные средства. В рамках System/360 предлагался выбор из 5 процессоров, 44 периферийных устройств и 19 комбинаций питания, быстродействия и памяти. Пользователь мог эксплуатировать те же самые магнитные ленты и дисковые накопители с процессорами, различающимися по производительности в 100 раз. Сейчас взаимозаменяемость компонентов и возможность наращивания мощности за счет добавления ресурсов кажется обычным делом, но до появления S/360 ничего подобного не было — каждый компьютер был уникальным устройством и все они были несовместимы между собой. Именно поэтому серия System/360 считается одним из величайших технологических достижений ХХ века. Отметим, что выпуск этой серии оказал заметное влияние и на развитие отечественной вычислительной техники: IBM-совместимые мэйнфреймы успешно выпускались в нашей стране в 70-х и 80-х годах.

Для ЭВМ серии System/360 и последующей за ней System/370 сразу же появлялись наиболее передовые решения, приводящие к повышению производительности, такие как средства динамического преобразования адресов, способность устройства управления обнаруживать все операции, допускающие одновременное исполнение, многопроцессорность на основе общей оперативной памяти, межпроцессорная сигнализация, опережающий просмотр команд для динамического предсказания логических переходов, поддержка многозадачности, страничная организация памяти. Первый компилятор языка высокого уровня и первый экранный редактор также были созданы для ЭВМ именно этих серий.

Модельный ряд мэйнфреймов IBM постоянно совершенствовался: в 70-х годах появились модели, использовавшие большие интегральные схемы и полупроводниковую память, затем появились модели с векторной обработкой данных.

Компьютеры System/360/370 известны как универсальные. Они одновременно могли использоваться для научно-инженерных расчетов и обработки изображений, поддерживать базы данных терабайтных объемов, обслуживать локальные и глобальные сети. По сравнению с появившимися в 70-х годах микрокомпьютерами, эти машины были сравнительно объемными, но прогресс в технологии, приведший к появлению персональных ЭВМ, в еще большей степени повлиял на развитие «больших» машин. В конце 80-х — начале 90-х годов IBM продолжила эволюционное развитие линии мэйнфреймов на основе новой архитектуры ESA (Enterprise System Architecture) — данная серия мэйнфреймов получила название System/390. В 90-х годах число различных моделей стремительно росло, появились модели, использующие КМОП-технологию (КМОП — комплементарный металл-оксидный полупроводник). В середине 90-х годов были выпущены модели, поддерживающие объединение мэйнфреймов в кластеры и резервирование процессоров. В 1998 году была анонсирована модель S/390 Integrated Server, отличающаяся относительно небольшими габаритами (112Ѕ89Ѕ52 см) и весом (100 кг).

Современные модели мэйнфреймов

овременные модели мэйнфреймов IBМ, являющиеся развитием линии S/390, носят название еServer zSeries. Эти серверы основаны на архитектуре z/Architecture, которая представляет собой расширение архитектуры ESA. Данная архитектура позволяет обеспечить полноценную поддержку 64-разрядной реальной и виртуальной памяти, поддерживает кластеризацию (до 640 процессоров) и виртуальные машины, позволяющие выполнять до сотни экземпляров других операционных систем (например, Linux), позволяет устранять проблемы, связанные с недостатком адресуемой памяти, и с помощью интеллектуального диспетчера ресурсов (Intelligent Resource Director, IRD) может автоматически направлять имеющиеся ресурсы на решение наиболее приоритетных задач.

Новейший сервер из этого семейства — IBM zSeries 990 (z990) — обладает расширенным набором функций для построения центров обработки данных, обработки транзакций и интеграции приложений.

Серверы семейства zSeries ориентированы на обеспечение высочайшего уровня доступности приложений. Они отличаются высокой надежностью и наделены средствами самонастройки и самовосстановления, обладают встроенными механизмами предотвращения неисправностей, высокой отказоустойчивостью. Технология наращивания вычислительных ресурсов по требованию (Capacity Upgrade on Demand), реализованная в серверах этой серии, позволяет без нарушения работы системы устанавливать дополнительные центральные процессоры, устройства внутреннего сопряжения, иное аппаратное обеспечение. Отметим, что средний срок наработки на отказ мэйнфреймов этой серии оценивается в 15 лет.

Поскольку безопасность данных становится важнейшим фактором современной IT-индустрии, мэйнфреймы семейства zSeries содержат встроенный аппаратный программируемый криптографический адаптер, позволяющий выполнять SSL-операции и операции шифрования с открытым ключом.

Программное обеспечение для мэйнфреймов

Операционные системы

Из операционных систем для данной платформы отметим z/OS, созданную для новой 64-разрядной архитектуры z/Architecture и являющуюся дальнейшим развитием ОС OS/390. В этой операционной системе наиболее полно использованы новые возможности указанной архитектуры.

Помимо этого IBM выпускает для данной платформы операционную систему z/VM, позволяющую решить задачу построения мультисистемных решений для операционных систем типа z/OS, OS/390, TPF, VSE/ESA, CMS, Linux для S/390 или Linux для zSeries с помощью создания виртуальных машин. Для монитора виртуальных машин и гостевых операционных систем поддерживается 64-разрядная адресация.

Одним из важных элементов стратегии IBM в области электронного бизнеса, охватывающей все выпускаемые корпорацией серверные платформы, является поддержка Linux. В декабре 1999 года в IBM завершились работы по переносу Linux в S/390. Диалект Linux for S/390 является самостоятельной операционной системой и не требует для своей работы наличия другой ОС.

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

Иное программное обеспечение

Средства управления системой, поддержки безопасности и инструменты резервного копирования серверов zSeries производятся как самой IBM, так и другими компаниями, например Computer Associates. СУБД для данной платформы производят IBM (DB2 Universal Database, IMS), Software AG (ADABAS), Oracle. Для данной платформы существует и J2EE-совместимый сервер приложений WebSphere Application Server for z/OS.

Для серверов zSeries разработаны офисные и издательские пакеты, средства графики, трехмерного моделирования, САПР, трансляторы с различных языков высокого уровня, включая FORTRAN, PL/1, COBOL, PASCAL, BASIC/VM, SmallTalk, средства разработки, пакеты математической статистики, ПО для научных исследований, средства автоматизации управления производством, средства автоматизации банковской деятельности. В целом список имеющегося программного обеспечения для данной платформы весьма внушителен.

***

Итак, вопреки неутешительным прогнозам Gartner Group, мэйнфреймы активно производятся, совершенствуются и используются, хотя вследствие дороговизны этих устройств их применение будет экономически эффективно для решения отнюдь не любой задачи.

В каких случаях действительно необходимы именно мэйнфреймы? Как правило, их использование рентабельно при высоких требованиях к производительности (от 100 млн. операций в секунду) и к защищенности от несанкционированного доступа и сбоев, при необходимости централизованного хранения и обработки больших объемов данных. И конечно, при наличии средств, достаточных для реализации указанных требований.

Материалы для статьи предоставлены компанией «ГЕТНЕТ» (


Начало и конец истории мейнфреймов связан с именем IBM, и это не удивительно. В далёкие 1930-е годы, когда "компьютером" фактически был ваш напарник с логарифмической линейкой, который производил за вас все вычисления, компания IBM была в основном известна своими перфорационными машинами. Но во многом благодаря дальновидному руководству, которое в то время было представлено Томасом Уотсоном (Thomas Watson), IBM трансформировалась из одного из многих продавцов офисной техники в компанию, которая позднее стала монополистом по производству компьютеров.

Harvard Mark I

Машина, получившая название Harvard Mark I, стала примером дальновидности Томаса Уотсона, хотя с практической точки зрения она не была технологической отправной точкой последующих открытий. И всё же стоит взглянуть на эту машину, ведь только так мы сможем увидеть, насколько далеко зашёл прогресс.

Всё началось в 1936 году, когда гарвардский математик Говард Айкен (Howard Aiken) пытался решить проблему, связанную с разработкой вакуумных трубок (ламп). Чтобы добиться прогресса, ему нужно было решить систему нелинейных уравнений, а под рукой не было ничего, что могло бы сделать это за него. Айкен предложил гарвардским учёным построить крупномасштабный калькулятор, который мог бы решать подобные задачи. Однако его предложение было встречено без энтузиазма.

Затем Айкен обратился в Monroe Calculating Company, но компания отвергла его предложение. Тогда Айкен пошёл в IBM. Предложение Айкена, по сути, представляло собой список требований, а не настоящий проект, поэтому компании IBM самой нужно было понять, как воплотить эти требования в жизнь. Начальная стоимость проекта была оценена в $15 000, но она быстро взлетела до $100 000 к тому моменту, когда в 1939 году предложение было принято официально. В итоге воплощение данной идеи в жизнь стоило IBM около $200 000.

Только в 1943 году пятитонный механический "монстр" длиной около 15 метров начал выполнять свои первые вычисления. Поскольку компьютеру нужна была механическая синхронизация между разными вычислительными блоками, по всей его длине располагался вал, приводимый в движение мотором мощностью в пять лошадиных сил. Компьютерная "программа" создавалась путём вставки проводков в штекерную панель. Данные считывались с помощью перфокарт, и результаты печатались на перфокартах или выводились с помощью электрических пишущих машин. Даже по тем временам этот "компьютер" работал медленно. Он мог делать только лишь три операции сложения или вычитания в секунду, а на одно умножение у машины уходило целых шесть секунд. Вычисление каждого логарифма и тригонометрические преобразования занимали более одной минуты.

Как уже говорилось выше, машина Harvard Mark I была технологически бесперспективной и не сделала ничего особо важного за все свои 15 лет использования. Тем не менее, она представляла собой первую в истории полностью автоматизированную вычислительную машину. Несмотря на то, что машина Mark I работала очень медленно, была механической, и ей не хватало таких важных операций, как условный переход, это всё же был компьютер, который был лишь маленьким намёком на то, чему ещё предстояло появиться.

ABC (Atanasoff-Berry Computer)


Первым электронным компьютером на самом деле была машина ABC (Atanasoff-Berry Computer), хотя этот факт был признан многими годами позднее. Словосочетание "электронный компьютер" может показаться странным, однако только что на примере Harvard Mark I мы видели, что действительно были компьютеры без электронных компонентов, которые использовали механические переключатели, регулируемые зубчатые колёса, реле и рукоятки. В отличие от таких машин, компьютер ABC все вычисления производил с помощью электроники, поэтому он является очень важным этапом в развитии вычислительной техники.

Несмотря на то, что компьютер ABC был электронным, его компоненты очень сильно отличались от тех, что используются сегодня. На самом деле, здесь потребовались бы транзисторы и интегральные микросхемы, но в 1939 году, когда Джон Атанасов (John Atanasoff) получил финансирование на сборку прототипа, таких компонентов ещё не было, поэтому он использовал то, что было доступно на тот момент: электровакуумные лампы. Электровакуумные лампы могли усиливать сигналы и работать как переключатели, а значит, они могли использоваться для создания логических схем. Впрочем, эти лампы потребляли много энергии, сильно нагревались и были очень ненадёжными. Такими вот недостатками обладали компьютеры, построенные на электровакуумных лампах, но с этим приходилось мириться.

Логические схемы, созданные Атанасовым с помощью электровакуумных ламп, работали быстро и могли выполнять по 30 операций сложения и вычитания в секунду. Сегодня это является нормой, но тогда компьютеры редко использовали двоичную систему счисления, поскольку в то время с ней были знакомы немногие. Ещё одной важной технологией было использование конденсаторов для памяти и "подпитка" их электричеством для сохранения "содержимого" (аналогично регенерации динамической памяти типа DRAM, используемой сегодня). Однако память не была по-настоящему "random" (не обладала произвольным доступом), поскольку она фактически находилась во вращающемся барабане, который совершал полный оборот за 1 секунду. Конкретные области памяти могли быть считаны только тогда, когда участок барабана, где они находились, оказывался над считывателем. Из-за этого возникали серьёзные задержки. Позднее Атанасов добавил перфорационную машину (в те времена перфокарты очень широко использовались организациями для хранения документов и выполнения расчётов), чтобы хранить данные, которые не могли поместиться в барабан памяти.

В ретроспективе, компьютер ABC был не так уж полезен. Его даже нельзя было запрограммировать. Но, по крайней мере, на концептуальном уровне он представлял собой очень важный этап в развитии компьютеров и стал прародителем компьютеров будущего. Работая над этой машиной, Атанасов пригласил Джона Мочли (John W. Mauchly) посмотреть на своё изобретение. Эта встреча оказалась знаковой. И вот почему.

ENIAC


Нажмите на картинку для увеличения.

7 декабря 1941 года Япония напала на Перл-Харбор, втянув Соединённые Штаты во Вторую мировую войну. Каждая воюющая страна столкнулась с проблемой создания баллистических таблиц стрельбы для всех производимых типов артиллерии. Это был очень длительный и утомительный процесс. Поэтому армия США предоставляла средства Электротехнической школе Мура при Университете штата Пенсильвания на разработку электронного компьютера, который смог бы облегчить процесс создания баллистических таблиц стрельбы. Вы уже, должно быть, догадались, что участие во всём этом принимал уже известный нам Джон Мочли, он взялся за проект вместе с талантливым аспирантом по имени Дж. Преспер Эккерт (J. Presper Eckert).

Но Вторая мировая война закончилась до того, как машина была готова. Работа над компьютером была завершена в 1946 году, и публике был представлен "монстр" весом в 30 тонн, состоящий из 15-метровых шкафов, 18 000 вакуумных ламп, 1500 реле, 70 000 резисторов, 10 000 конденсаторов и 6000 ручных переключателей и потребляющий 200 киловатт. Хотя разработка этого компьютера закончилась уже после войны, он всё же принёс пользу. Производительность машины была невероятно высокой: 5000 операций сложения, 357 умножений или 38 делений в секунду. Задачи, на которые у математика уходило 20 часов работы, ENIAC решал всего за 30 секунд.

Основная проблема этого компьютера, помимо ненадёжности, присущей всем машинам на вакуумных лампах, заключалась в том, что он не был программируемым в общепринятом смысле этого слова. "Программы" вводили сотрудницы лаборатории (так называемые "ENIAC girls") с помощью штекерных панелей и блоков переключателей. Этот процесс обычно занимал от нескольких часов до нескольких дней. Кроме того, в отличие от компьютера ABC, ENIAC работал с десятичными, а не с двоичными числами, и это был своего рода шаг назад.

Тем не менее, ENIAC на славу послужил Соединённым Штатам, особенно после дальнейшей модернизации, пока в 1955 году его не "отправили в отставку". За время своего существования ENIAC работал над самыми разными проблемами: прогнозы погоды, исследование случайных чисел, теплового воспламенения, аэродинамической трубы, расчёт траектории артиллерийских снарядов и даже разработка водородной бомбы. Подсчитали, что за свою "жизнь" ENIAC сделал больше расчётов, чем всё человечество вплоть до 1945 года.

Хотя история компьютера ENIAC заканчивается в 1955 году, Мочли и Эккерту предстоит ещё многое сделать.



СОДЕРЖАНИЕ

История и перспективы современных больших вычислительных машин ( Mainframes )

(Часть 1)

В этой статье мы ответим на вопросы:

· Что такое мэйнфрейм сейчас?

· Где мэйнфреймы будут применяться?

· Какие специалисты их будут обслуживать?

· Где будут готовить этих специалистов?

Что такое мейнфрейм сейчас?

Для того чтобы понять, что из себя представляют большие вычислительные машины ( Mainframes ), стоит вспомнить историю развития вычислительной техники. Благо, она, эта история, пока коротка – меньше века.

Большие вычислительные машины ( Mainframes ) – это, собственно, те электронные вычислительные машины (ЭВМ), с которых начинается история вычислительной техники. Архитектура ЭВМ и принципы управления, разработанные в середине прошлого века отцами кибернетики Винером и Фон-Нейманом , предполагали использование ЭВМ для решения больших по значению и по объему вычислений задач, причем, задач, которые должны обрабатываться одной машиной одновременно. Была разработана специальная теория массового обслуживания, в которой математически точно описывается состояние очередей и управление ими.

Появление в 1980-х годах персональных вычислительных машин, персональных компьютеров (ПК) заставило разработчиков «забыть» на время некоторые важные принципы управления ЭВМ, в частности, потеряла актуальность и теория массового обслуживания. А в 90-х нередко встречались статьи, обосновывающие ненужность больших машин. Многим казалось, что мощная персональная машина, да к тому же двухпроцессорная, в состоянии решить любую задачу. Встречались даже так сформулированные мысли: любую задачу, которую может поставить человек, в состоянии решить мощный персональный компьютер. Немногочисленные оппоненты пытались говорить о многопользовательских задачах – им предлагалось использовать сетевые решения – соединенные между собой различными способами персональные компьютеры. Централизованное управление сетью обеспечивается сервером – более мощной машиной со специализированным программным обеспечением, решающей задачи обслуживания многих пользователей одновременно.

Появление в начале 20-го века сетевых технологий, сетей самых разных конфигураций, вплоть до кластерных соединений (соединений серверов), имеющих централизованный и децентрализованный принципы управления, казалось бы, решили все вычислительные проблемы. Был даже временной промежуток в истории известной всем фирмы IBM (не даром же персональные компьютеры большей частью IBM -совместимые), когда она не продала ни одной большой ЭВМ за целый год. Мэйнфреймы в это время называли «динозаврами» и многие пророчили им «вымирание».

Недаром философы твердят нам о спирале-подобной форме развития чего бы то ни было . История развития вычислительных машин, совершив виток этой спирали, находится сейчас в начале нового витка, когда опять на первый план выходят большие вычислительные машины. Дальнейшее развитие архитектуры и технологии серверов приблизилось вплотную к основополагающим принципам построения больших ЭВМ.

Фирма IBM никогда не сдавала своих позиций, уверенно отстаивая мысль о том, что большие машины имели, имеют, и будут иметь свою нишу, свою область применения. Причем, эта ниша в дальнейшем будет становиться все больше и больше. Уже сейчас 60% информации, используемой в Интернете, хранится в базах данных больших вычислительных машин. Более 500 крупнейших мировых корпораций имеют вычислительные комплексы, оснащенные мэйнфреймами . Везде, где высоки требования к быстродействию, надежности, безопасности, используются именно они. Такие предприятия, как банки, страховые компании, транспортные корпорации, активно используют сейчас технологии электронной коммерции (электронный обмен информацией, электронные транзакции и др.), обслуживание пользователей с использованием современных информационных технологий.

Секрет выживания «динозавра» в том, что фирма IBM последовательно и методично работала над своим продуктом, учитывала все современные достижения науки, регулярно модернизировала продукт. Примерно один раз в 10 лет происходили существенные изменения в мэйнфрейме , при этом его вычислительная мощь и другие отличительные характеристики не ухудшались, а лишь улучшались.

Рисунок 1. История развития больших ЭВМ (слайд взят с сайта IBM )

Если очень схематично описать историю модернизации мэйнфреймов , то она будет выглядеть так, как это показано на рис.1. Временная ось с отметками десятилетий, над временной осью строка с названиями архитектуры большой машины, то есть, аппаратное обеспечение или hardware (HW ). Нижние две строки соответственно характеризуют два слоя программного обеспечения или software (SW ): нижний слой - операционные системы, управляющие аппаратной частью машины, и промежуточный слой ( middleware ), на рисунке он расположен в самом низу, программное обеспечение для обслуживания бизнес-приложений.

Итак, приведем краткую характеристику каждого десятилетия в соответствии с рисунком 1:

· 1964 год. Архитектура машины – S /360, управляется операционными системами MVT , PCP , MFT , промежуточный слой ( middleware ) представлен подсистемой управления обработкой заданий CICS (Costumer Interface Control System ), с помощью которой пользователь может сам управлять выполнением своих транзакций в безопасной/защищенной среде.

· 70-е годы. Архитектура машины – S /370, управляется операционной системой MVS . Разработана операционная система с виртуальной памятью MVS , управление памятью осуществляется с помощью специальных таблиц??? VTAM (Virtual Tables Addressing Memory ). Промежуточный слой ( middleware ) представлен подсистемой VM (Virtual Machine ) «Виртуальная машина»

· В 80-е годы осуществлен аккуратный переход на 31-битную адресацию памяти при сохранении старой системы адресации (24-х битной) в рамках новой. Именно недостающий до 32-х бит служит для индикации того, какая адресация используется: 24-х или 31-битная (архитектура машины – S /370 XA ).

· Середина 80-х отмечена появлением новой операционной системы ESA /390 и специального программного обеспечения промежуточного слоя – реляционной базы данных DB 2.

· Середина 90-х – Архитектура машины – ESA /390 - абсолютно революционный прорыв в области новых технологий – перевод производства аппаратной части на технологию использования полупроводниковых биполярных транзисторов ( CMOS ), повлекший за собой резкое уменьшение размеров микросхем и машины в целом, ощутимое снижение потребляемой энергии при одновременном резком увеличении размеров памяти и скорости вычислений. В этот же период появилась технология Parallel Sysplex , как особый вид организации связей между различными машинами с целью создания более мощных вычислительных комплексов, была оптимизирована организация операций ввода-вывода информации и, которую можно охарактеризовать.

· 2000 – 2005 – Появление новой z -Архитектуры, с 64-х разрядной адресаций памяти. Промежуточный слой представлен мощнейшей системой Web Sphere , которая позволяет предприятиям создавать представительство в мире Интернет, может работать, как внутренняя сеть предприятия, имеет неограниченные возможности наращивания в ту или иную сторону за счет присоединения вновь разрабатываемых приложений. Новая операционная система большой вычислительной машины предоставила возможность параллельного использования и других операционных систем, например, Linux . В настоящее время более тысячи Linux машин используют специальную операционную систему z / VM .

Специально разработан Z -процессор (произносится как Zed –процессор), который позволяет нам использовать Java . При этом, Z -процессор предоставляет вам использовать Java наиболее экономично .

Что следует особо отметить, Z -платформа много дешевле, чем предыдущие архитектуры мэйнфрейм .

мэйнфреймы мы встречаем не часто, гораздо чаще нам встречаются персональные компьютеры, серверы, UNIX – станции. Мэйнфреймы находятся в тени, но именно на них выполняются самые важные приложения.

Что такое мэйнфрейм ?

Сейчас мэйнфрейм

· это вычислительная система, доступная пока (из-за ее высокой стоимости) только крупной компании, предназначенная для хранения в ней коммерческих баз данных, серверов транзакций, приложений, требующих более высоких уровней безопасности и надежности, а также постоянства доступа;

· это вычислительная система, которая предоставляет большие возможности с точки зрения скорости вычислений и их объемов;

· это вычислительная система, которая используется для решения большого количества разнообразных задач, выполняет огромное количество различных типов транзакций и нагрузок.

Где мэйнфреймы будут применяться?

Остановимся на перечислении достоинств этой машины. Основные характеристики современной большой вычислительной машины, это надежность, доступность и обслуживаемость ( RAS – reliability , availability , serviceability ). Например, в появившейся летом 2005 года новой архитектуре Z 9 отсутствует единая точка отказов. Каждый компонент машины с этой архитектурой может быть заменен новым без остановки рабочих нагрузок.

Централизованное управление – еще одна важная характеристика мэйнфрейм , это много дешевле, чем децентрализованное управление. Уникальная возможность мэйнфрейм - управление нагрузками.

Несомненным достоинством этих машин является и непрекращающаяся совместимость, что означает, что до сих пор в мэйнфреймах используются приложения, написанные в 70-е годы.

Какие виды работ выполняются на мэйнфреймах ?

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

· Пакетная обработка заданий (Batch job ), когда компьютер выполняет работу без участия человека. Можно провести аналогию с Batch -файлами на персональном компьютере (РС), но очень грубая аналогия. Используется в случае значительных объемов данных на входе.

· Обработка заданий в реальном времени (On - line ), например, транзакционные системы, такие как система приобретения железнодорожных билетов, система оплаты по кредитной карте и т.п.


Рисунок 2. Два типа рабочих нагрузок в мэйнфрейм (рисунок взят из материалов IBM )

Главное отличие этих видов работ - в объеме вводимых и выводимых данных. Если требуется соблюсти заведомо оговоренное самое высокое быстродействие, при этом обслужить значительное количество пользователей, стоит использовать мэйнфрейм , операционная система которой сможет координировать всю эту работу.


Рисунок 3. Пример использования мэйнфрейм для пакетных видов рабочих нагрузок

Пример осуществления работ по пакетной обработке заданий ( Batch job ) приведен на рисунке 3. В центре рисунка показана большая вычислительная машина (мэйнфрейм ), которая в наши дни не выглядит такой уж большой. Ее физические размеры (100см х100см х50см) соизмеримы с размером старинного комода или «горки» для посуды. На выходе мэйнфрейм мы видим отчеты, которые отправляются в головной офис ( Main office ) и в филиалы предприятия ( Branch offices ), показано также, что балансовые счета и другие отчеты могут поступать непосредственно по месту жительства пользователя ( Residence ). Как видно на рисунке, отдельное внимание уделено резервированию ( Backup ), которое осуществляется в одном месте (например, в банковской структуре) в определенное время, например, в конце каждого рабочего дня, либо по завершению месяца, квартала, года и т.д. Главный признак пакетного вида нагрузок – большой объем вводимых данных.

Пример обработки заданий в реальном времени – общение с банком через банкомат - показан на рисунке 4.


Рисунок 4. Пример использования мэйнфрейм для выполнения рабочих нагрузок в реальном времени

Самое важное в таком виде нагрузок – централизация и координация. Мэйнфрейм должен в автоматическом режиме управлять доступом пользователей к банковской информации, отслеживать порядок очередей на обработку заданий, выполнять своевременное обновление и резервное копирование хранимой информации, при этом четко разделяя роли (конечных пользователей, аналитиков, отвечающих за соответствие данных, системных администраторов, программистов) в этом вычислительном мире: предоставляя соответствующие ролям права и услуги. Отметим при этом, что несколько ролей может играть одно лицо и наоборот, может быть несколько человек, которые выполняют одну роль.

Несколько слов о современных операционных системах, работающих с мэйнфрейм . Таких на сегодня четыре:

· z / VM – предоставляет возможность работать в мульти-операционной среде, то есть, есть возможность работы с несколькими операционными системами;

· Linux for r / Series - работает с тысячами машин;

· VSE – операционная система (ОС) для небольших инсталляций для ограниченного числа пользователей, в этой ОС нет возможности использовать Parallel Sysplex ;

· z / TPZ – очень большая ОС, специализированная, обслуживающая большое количество транзакций, например, системы оформления билетов.

Итак, резюмируя эту часть статьи, скажем: новые мэйнфреймы играют центральную роль в современном мире, несмотря на то, что они находятся на заднем плане, в тени, они первые по надежности, постоянной доступности и быстродействию. Они обслуживают тысячи пользователей одновременно, работают в режиме интенсивного ввода/вывода, обрабатывают очень большие рабочие нагрузки, выполняют защищенный запуск важных бизнес-приложений.

Мэйнфрейм (Mainframe ) - это вымышленный персонаж, который появляется во вселенной Marvel Comics. Он появился в комиксе под названием A-Next #1 (октябрь 1998 год), а его создателями являются Том ДеФалько и Рон Френц. Мэйнфрейм представляет собой разумную компьютерную программу, которая основана на мозговых волнах Тони Старка, помимо этого, он являющаяся одним из основателей команды А-Некст.

Биография

В альтернативной Вселенной известной как Земля-982, после последней провальной миссии Мстителей, уставший решил уйти из героев и окончательно отставить броню Железного человека. Тем не менее, он осознавал и боялся, что со временем может возникнуть новая угроза для Земли, поэтому, Тони решил подстраховаться на случай возникновения не предвиденных обстоятельств и создать то, чтобы может её предотвратить. Для этих целей, он сконструировал по образу брони Железного человека, андроида, которого назвал Мэйнфрейм. Старк также заложил в андроида отпечаток своих мозговых волн. Однако, когда он закончил работу над Мэйнфреймом, не было активной команды Мстителей, по этой причине, могущественный андроид оставался неактивным.

Спустя целых десять лет после создания андроида, произошла чрезвычайная ситуация, когда взрослый Кевин Мастерсон (сын покойного Эрика Мастерсона, также известный как Громобой, который был одним из Мстителей) прибыл в особняк Мстителей расположенный в Нью-Йорке. Который прибыл туда, чтобы забрать мистическое оружие, которое ему завещал его отец. Извлечение мистического оружия из хранилища привлекает внимание Локи, который желает его заполучить для себя. С этой целью, он направляет Троллей. В это время, в Особняке Мстителей присутствует Эдвин Джарвис, который является его смотрителем. Джарвис становится свидетелем нападения и посылает сигнал Мстителям. Данный сигнал также приводит к активации Мэйнфрейма, впервые за все время после его создания.

На данный сигнал отзываются (в настоящее время лидер команды Икс-Люди), Кассандры Лэнг (дочь Скотта Лэнга, бывшего ) известная под псевдонимом Жало и Хелен Такахама под псевдонимом Джолт. Поскольку Кевин пытаясь скрыться от Тролей бежит по улицам, он также привлекает внимание Спидбола и Джей2. В то время, когда Кевин загнан в угол, его в последнюю секунду спасает Мэйнфрейм. Но несмотря на то, что героям удаётся разобраться со всеми Троллями, все они были быстро пойманы Локи, который забирает всех героев в Асгард. Там он намеревался зарядить оружие "Громобой", после чего использовать его против своего брата , который теперь является правителем Асгарда. Когда Локи производит зарядку Громобоя, Кевин удаётся выбраться и завладеть оружием, а также освободить других героев. Между героями и вновь разгорается сражение, в котором он опять начинает одерживаться верх, однако, данная заварушка привлекает внимание Тора, в результате чего, злодей был вынужден бежать. Тор возвращает героев обратно на Землю, по прибытию Мэйнфрейм предполагает организовать новое воплощение Мстителей. В конечном счёте, Мэйнфрейм, Жало, Джей2 и Кевин (который становится новым Громобоем) объединяются и сформировывают команду получившая название, А-Некст.

После создания команды, Мэйнфрейм сразу же попытался стать её лидером. Он часто сталкивается с противодействием в лице Жало (которая не знала, что Мейнфрейм является андроидом). Но когда Мэйнфрейм был серьёзно поврежден, его тайна раскрывается, однако, Жало была одной из первых, кто хочет ему помочь починить его (с помощью своего отца). Со временем выясняется, что всякий раз, когда Мейнфрейм был серьёзно повреждён, он загружает свою личность и воспоминания в другое тело, собранное на орбитальном спутнике.

Вскоре Мэйнфрейм превратился в нечто большее, чем просто обычный высокотехнологичный героя для своих товарищей по команде, он стал их настоящим другом. Он также научился делиться своими обязанностями в качестве лидера со своей напарницей известной под псевдонимом Американская Мечта. Несмотря на это, его направленность на лидерство по-прежнему приводит его к разногласиям с Мстителями, в частности с Девушкой-Пауком.

Другии версии

Земля-691

Супергерой известный как Вижен (Земля-691) преобразовался в Мэйнфрейма. Он стал главной операционной системой целой планеты, под его контролем находилось буквально всё, начиная с климата заканчивая планетарной стабильности. Мэйнфрейм был хранителем щита Капитана Америки. Кроме этого, он хранил своё оригинальное тело на планете Нептун.

Способности

Мейнфрейм является высокотехнологичным андроидом, который способен мыслить и действовать самостоятельно. Оболочка его тела изготовлена из очень прочного сплава металлов, способный выдерживать удары огромной силы, как энергии так и других видов. Он обладает суперсилой и способен летать на сверхзвуковых скоростях. Мейнфрейм может испускать репульсорные лучи; лазерные, электрические и магнитные вспышки. Помимо этого, на его запястьях находятся выдвижные пулеметы, которые могут стрелять гранатами и ракетами. Он способен поглощать энергию радиоизлучения. Мейнфрейм обладает высоким интеллектом и обширными знаниями в различных областях науки и технологий.

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

В СМИ

Мультсериалы

Мэйнфрейм появляется в мультсериале "Халк и агенты СМЭШ", персонажа озвучил Джеффри Комбс. Он появляется в качестве главного злодея в эпизоде под названием "Колеса ярости". Эта версия персонажа является продвинутым андроидом, который был создан Тони Старком, в качестве достойного для него противника, против которого он сможет играть в игры. После того как Мэйнфрейму надоедает проигрывать, он начинает подчинять себе различное оружие и оборудование в Старк Индастриз. Когда появляются Халки, Мэйнфрейм предлагает провести гонки на роликах, если они проиграют то он уничтожит город. После того как герои его обыгрывают, он решает отправиться изучить человечество поближе.

Фильмы

Мэйнфрейм (версия Вижена) появляется в фильме "Стражи Галактики. Часть 2", персонажа озвучила Майли Сайрус.

Что такое мейнфрейм

Обычно когда люди слышат слово "мейнфрейм", им представляется нечто такое древнее, ужасное, занимающее целый машинный зал, а то и не один, связанное с тысячами устройств и управляемое с помощью старого-доброго терминала . На самом деле конечно же все уже давно не так, современные мейнфреймы корпорации IBM представляют собой одно- (Business Class Model, BC12 ) или двустворчатый (Enterprise Class Model, EC12 ) шкаф, чуть выше человеческого роста, внешне похожий на этакий высокотехнологичный холодильник, набитый сверху-донизу различным оборудованием.

Многие из нас, пользуясь терминалами для банковских карт, бронируя рейс или совершая денежный перевод в сети Интернет, даже не подозревают, что пользуются мейнфреймами.

Возникает вполне закономерный вопрос: в принципе благодаря горизонтальной масштабируемости можно работать и на россыпи x86 -серверов, так зачем чем же нужны мейнфреймы. Для ответа на него следует заметить, что с помощью информационных технологий мы решаем множество абсолютно непохожих друг на друга задач. Такие корпорации как Google , Facebook , ВКонтакте , часто рассматриваемые как эталон высоких нагрузок, обрабатывают миллионы запросов в секунду, но при этом имеют полное право не выполнить некоторые из них по причине аппаратного или программного сбоя. Ничего страшного не случится, в крайнем случае пользователь просто повторит действие. Аналогичным образом данные компании могут потерять часть данных, это хуже, но данные не являются критичными и легко восстанавливаются. Например, когда вы ставите "лайк" в Facebook , то это вовсе не значит, что он тут же становится видим всем пользователям данной социальной сети.

Абсолютно другое дело - приложения, обрабатывающие пользовательские транзакции. При переводе денег из банка в банк невозможно допустить ситуацию, когда они спишутся с одного счета, но не попадут на другой. Аналогично невозможно допустить потери даже части пользовательских данных о финансовых транзакциях. Требования к согласованности данных и надежности информационных систем для того же Google и, например, Федерального резерва абсолютно несопоставимы друг с другом. Данная статья призвана рассказать о том, каким же образом мейнфреймы IBM обеспечивают высочайшую надежность и производительность, и как воспользоваться данными уникальными механизмами из ваших программ на языке Java .

Заглянем под капот


Процессоры

Для обеспечения максимально возможной производительности мейнфрейм zEnterprise EC12 снабжается специальными 6-ти ядерными процессорами , выпускаемыми по технологии 32 нм. и работающими на тактовой частоте 5.5 Ghz . На момент выпуска машины, а возможно и сейчас, это была самая быстрая модель процессора в мире. Топовая модель мейнфрейма может иметь на борту 20 процессоров, что составляет 120 ядер . Часть ядер используется для резервирования, работы канальной подсистемы ввода-вывода и специального использования, а 101 ядро доступно для использования в приложениях. Каждое из этих ядер можно настроить следующим образом:

  • как процессор общего назначения (CP );
  • исключительно для Java- и XML- приложений (zAAP );
  • исключительно для работы информационных систем, например СУБД DB2 (zIIP );
  • исключительно для запуска специальной версии Linux (IFL );
  • для работы аппаратной подсистемы кластеризации (ICF );
  • опционально, как дополнительный процессор для работы канальной подсистемы ввода-вывода (SAP ).
О процессорах для Java -приложений я немного расскажу подробнее ниже.

Распределение числа зарезервированных и доступных к использованию ядер в зависимости от модели мейнфрейма представлено в таблице:


Скорость роста тактовой частоты процессоров от поколения к поколению можно увидеть на графике:


Процессоры zEnterprise EC12 имеют три уровня кэш-памяти и один, четвертый, уровень реализован на отдельных микросхемах. Объемы каждого уровня следующие:
  • L1 : 64 Кб инструкций, 96 Кб данных на ядро;
  • L2 : 1 Мб инструкций, 1 Мб данных на ядро;
  • L3 : 48 Мб на процессор;
  • L4 : 384 Мб на группу из шести процессоров.
В названиях System z и zEnterprise буква "z" обозначает "zero-downtime" , т.е. полное отсутствие простоев. Одна из основных решаемых мейнфреймами задач - обеспечение высокой доступности и надежности работы приложений. Поэтому все системы мейнфрейма резервируются, включая даже сервисные элементы - специальные ноутбуки. Процессоры тоже резервируются, каждая модель мейнфрейма имеет по два резервных процессора, при этом важным является тот факт, что переключение процессора в случае выявления системой неисправности происходит на лету, без прерывания исполняемой программы . Данная возможность реализуется исключительно мейнфреймами и ее наличие вполне понятно: в мире существует множество областей, в которых ошибка вычисления может дорого стоить в прямом смысле этого слова.

Понятно, что 120 ядер, работающих с тактовой частотой 5.5 Ghz должны довольно ощутимо греться, поэтому каждый мейнфрейм снабжается системой воздушного охлаждения . Опционально можно подключить так же систему водяного охлаждения .

Оперативная память

Каждый мейнфрейм zEnterprise EC12 имеет на борту больше установленной памяти нежели заказано. Часть установленной памяти используется для реализации Redundant Array of Independent Memory (RAIM) . Для приложений, работающих на мейнфрейме, доступно до 3 Tб оперативной памяти, при этом одному логическому серверу в составе машины (LPAR ) доступно до 1 Тб ОЗУ.

Планки оперативной памяти вместе с группами процессоров и портами ввода-вывода помещаются в специальный модуль, называемый "книгой" (book ).


Каждая книга имеет точки подключения системы охлаждения в том числе при необходимости и водяной. Распределение объема доступной ОЗУ по книгам в зависимости от модели мейнфрейма приведено в таблице:


Внутренняя инфраструктура ввода-вывода

Внутренняя инфраструктура ввода-вывода в машине представлена двумя вариантами: InfiniBand I/O , впервые представленной в машинах серии z10 и поддерживающей 6 Гб/с InfiniBand I/O interconnect и PCI Express Generation 2 (PCIe Gen2) , используемой ранее в машинах серии z196 и z114 , поддерживающей 8 Гб/с PCIe I/O interconnect . Только последняя инфраструктура доступна на новых машинах.

Мы рассмотрели основные внутренние системы мейнфрейма. С некоторыми другими аппаратными возможностями познакомимся уже применительно к вопросу обеспечения работы Java -приложений на данной платформе.

Место для Java

Корпорация IBM считает виртуальную машину JVM и язык программирования Java одним из своих стратегических приоритетов. Инвестиции в данную инфраструктуру огромны. Чего стоит один только сервер приложений IBM WebSphere AS - один из лучших Java EE -совместимых серверов приложений в мире. Так же код на языке Java поддерживается такими продуктами как WebSphere MQ и Integration Bus , адаптеры для Java имеют координаторы транзакций IBM с долгой историей: CICS и IMS TM . Так же на языке Java можно писать хранимые процедуры для реляционной СУБД DB2 .

Корпорация заинтересована в стабильной надежной и быстрой работе Java -приложений на мейнфрейме и прилагает к этому множество усилий. Давайте рассмотрим какие возможности мейнфрейма уникальны для исполнения Java -кода.

Настраиваемые наборы процессоров

В последние годы на рынке программного обеспечения наметилась тенденция лицензирования по ядрам. Чем больше процессорных ядер в вашей машине, тем больше лицензий на программное обеспечение вам нужно купить, тем оно дороже. По данной схеме лицензируются СУБД, сервера приложений, различное ПО промежуточного уровня (брокеры сообщений, ESB , BPM и т.д.), а так же корпоративное ПО (CRM , ERP , АБС и т.д.) При этом объективно Java является довольно тяжелой нагрузкой, что связано и со сборкой мусора, и с необходимостью в JIT -компиляции, и с поздним связыванием. Поэтому можно зарезервировать часть имеющихся на борту мейнфрейма ядер под работу исключительно с данным типом нагрузки. Такие зарезервированные ядра или, в терминах мейнфреймщиков, "процессоры" называются zEnteprise Application Assist Processor (zAAP) . По аппаратной составляющей это - обычный процессор zEnterprise , часть команд которого отключается в настройках. Сам по себе такой процессор стоит гораздо дешевле обычного, т.н. Generic центрального процессора zEnterprise . Но основная выгода даже не в этом. Данный процессор не участвует в расчете лицензий на программное обеспечение . Таким образом использование zAAP позволяет существенно сэкономить.

При этом zAAP не может исполнять некоторые действия, такие как управление операциями ввода-вывода или работа JNI . Поэтому операционная система z/OS при выполнении диспетчеризации TCB (в мире распределенных систем используется термин "поток") может лениво переводить их с общего центрального процессора (GP ) на zAAP и обратно. Если диспетчер видит, что выполняется Java -код, запущенный на GP , то он при выделении следующего кванта времени данному TCB перенесет его на ядро, сконфигурированное как zAAP . Аналогично, если диспетчер понимает, что выполняется JNI , то он при выделении следующего кванта времени запустит соответствующий TCB на GP , а не на zAAP . Естественно, такие переносы занимают время на перестройку кэша и TLB , но в целом оно не настолько критично по сравнению с выигрышем на стоимости лицензий.

Важный момент: использовать процессоры zAAP можно только под операционной системой z/OS , допускается не более двух zAAP на один GP .

Помимо выполнения Java -кода, процессоры zAAP могут использоваться и при работе с XML .

Аппаратная транзакционная память

Мейнфрейм zEnterprise EC12 - первый сервер общего назначения от IBM , содержащий реализацию технологии транзакционной памяти, впервые использованной для того, чтобы сделать суперкомпьютер IBM Blue Gene/Q-based Sequoia , расположенный в Lawrence Livermore National Lab , самым быстрым в мире (по состоянию на октябрь 2014-го года данный суперкомпьютер занимает третью строчку в списке ТОП-500). В мейнфрейме zEnterprise EC12 IBM улучшила данную технологию, адаптировав ее для ускорения выполнения конкурентных операций над общим набором данных, например для параллельного проведения различных финансовых операций по одному и тому же набору счетов.

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

Транзакция начинается специальной командой процессора TBEGIN , а заканчивается командой TEND . Если за время выполнения транзакции какой-то из задействованных ею участков памяти был изменен другим процессором, то транзакция откатывается и восстанавливается состояние регистров общего назначения и оперативной памяти, которое было до ее начала. Затем управление передается блоку transaction failure handler , который решает повторить ли выполнение транзакции или наложить традиционную блокировку (coarse-locking ), чтобы гарантировать выполнение нужного кода.


Цель описанного выше zEnterprise EC12 Transactional Execution (TX) facility - избежать необходимости в coarse-grained-locking с целью обеспечить безопасное, свободное от блокировок (lock-free ), конкурентное исполнение критических секций. Рассмотрим пример использования TX при работе нескольких читателей и писателя. В классической реализации, использующей блокировки, все читатели ждут освобождения критической секции, соответственно они могут читать область памяти исключительно по одному, друг за другом. В реализации с использованием TX , т.н. lock-elision , читатели работают параллельно до тех пор, пока писатель не изменит общую область памяти.


zEnteprise EC12 Transaction Execution facility включает в себя множество функций обеспечивающих широкое поле оптимизаций, таких как lock-elision , примитивы compare-and-swap (CAS) над несколькими словами (multi-word ) и спекулятивные оптимизации.

В IBM Java7 SR3 с включенной опцией -Xaggressive становится доступной реализация многопоточной очереди ConcurentLinkedQueue (CLQ) , использующая TX . CLQ - это потокобезопасная реализация очереди, работающей по принципу "первый пришел - первый ушел (FIFO )". Стандартные реализации методов CLQ.offer() и CLQ.poll() основаны на свободных от блокировок алгоритмах и используют циклы и атомарные CAS -операции, т.е. стандартные примитивы, применяемые для построения множества конкурентных алгоритмов. IBM JVM компилирует данные алгоритмы в сотни машинных инструкций. При использовании TX , реализации методов CLQ.offer() и CLQ.poll() заменяются на описанные выше последовательности инструкций, обеспечивающие работу транзакций. Это существенно повышает эффективность алгоритмов из-за того, что сокращается исполняемый набор машинных инструкций и уменьшается необходимость в доступе к данным. Повышение эффективности в два раза подтверждается микробенчмарком.


В последней версии IBM JVM для z/OS - IBM Java7R1 аналогичным образом доработано поведение класса HashTable , эффективность повысилась более чем в 5 раз.


Аппаратная поддержка сжатия данных

Знаете ли вы, что каждый день в мире создается более 2000 петабайт данных? Цифровая вселенная увеличится более чем в 300 раз за время между 2005-м и 2020-м годами, со 130 до 40 000 экзабайт.

В последней версии IBM JVM для z/OS - IBM Java7R1 для работы класса, обеспечивающего поточное сжатие данных, - java.util.zip.GZIPOutputStream - используется специальная карточка - zEDC Express I/O Adapter . Задействование данной карточки позволяет снизить использование процессора на 91% по сравнению с программно реализованным сжатием. Среднее время сжатия снижается на 74% , а уровень сжатия повышается примерно в 5 раз .


zEDC I/O Adapter может использоваться через стандартные API : Java и zlib .

Специальные команды процессора

Начиная с поколения z196 , в процессоры машин было добавлено более 70 новых машинных инструкций , часть которых используется для ускорения работы Java . JIT -компилятор использует их при генерации кода. Подробная информация о работе процессора является конфиденциальной, но ознакомиться с системой команд, поддерживаемыми типами данных и некоторыми особенностями можно, изучив документ z/Architecture. Principles of Operation .

Работа с упакованными десятичными числами

В мире финансовых вычислений для обеспечения точности округления и ускорения операций используется формат данных под названием "упакованные десятичные числа" или по-английски Packet Decimal . Данный формат реализован в zEnteprise EC12 аппаратно. Версия IBM Java7R1 предлагает библиотеку для работы c packed decimal . Данная библиотека решает следующие задачи:

  • маршалинг и демаршалинг: трансформация примитивных типов в байтовые массивы, поддерживается как big- , так и little-endian ;
  • операции над packed decimal (PD) : арифметические, сравнения, проверки ошибок (проверяет, является ли PD -операнд верно сформированным) и специальные: сдвиги и перемещения;
  • конвертация типов: преобразование из Packed Decimal (PD) , External Decimal (ED) и Unicode Decimal (UD) в примитивные типы (int , long ) и обратно, преобразование между разными десятичными типами (PD , ED , UD ) и преобразование десятичных типов в Java -объекты: BigDecimal и BigInteger .


Библиотека является платформенно- и JVM -независимой. Работает непосредственно с массивами байт и не требует создания деревьев Java -объектов, а так же позволяет JIT сгенерировать максимально эффективный для платформы код.

Multi-tenant JVM

В версии IBM Java7R1 в качестве технологического превью доступна такая опция, как multi-tenancy . Включается данная опция с помощью аргумента командной строки, передаваемого при запуске JVM : -Xmt .


Суть данной опции в следующем: в системе стартует единая JVM в виде демона javad . У данной JVM настраивается размер кучи, количество потоков, использование ввода-вывода, CPU . Каждый последующий запуск java создает не отдельную JVM , а лишь небольшую прокси к демону javad .


Такое поведение имеет все преимущества запуска нескольких образов операционных систем на одном сервере. Существенно уменьшается простой процессора, а так же снижается потребление памяти: теперь служебные объекты создаются не для каждой JVM , а только один раз. Самое главное то, что переход на Multitenant JVM не требует изменения приложений .

Выводы

В данной статье мы рассмотрели основные преимущества, которые дает программно-аппаратная синергия для работы Java -приложений. Корпорация IBM производит весь стек технологий, начиная от аппаратной реализации, включающей в себя процессор, оперативную память, подсистему ввода-вывода и в целом архитектуру машины, и заканчивая JRE и сервером приложений. Именно благодаря этому обеспечивается максимальная эффективность: низкоуровневые операции, такие как конвертация форматов данных, сжатие, шифрование, передаются на уровень специализированной аппаратуры, освобождая центральные процессоры машины от рутинных действий. Аппаратура берет на себя и резервирование, обеспечение бесперебойной работы, облегчает построение кластеров и масштабирование ваших приложений.

Сама по себе огромная вычислительная мощь мейнфрейма (101 ядро!) позволяет делать вещи, недоступные на других системах. Например, возможно разместить СУБД, критические для бизнеса приложения и веб-портал, работающий под управлением IBM WebSphere AS , на одной машине, что совместно с применением технологии общей памяти и гиперсокетов позволяет гарантировать минимальное время отклика всего комплекса и его соответствие самому жесткому SLA . Из взаимодействия приложений убирается самая медленная и нестабильная часть - компьютерная сеть.

Использование аппаратной транзакционной памяти (Hardware transactional memory ) открывает новую веху в разработке многопоточных приложений. Ученые и энтузиасты долгое время уже занимаются изучением программной транзакционной памяти, накоплены определенные знания, алгоритмы, есть реализации библиотек, в частности под Clojure . Теперь все данные возможности доступны на уровне самой машины, что существенно увеличивает производительность многопоточных приложений. Данное утверждение подтверждено результатами тестов, приведенными в статье.

В целом можно отметить, что слухи о смерти "танцующего динозавра" слишком преувеличены. Уникальная серия, которая недавно отметила свои 50 лет лидерства в серверном мире, продолжает шествие по планете. Мейнфрейм от IBM предлагает высокопроизводительную, надежную, максимально зарезервированную среду исполнения приложений и для нашего любимого языка программирования. Не COBOL "ом единым!


Из графика видно, что за последние 10 лет производительность Java на мейнфреймах выросла в 12 раз .

На последок уместно привести высказывание одного из основателей корпорации IBM , сделанное задолго до появления не только персональных компьютеров, но и средних ЭВМ:

"Развитие вычислительной техники полностью повторит развитие транспорта. Когда-нибудь появятся персональные ЭВМ, как появились персональные автомобили, и для них будет существовать целая сеть мастерских, "дорог" и "заправок". Это будет лучшее средство решения индивидуальных проблем. Наверняка будут средние ЭВМ, роль которых будет аналогична автобусам - решать проблемы небольшой группы потребителей. Решение особых задач потребует быстрых и сверхдорогих компьютеров - их место подобно авиации. Но для решения масштабных задач всегда будут использоваться железные дороги - поезд гарантированно перевезет сотни и тысячи людей на огромные расстояния за очень умеренные деньги. Да, железным дорогам требуется прокладка рельсов, строительство вокзалов, подготовка машинистов и прочее, но в целом ряде случае альтернативы им нет и никогда не будет. Это место наших машин - мейнфреймов.”

Если у вас появились вопросы о работе мейнфрейма, о работе Java на нем, может быть вы - представитель партнера IBM и хотите протестировать или обеспечить работу вашего приложения на zEnterprise , то могу предложить несколько каналов связи. Во-первых, вы можете писать в комментарии, во-вторых, обратиться ко мне по электронной почте [email protected] , в-третьих, позвонить по телефону +7-495-775-88-00 ext. 4353 . Всегда буду рад вам помочь.

Материалы

Данная статья во многом основана на презентации Marcel Mitran, Chief Architect IBM JVM on System z под названием A Survey of Java Performance on zEnteprise EC12 . Так же использовались следующие ресурсы: