High Level Architecture

Opracowano na podstawie tekstu oryginalnych dokumentów standardu oraz angielskiej i francuskiej wikipedii

HLA - High Level Architecture (architektura wysokiego poziomu) jest ogólną architekturą dla rozproszonych systemów komputerowych, ze szczególnym uwzględnieniem systemów symulacyjnych. Ideą HLA jest, aby aplikacje programowe (symulatory komputerowe) mogły porozumiewać się między sobą niezależnie od tego, na jakiej platformie zostały osadzone. Komunikacją pomiędzy poszczególnymi aplikacjami zajmuje się infrastruktura uruchomieniowa - Runtime Infrastructure (RTI), która pełni rolę podobną do usług systemu operacyjnego lub funkcji maszyny wirtualnej. Zapewnia m.in.:

Spis treści

//

[edytuj] Ogólny opis techniczny

Prace związane z określeniem i przyjęceim nowego standardu Architektury Wysokiego Poziomu (HLA) rozpoczęto wraz z zatwierdzeniem DoD 5000.59-P, Modeling and Simulation Master Plan w Październiku 1995 r. w Departamencie Obrony USA. Podstawę stanowiły dwa protokoły:

Kolejne etapy zatwierdzania standaru realizowano na:

1) Poziomie rządowym USA:

2) Poziomie międzynarodowym - NATO:

3) Poziom międzynarodowym - ogólny:

Na standard składają się następujące elementy:

W ramach HLA zdefiniowane jest kilka nowych terminów, których zrozumienie jest istotne dla zrozumienia specyfikacji. Program (symulator) zgodny z HLA nazywany jest federatem. Wiele programów (symulatorów) połączonych przy wykorzystaniu RTI i wspólnego FOM nazywane jest Federacją. Zbiory danych przekazywane pomiędzy symulatorami nazywane są obiektami. Obiekty posiadają atrybuty (pola danych). Zdarzenia przesyłane pomiędzy symulatorami nazywane są interakcjami. Interakcje posiadają parametry (pola danych).

[edytuj] Specyfikacja interfejsu

Specyfikacja interfejsu jest zorientowana obiektowo. Wiele z RTI implementuje API w językach C++ i Java.

Specyfikacja interfejsu podzielona jest na następujące grupy serwisów:

[edytuj] Szablon modelu obiektowego

Szablon modelu obiektowego (OMT) opisuje ramy komunikacji pomiędzy symulatorami zgodnymi z HLA. Na OMT składają się następujące dokumenty:

[edytuj] Reguły HLA

Reguły HLA określają w jaki sposób powinny zachowywać się poszczególne elementy symulatora by mogły działać w ramach HLA.

  • Federacje powinny posiadać zdefiniowany Model Obiektowy Federacji (FOM) HLA, udokumentowany zgodnie z szablonem modelu obiektowego (OMT).
  • W ramach federacji, wszystkie obiekty zdefiniowane w FOM powinny być w federatach, a nie w infrastrukturze (RTI).
  • W czasie działania federacji, całość wymiany informacji zdefiniowanej w FOM pomiędzy federatami powinna przebiegać za pośrednictwem RTI.
  • W czasie działania federacji, federaci powinni komunikować się z RTI zgodnie z specyfikacją interfejsu HLA.
  • W czasie działania federacji, atrybut instancji obiektu może być w tym samym czasie własnością tylko jednego federata.
  • Federaci powinni posiadać zdefiniowany Model Obiektowy Symulacji (SOM), udokumentowany zgodnie z szablonem modelu obiektowego (OMT)
  • Federaci powinni mieć możliwość wysyłania i odbierania aktualizacji dowolnych atrybutów obiektów zdefioniowanych w ich SOM oraz wysyłania i odbierania interakcji tak jak zdefiniowano w ich SOM
  • Federaci powinni mieć możliwość brania na własność / zrzekania się własności atrybutów w sposób dynamiczny w czasie działania federacj, tak jak to zdefiniowano w ich SOM.
  • Federaci powinni mieć możliwość zmieniania warunków pod którymi aktualizują atrybutu obiektów, tak jak to zdefiniowano w ich SOM.
  • Federaci powinni mieć możliwość zarządzania lokalnym czasem w sposób, który umożliwi im koordynację wymiany danych z pozostałymi członkami deferacji.
  • [edytuj] Bazowy model obiektowy

    Bazowy Model Obiektowy (Base Object Model - BOM) jest nową koncepcją opracowaną przez SISO w celu zapewnienia łatwiejszego ponownego wykorzystania symulatorów oraz prostszego łączenia symulatorów ze sobą. Koncepcja BOM jest bardzo istotna dla twórców oprogramowania. Więcej szczegółów można odnaleźć na stronie Boms.info.

    [edytuj] Standardy

    HLA jest standardem IEEE 1516:


    [edytuj] Referencje

    [edytuj] Implementacje

    Open source

    Closed source

    Źródło: „http://www.rodziceonline.com/High_Level_ArchitectureKategoria: Informatyka

    Linki