Так как на таком IPCS может выполняться любое приложение NT Server для процессора Intel, то IBM пришлось добавить некоторые локальные устройства, включая клавиатуру, мышь и дисплей. Таким образом, в отличие от оригинального IPCS, эта версия имеет разъемы для подключения локальных устройств. К этому серверу приложений можно подключать и другие адаптеры PCI. Некоторые устройства, такие как диски, компакт-диски и адаптеры ЛВС разделяются с AS/400. Для этой цели процессор приложений AS/400 использует драйверы устройств AS/400.
Чтобы Windows NT могла исполняться на разных аппаратных платформах, Microsoft определила так называемый слой абстрагирования от оборудования HAL (hardware abstraction layer). HAL — это слой кода, предназначенный для изоляции ядра ОС от аппаратных различий разных платформ. Например, HAL скрывает такие детали, как интерфейсы ввода-вывода, котроллеры прерываний и механизмы многопроцессорных коммуникаций. Вместо работы с этой аппаратурой напрямую, NT обращается к процедурам HAL.
Концептуально HAL напоминает MI, но на значительно более низком уровне. Так как большая часть процессоро-зависимого кода по-прежнему находится в ядре, Windows NT нельзя считать аппаратно-независимой. То же самое можно сказать и о приложениях NT, поскольку они компилируются непосредственно в двоичные коды конкретного процессора. Тем не менее, HAL позволяет обеспечить некоторую дополнительную интеграцию между процессором приложений NT и AS/400.
Для процессора приложений NT был разработан новый HAL, который обеспечивает разделение устройств и передачу команд в обе стороны без изменений в NT. Например, вместо прерывания NT при возникновении ошибки, новый HAL передает ошибки на обработку AS/400. Другие функции администрирования и управления также выполняются либо AS/400, либо NT.
Файловая система NT (NTFS) размещается в байтовом пространстве OS/400. Пока отдельные файлы видимы только NT. Когда-нибудь, NTFS будет интегрирована в IFS, либо эти файлы станут «видимы» AS/400 с помощью какого-то другого механизма. Сегодня же для связи между этими двумя серверными ОС можно использовать ODBC.
С начала 90-х мы стремились превратить AS/400 в сервер мирового класса. Архитектура системы позволяла организовать полную серверную среду без ущерба для наших традиционных заказчиков, привыкших использовать AS/400 в централизованных конфигурациях. Заказчики говорили нам, что хотят перейти к клиент-серверным вычислениям, но не желают ради этого нарушать порядок работ в своей фирме. Для AS/400 это не проблема.
Однако мы столкнулись с нежеланием других производителей мини-компьютеров терять свой имидж. Некоторые из них тоже хотели поставлять на рынок серверы, но при этом не смогли модифицировать свои действующие модели. Практически каждая вторая из этих фирм заменила свои централизованные системы новыми, установив на них ОС Unix. Соответственно этим фирмам пришлось объяснять своим заказчикам, что если те хотят перейти на клиент-серверные вычисления, то им придется переделывать или покупать заново все приложения для новой системы.
Никто не верил, что мы можем превратить в сервер существующую AS/400. Поэтому мы решили продемонстрировать серьезность своих намерений, создав несколько новых серверных моделей. Это не было чисто маркетинговой уловкой, но и помогло нам добиться лучшего соотношения цена-производительность в работе новых моделей.
В сентябре 1993 года мы представили первые серверные модели семейства AS/400. Новое семейство серверов AS/400 Advanced Server появилось в мае 1994 года и включало две модели — для мелких и средних фирм. В июне 1995 года были объявлены три новые серверные модели, позволившие занять весь рынок AS/400. Мы старались, чтобы они оптимально функционировали в качестве:
сервера базы данных;
сервера коммуникаций;
обработчика пакетных программ.
Все эти функции требуют большего объема вычислений, чем интерактивная обработка, и, соответственно, более высокой производительности по сравнению с традиционными моделями. Поэтому первоначально установили в младшие модели серверов высокопроизводительные процессы IMPI из старших традиционных моделей. Например, один или два процессора из старшей модели F70 (1993 год), выполненной в виде стоек, были использованы в меньших серверных моделях 135 и 140 соответственно. Мы также снабдили эти модели достаточным объемом памяти, дискового пространства и возможностями подключения к ЛВС для поддержки мощных процессоров в серверной среде. Эти процессоры значительно повысили производительность серверных приложений в сравнении с традиционными моделями. Работа сети, базы данных, файл-сервера и компиляторов также улучшилась. Появление RISC-процессоров, гораздо более производительных по сравнению с их предшественниками IMPI, позволило использовать одинаковые процессоры как в серверах, так и в традиционных системах.
Читать дальше