Otevřená telekomunikační platforma - Open Telecom Platform
![]() | |
Vývojáři | Ericsson |
---|---|
První vydání | 1998 |
Stabilní uvolnění | 23.0[1] / 13. května 2020 |
Úložiště | ![]() |
Napsáno | Erlang |
Operační systém | Cross-platform |
Plošina | Cross-platform |
Typ | Programovací rámec (middleware, knihovny, nástroje, databáze) |
Licence | Licence Apache 2.0 (od OTP 18.0)Veřejná licence Erlang 1.1 (dřívější verze) |
webová stránka | www |
OTP je sbírka užitečných middleware, knihovny, a nástroje napsáno v Erlang programovací jazyk. Je nedílnou součástí open-source distribuce Erlangu. Název OTP byl původně zkratkou pro Otevřená telekomunikační platforma, což byl dříve pokus o branding Ericsson vydal Erlang / OTP jako open source. Erlang ani OTP však nejsou specifické pro telekomunikační aplikace.[2][3]
Distribuce OTP je podporována a udržována jednotkou produktu OTP na adrese Ericsson, který vydal Erlang / OTP as open-source na konci 90. let zajistit nezávislost na jediném prodejci a zvýšit povědomí o jazyce.
Obsahuje:
- Erlang tlumočník (který se nazývá PAPRSEK );[4]
- Erlang překladač;
- protokol pro komunikaci mezi servery (uzly);
- A CORBA Zprostředkovatel požadavku na objekt;
- nástroj pro statickou analýzu s názvem Dialyzer;
- distribuovaný databázový server (Mnesia ); a
- mnoho dalších knihoven.
Dějiny
Brzké dny
Původně se jmenoval Open System a byl spuštěn Ericsson na konci roku 1995 jako a prototypový systém jehož cílem bylo vybrat z řady vhodných programovacích technologií a součásti systému, včetně počítačů, jazyky, databáze a systémy správy na podporu systému vzdáleného přístupu vyvíjeného ve společnosti Ericsson.[5] Ve stejném roce, po zhroucení dalšího gigantu C ++ Na základě projektu Open System bylo nařízeno poskytnout podporu při restartu od nuly pomocí Erlang.[2] Výsledkem byl velmi úspěšný AXD301 systém, nový Přepínač ATM, oznámený v roce 1998. Systém Open System byl později pojmenován Open Telecom Platform (OTP), když byl v květnu 1996 dodán první prototyp. OTP se také stalo specifickou produktovou jednotkou v rámci Ericsson od té doby poskytuje správu, podporu a další rozvoj.
Prvky systému OTP v roce 1998:[5]
- Distribuovaná správa aplikací
- SASL - protokolování chyb, zpracování vydání
- Monitorování zdrojů OS
- EVA - zpracování událostí / alarmů nezávislé na protokolu
- Mnesia - aktivní replikace dat v reálném čase
- SNMP - rozhraní pro provoz a údržbu
- INETS - jednoduchá podpora HTTP
Klíčovým subsystémem v OTP je System Architecture Support Libraries (SASL), který dal rámec pro psaní aplikací. Raná verze SASL poskytovala:[5]
- Spouštěcí skripty
- Koncept aplikace
- Chování (návrhové vzory)
- Vypořádání se s chybou
- Ladění
- Aktualizace softwaru na vysoké úrovni za běhu bez vypnutí
Chování poskytuje programátorům ještě vyšší abstrakce pro efektivní návrh programu. Raná verze obsahovala:[5]
- Dozor
- Servery
- Zpracování událostí
- Konečné stavové stroje
Součásti OTP
Komponenty OTP lze rozdělit do šesti kategorií:[6]
- Základní aplikace - základní funkce Erlang / OTP.
- Kompilátor Kompilátor pro moduly Erlang.
- Funkčnost jádra nezbytná ke spuštění samotného Erlang / OTP.
- SASL (System Architecture Support Libraries) Sada nástrojů pro výměnu kódu a zpracování alarmů atd.
- Stdlib Standardní knihovna.
- Provoz a údržba - OAM systému vyvinutého uživatelem a samotného Erlang / OTP.
- EVA Víceúčelová obsluha událostí a alarmů.
- OS_Mon Monitor, který umožňuje kontrolu základního operačního systému.
- SNMP Podpora SNMP včetně kompilátoru MIB a nástrojů pro vytváření agentů SNMP.
- Rozhraní a komunikace - Interoperabilita a podpora protokolů.
- Asn1 Podpora pro ASN.1.
- Comet Knihovna, která umožňuje Erlang / OTP volat objekty COM v systému Windows
- Krypto Kryptografická podpora
- Erl_Interface Nízkoúrovňové rozhraní do C.
- GS Grafický systém používaný k psaní uživatelských rozhraní nezávislých na platformě.
- Inets Sada služeb, jako je webový server a klient FTP.
- Jinterface Nízkoúrovňové rozhraní pro Javu.
- SSL Secure Socket Layer (SSL), rozhraní k UNIX BSD soketům
- Správa databáze.
- Podpora jazyka QLC Query pro Mnesia DBMS.
- Mnesia Těžká distribuovaná databáze v reálném čase.
- ODBC Rozhraní databáze ODBC.
- Služby CORBA a překladač IDL.
- Služba událostí cosEvent Orber OMG.
- cosNotification Orber OMG Notification Service.
- Časovač cosTime Orber OMG a služby TimerEvent.
- cosTransaction Orber OMG Transaction Service.
- Překladač IC IDL
- Orber Zprostředkovatel požadavků na objekty CORBA.
- Nástroje.
- Appmon Nástroj používaný k prohlížení aplikací OTP.
- Debugger Pro ladění a testování programů Erlang.
- Parsetools Sada nástrojů pro analýzu a lexikální analýzu.
- Pman Procesní manažer používaný ke kontrole stavu systému Erlang / OTP.
- Runtime_Tools Nástroje, které mají být zahrnuty do produkčního systému.
- Panel nástrojů Panel nástrojů zjednodušující přístup k nástrojům Erlang / OTP.
- Nástroje Sada programovacích nástrojů včetně analyzátoru pokrytí atd.
- TV Vizuální grafický stůl ETS a Mnesia.
Aplikace v OTP
Od OTP 18.2 jsou do distribuce Erlang / OTP zahrnuty následující aplikace:[7]
- asn1
- common_test
- překladač
- cosEvent
- cosEventDomain
- cosFileTransfer
- cosNotification
- cosProperty
- cosTime
- cos Transakce
- krypto
- debugger
- dialyzátor
- průměr
- edoc
- eldap
- erl_docgen
- erl_interface
- erts
- et
- jednotka
- gs
- hipe
- ic
- inety
Viz také
Reference
- ^ „Vydání OTP 23.0“. erlang.org. Citováno 2019-05-15.
- ^ A b „M. Logan, E. Merritt a R. Carlsson (2010) Erlang a OTP v akci“ (PDF).
- ^ Erlang Solutions (1. března 2013). „OTP, middleware pro souběžně distribuované škálovatelné architektury“ - přes YouTube.
- ^ „Erlang - kompilace a načítání kódu“. erlang.org. Citováno 2017-12-21.
- ^ A b C d B. Däcker (2000) Souběžné funkční programování pro telekomunikace: Případová studie Úvod do technologie
- ^ „Erlang - úvod“. erlang.org.
- ^ „Erlang Programming Language“. www.erlang.org.