Смекни!
smekni.com

Отчет по преддипломной практике 6 (стр. 4 из 10)

В силу того, что Delphi полностью поддерживает OLE-automation и предоставляет высокоуровневые средства работы с этими механизмами (специализированные классы, эксперты, языковые расширения), вариант совместного использования Delphi & OLEnterprise может оказать решающее воздействие на архитектуру системы => распределенные вычисления и локальные рабочие места - все в одном коде.

Рисунок 3. Структурная схема OEC Architecture

Так как Delphi обеспечивает создание "чистого" (native) кода посредством компиляции (например в самодостаточную - без интерпретатора - динамическую библиотеку DLL), возможна тонкая интеграция полученных программных модулей не только с 3-ми клиентскими приложениями но и с серверами приложений и баз данных на платформах Windows (в большей степени Windows NT, как следствие ее приспособленности для поддержки серверных звеньев). В качестве примера можно привести построение определяемых пользователем функций UDF для серверов БД Borland InterBase (например, для специфической обработки BLOB-полей).

Главной целью Golden Gate является объединение лучших черт архитектуры клиент/сервер и модели intranet. И первым этапом ее реализации является добавление средств интеграции с Internet-технологиями в уже имеющиеся средства разработки. Delphi не является исключением. Выпущенная летом 1996 года обновленная версия Delphi 2.01 включает поддержку модулей сопряжения с Internet для Windows 95/NT - WinINET; возможность построения блоков расширения Microsoft Information Server через интерфейсы ISAPI & ISAPI Filter; 8 элементов ActiveX, полностью реализующих логику поддержки основных Internet-протоколов и HTML (обработка + отображение => построение броузеров) в виде повторно используемых компонентов.

Рисунок 4. Схема взаимодействия с ActiveX

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

3. Архитектура ЭВМ и МПС

3.1 Описание архитектурных свойств и структур ЭВМ, применяемых на предприятии

На предприятии установлены ЭВМ типа IBM PC ATX с архитектурой HyperTransport

Архитектура HyperTransport

Технология (архитектура) HyperTransport (HT) задумывалась как альтернатива шинно-мостовой архитектуре системных плат. Технология разработана компаниями AMD, Apple Computers, Broadcom, Cisco Systems, NVIDIA, PMC-Sierra, SGI, SiPackets, Sun Microsystems, Transmeta. Первый релиз вышел в 2001 году, в 2003-м — версия 1.10. Прежнее кодовое название — LDT (Lighting Data Transport).

Основная идея НТ — замена шинного соединения компонентов (периферийных устройств) системой двухточечных встречно направленных соединений. При этом достижима более высокая тактовая частота интерфейсов, что обеспечивает их более высокую (по сравнению с шиной) пропускную способность. Структурная схема компьютера архитектуры НТ приведена на рисунок 5. Главный мост (host bridge) обеспечивает связь НТ с ядром — процессором и памятью. Периферийные контроллеры, требующие высокой пропускной способности, реализуются в виде НТ-туннелей. В архитектуре предусматривается и мостовая связь с шиной PCI.

Архитектура НТ обеспечивает все типы транзакций процессоров и устройств PCI, PCI-X и AGP, используемые в PC. Транзакции выполняются в виде серий передач пакетов различных типов. В традиционных транзакциях целевое устройство идентифицируется адресом: чтение и запись в пространстве памяти, ввод-вывод в конфигурационном пространстве, а также считывание вектора прерывания из PIC 8259A и специальные циклы PCI (см. 14.2). Для унификации транзакций все пространства отображаются на единое 40-битное пространство адресов (объем 1 Тбайт), адрес передается в управляющих пакетах. Первые 1012 Гбайт пространства выделены для отображения обычного пространства памяти (для ОЗУ и ввода-вывода, отображенного на память). В оставшейся 12-гигабайтной области размещаются конфигурационное пространство (32 Мбайт), пространство ввода-вывода (32 Мбайт), память SMM, пространства адресов для выдачи векторов и подтверждения прерываний; 54 Мбайт остались в резерве. Транзакции НТ обеспечивают программное взаимодействие процессора с устройствами, прямой доступ к памяти и одноранговое взаимодействие устройств с адресацией в описанном комбинированном пространстве. Существует сетевое расширение спецификации, поддерживающее обмен сообщениями (как в сетях), причем возможны и широковещательные сообщения.

Транзакции выполняются расщепленным способом: инициатор посылает пакет-запрос и данные для транзакции записи, целевое устройство посылает пакет-ответ и данные для транзакций чтения. Технология НТ обеспечивает упорядоченность выполнения транзакций; есть возможность регулировать качество обслуживания (Quality of Service, QoS), что позволяет организовывать изохронные передачи.

Рисунок 5.Архитектура HyperTransport

Сигнализация прерываний в НТ реализуется тоже пакетами: устройство посылает сообщение — выполняет транзакцию записи по адресу, указанному ему при конфигурировании (аналогично MSI на шине PCI). Обработчик прерывания посылает сообщение о завершении обработки прерывания (End Of Interrupt, EOI), делая запись по другому адресу, связанному с данным устройством. Такой механизм сигнализации запросов и подтверждений позволяет преодолеть неэффективность традиционого для PC механизма прерываний с помощью специальных линий IRQ.

Архитектура НТ основана на двусторонней пакетной передаче данных между парой устройств. Устройство НТ может выступать в роли инициатора или/и целевого устройства транзакций. По топологическим свойствам различают несколько типов устройств НТ:

- Туннель (tunnel) — устройство с двумя интерфейсами НТ; такие устройства могут собираться в цепочку (daisy chain), образующую логическую шину. Цепочка подключается к хосту (процессору с главным мостом), отвечающему за конфигурирование всех устройств и управляющему работой НТ.

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

- Коммутатор (switch) — устройство с несколькими интерефейсами НТ. по структуре аналогичное нескольким мостам PCI, подключенным к одной (внутренней) шине.

- Тупик, или пещера (cave) — устройство с одним интерфейсом НТ.

Хост (host) — это «хозяин шины», подключающийся к ней через главный мост и выполняющий функции конфигурирования (аналогично и совместимо с PCI). Основной вариант топологии — цепочка устройств-туннелей, подключенная верхним концом к хосту. Каждый интерфейс НТ состоит из двух независимых частей: передатчика и приемника. Каждому устройству при конфигурировании выделяются свои области в адресном пространстве. В цепочке устройства-туннели транслируют пакеты сверху вниз (нисходящий трафик) и снизу вверх (восходящий). Если в нисходящем управляющем пакете устройство обнаруживает свой адрес, оно «понимает», что обращаются к нему, и принимает соответствующую информацию (управляющие пакеты и данные). Восходящий трафик туннель транслирует «вслепую». На полученные запросы устройство отвечает посылкой пакетов вверх, включая их в транслируемый восходящий трафик. Таким образом обеспечивается программное взаимодействие процессора с устройствами. Собственные запросы на доступ к памяти устройство посылает тоже вверх, как и запросы (обращения) к другим устройствам (независимо от положения целевого устройства — выше или ниже в цепочке). Доставку пакета адресату обеспечивает главный мост: он разворачивает пакет, принятый из цепочки (адресованный не к ОЗУ), и посылает его вниз — так организуется одноранговое взаимодействие. На пакет, адресованный к ОЗУ, главный мост организует ответ от контроллера памяти, реализуя таким образом прямой доступ к памяти.

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

Технология HyperTransport предназначена для соединения компонентов компьютеров и коммуникационной аппаратуры, но только в пределах платы — слоты и карты расширения технологией НТ не рассматриваются. Для передачи информации используются два встречных однонаправленных набора высокоскоростных сигналов: