Öppna telekomplattformen

Erlang
Utvecklare Ericsson
Initial release 1998
Stabil frisättning
Edit this on Wikidata 25.2.2 / 30 januari 2023 ; 32 dagar sedan ( 30 januari 2023 )
Förvar
Skrivet i Erlang
Operativ system Cross-plattform
Plattform Cross-plattform
Typ Programmeringsram (mellanprogram, bibliotek, verktyg, databas)
Licens Apache License 2.0 (sedan OTP 18.0) Erlang Public License 1.1 (tidigare utgåvor)
Hemsida www .erlang .org  Edit this on Wikidata

OTP är en samling användbar mellanprogram , bibliotek och verktyg skrivna i programmeringsspråket Erlang . Det är en integrerad del av open source- distributionen av Erlang. Namnet OTP var ursprungligen en akronym för Open Telecom Platform , vilket var ett varumärkesförsök innan Ericsson släppte Erlang/OTP som öppen källkod. Men varken Erlang eller OTP är specifika för telekomapplikationer.

OTP-distributionen stöds och underhålls av OTP-produktenheten på Ericsson , som släppte Erlang/OTP som öppen källkod i slutet av 90-talet, för att säkerställa dess oberoende från en enda leverantör och för att öka medvetenheten om språket.

Det innehåller:

Historia

Tidiga dagar

Ursprungligen kallat Open System, startades det av Ericsson i slutet av 1995 som ett prototypsystem som syftade till att välja från en rad lämpliga programmeringsteknologier och systemkomponenter , inklusive datorer, språk , databaser och hanteringssystem, för att stödja ett fjärråtkomstsystem som utvecklas på Ericsson. Samma år, efter kollapsen av ett annat gigantiskt C++ -baserat projekt, beordrades Open System att ge support när det startade om från början med Erlang . Resultatet blev det mycket framgångsrika AXD301-systemet, en ny ATM-växel , som tillkännagavs 1998. Open System-systemet fick senare namnet Open Telecom Platform (OTP) när den första prototypen levererades i maj 1996. OTP har också blivit en specifik produktenhet inom Ericsson sedan dess tillhandahåller ledning, stöd och vidareutveckling.

De tidiga OTP-systemkomponenterna 1998:

  • Distribuerad applikationshantering
  • SASL - felloggning, releasehantering
  • OS resursövervakning
  • EVA - protokolloberoende händelse/larmhantering
  • Mnesia - aktiv datareplikering i realtid
  • SNMP - gränssnitt för drift och underhåll
  • INETS - enkelt HTTP-stöd

Ett viktigt delsystem i OTP är System Architecture Support Libraries (SASL), som gav ett ramverk för att skriva applikationer. Den tidiga versionen av SASL gav:

  • Uppstartsskript
  • Ett applikationskoncept
  • Beteenden (designmönster)
  • Felhantering
  • Felsökning
  • Programvaruuppgradering på hög nivå under körning utan avstängning

Beteendena ger programmerare ännu högre abstraktioner för effektiv programdesign. Den tidiga versionen innehöll:

OTP-komponenter

OTP-komponenterna kan delas in i sex kategorier:

  • Grundläggande applikationer - Grundläggande Erlang/OTP-funktionalitet.
    • Kompilator En kompilator för Erlang-moduler.
    • Kärnfunktionalitet som krävs för att köra Erlang/OTP själv.
    • SASL (System Architecture Support Libraries) En uppsättning verktyg för kodbyte och larmhantering mm.
    • Stdlib Standardbiblioteket.
  • Drift och underhåll - OAM både av systemet utvecklat av användaren och av Erlang/OTP själv.
    • EVA En multifunktionell händelse- och larmhanterare.
    • OS_Mon En monitor som tillåter inspektion av det underliggande operativsystemet.
    • SNMP SNMP-stöd inklusive en MIB-kompilator och verktyg för att skapa SNMP-agenter.
  • Gränssnitt och kommunikation - Stöd för interoperabilitet och protokoll.
    • Asn1 Stöd för ASN.1.
    • Comet Ett bibliotek som gör det möjligt för Erlang/OTP att anropa COM-objekt på Windows
    • Stöd för kryptokryptering
    • Erl_Interface Lågnivågränssnitt till C.
    • GS Ett grafiksystem som används för att skriva plattformsoberoende användargränssnitt.
    • Inets En uppsättning tjänster som en webbserver och en FTP-klient.
    • Jinterface Lågnivågränssnitt till Java.
    • SSL Secure Socket Layer (SSL), gränssnitt till UNIX BSD-sockets
  • Databashantering.
    • QLC Query-språkstöd för Mnesia DBMS.
    • Mnesia En kraftig realtidsdistribuerad databas.
    • ODBC ODBC databasgränssnitt.
  • CORBA-tjänster och IDL-kompilator.
    • cosEvent Orber OMG Event Service.
    • cosNotification Orber OMG Notification Service.
    • cosTime Orber OMG Timer och TimerEvent Services.
    • cosTransactions Orber OMG Transaction Service.
    • IC IDL-kompilator
    • Orber En CORBA-objektförfråganmäklare.
  • Verktyg.
    • Appmon Ett verktyg som används för att visa OTP-applikationer.
    • Debugger För felsökning och testning av Erlang-program.
    • Parsetverktyg En uppsättning verktyg för analys och lexikal analys.
    • Pman En processledare som används för att inspektera tillståndet för ett Erlang/OTP-system.
    • Runtime_Tools Verktyg att inkludera i ett produktionssystem.
    • Verktygsfält Ett verktygsfält som förenklar åtkomsten till Erlang/OTP-verktygen.
    • Verktyg En uppsättning programmeringsverktyg inklusive en täckningsanalysator etc.
    • TV En grafisk tabellvisualiserare för ETS och Mnesia.

Applikationer i OTP

Från och med OTP 18.2 ingår följande applikationer i Erlang/OTP-distributionen:

  • asn1
  • vanligt_test
  • kompilator
  • cosEvent
  • cosEventDomain
  • cosFileTransfer
  • cosNotifikation
  • cosProperty
  • cosTime
  • cosTransaktioner
  • krypto
  • felsökare
  • dialysator
  • diameter
  • edoc
  • eldap
  • erl_docgen
  • erl_interface
  • erts
  • et
  • eunit
  • gs
  • hipe
  • ic
  • inets

Se även