This HTML5 document contains 96 embedded RDF statements represented using HTML+Microdata notation.

The embedded RDF content will be recognized by any processor of HTML5 Microdata.

Namespace Prefixes

PrefixIRI
dctermshttp://purl.org/dc/terms/
yago-reshttp://yago-knowledge.org/resource/
dbohttp://dbpedia.org/ontology/
foafhttp://xmlns.com/foaf/0.1/
n12http://dbpedia.org/resource/File:
n22https://global.dbpedia.org/id/
dbpedia-hehttp://he.dbpedia.org/resource/
yagohttp://dbpedia.org/class/yago/
schemahttp://schema.org/
dbthttp://dbpedia.org/resource/Template:
rdfshttp://www.w3.org/2000/01/rdf-schema#
dbpedia-svhttp://sv.dbpedia.org/resource/
freebasehttp://rdf.freebase.com/ns/
dbpedia-plhttp://pl.dbpedia.org/resource/
dbpedia-nohttp://no.dbpedia.org/resource/
n20http://commons.wikimedia.org/wiki/Special:FilePath/
rdfhttp://www.w3.org/1999/02/22-rdf-syntax-ns#
owlhttp://www.w3.org/2002/07/owl#
wikipedia-enhttp://en.wikipedia.org/wiki/
dbphttp://dbpedia.org/property/
dbchttp://dbpedia.org/resource/Category:
provhttp://www.w3.org/ns/prov#
xsdhhttp://www.w3.org/2001/XMLSchema#
goldhttp://purl.org/linguistics/gold/
wikidatahttp://www.wikidata.org/entity/
dbrhttp://dbpedia.org/resource/

Statements

Subject Item
dbr:List_of_programming_languages
dbo:wikiPageWikiLink
dbr:PLEX_(programming_language)
Subject Item
dbr:Programming_Language_for_EXchanges
dbo:wikiPageWikiLink
dbr:PLEX_(programming_language)
dbo:wikiPageRedirects
dbr:PLEX_(programming_language)
Subject Item
dbr:PLEX
dbo:wikiPageWikiLink
dbr:PLEX_(programming_language)
dbo:wikiPageDisambiguates
dbr:PLEX_(programming_language)
Subject Item
dbr:PLEX_(programming_language)
rdf:type
dbo:ProgrammingLanguage yago:Abstraction100002137 dbo:Language yago:WikicatProgrammingLanguagesCreatedInThe1970s wikidata:Q9143 yago:Language106282651 owl:Thing wikidata:Q315 schema:Language yago:Communication100033020 yago:ProgrammingLanguage106898352 yago:ArtificialLanguage106894544 yago:WikicatProgrammingLanguages
rdfs:label
PLEX (programming language) PLEX PLEX
rdfs:comment
Programming Language for Exchanges (PLEX), ett Ericsson-utvecklat Pascal-liknande språk för att skriva applikationer som exekverar i AXEs processorer. Plex, som utvecklades under 1970-talet, finns i två varianter, Plex-C för Centralprocessorn, CP, Plex-M för de regionala processorerna, RP. PLEX (Programming Language for EXchanges) is a special-purpose, concurrent, real-time programming language. The proprietary PLEX language is closely tied to the architecture of Ericsson's AXE telephone exchanges which it was designed to control. PLEX was developed by Göran Hemdahl at Ericsson in the 1970s, and it has been continuously evolving since then. PLEX was described in 2008 as "a cross between Fortran and a macro assembler." The language has two variants: Plex-C used for the AXE Central Processor (CP) and Plex-M used for Extension Module Regional Processors (EMRP). PLEX (ang. Programming Language for EXchanges) – strukturalny język wysokiego poziomu opracowany w Ericssonie. Służy do programowania central telefonicznych. Jest rozwijany od lat 70. XX wieku. Używany w centralach telefonicznych AXE Ericssona. Występuje w dwóch odmianach. Na procesorach centralnych (Central Processor - CP) AXE wykorzystywana jest odmiana języka o nazwie Plex-C. Natomiast w modułach rozszerzeń EMRP 8-bitowa wersja Plex-M. Projektantem języka był Göran Hemdahl.
foaf:name
Plex
dbp:name
Plex
foaf:depiction
n20:Mobile_Switching_Centre-Ericsson_AXE.jpg
dcterms:subject
dbc:Concurrent_programming_languages dbc:Programming_languages_created_in_the_1970s dbc:Domain-specific_programming_languages dbc:Ericsson
dbo:wikiPageID
21866469
dbo:wikiPageRevisionID
1102617166
dbo:wikiPageWikiLink
dbr:Proprietary_software dbr:Erlang_(programming_language) dbc:Concurrent_programming_languages dbr:Microprocessor dbr:Microcode n12:Mobile_Switching_Centre-Ericsson_AXE.jpg dbr:Joe_Armstrong_(programmer) dbr:Programming_language dbc:Programming_languages_created_in_the_1970s dbr:Precompiler dbr:Specification_and_Description_Language dbr:Procedural_programming dbr:Source_code dbc:Domain-specific_programming_languages dbr:High-level_programming_language dbr:Machine_code dbr:Fortran dbr:Database dbr:Imperative_programming dbc:Ericsson dbr:Ericsson dbr:AXE_telephone_exchange dbr:Assembly_language dbr:Just-in-time_compilation
owl:sameAs
freebase:m.05p2tnh dbpedia-no:PLEX_(programmeringsspråk) yago-res:PLEX_(programming_language) wikidata:Q7119636 dbpedia-he:PLEX n22:4sjtU dbpedia-pl:PLEX dbpedia-sv:PLEX
dbp:wikiPageUsesTemplate
dbt:Compu-lang-stub dbt:Unreferenced_section dbt:Reflist dbt:Infobox_programming_language
dbo:thumbnail
n20:Mobile_Switching_Centre-Ericsson_AXE.jpg?width=300
dbp:developer
Göran Hemdahl
dbp:influenced
dbr:Erlang_(programming_language)
dbp:license
dbr:Proprietary_software
dbp:operatingSystem
Ericsson APZ
dbp:paradigm
procedural, imperative, concurrent
dbp:released
1970.0
dbo:abstract
PLEX (ang. Programming Language for EXchanges) – strukturalny język wysokiego poziomu opracowany w Ericssonie. Służy do programowania central telefonicznych. Jest rozwijany od lat 70. XX wieku. Używany w centralach telefonicznych AXE Ericssona. Występuje w dwóch odmianach. Na procesorach centralnych (Central Processor - CP) AXE wykorzystywana jest odmiana języka o nazwie Plex-C. Natomiast w modułach rozszerzeń EMRP 8-bitowa wersja Plex-M. Projektantem języka był Göran Hemdahl. Programy w PLEX-ie wykonywane są jako pewna liczba współbieżnych zadań, komunikujących się między sobą za pomocą zdarzeń nazywanych sygnałami. W rzeczywistości współbieżność ta jest pozorna. Zadania umieszczane są w jednej z czterech kolejek, o zróżnicowanym priorytecie i wykonywane . Sygnały za pomocą których komunikują się zadania mogą być bezpośrednie lub buforowane. Sygnał bezpośredni można porównać do instrukcji skoku. Sygnały buforowane powodują utworzenie nowego zadania i umieszczenie go w kolejce. Sygnały można też podzielić, na pojedyncze (single) i łączone (combined). Sygnał łączony rozpoczyna zadanie, po wykonaniu którego sterowanie powraca do miejsca wywołania sygnału. Język PLEX wbrew pozorom jest językiem dość niskiego poziomu i nie posiada mechanizmów zabezpieczających "system operacyjny" przed nieprawidłowo skonstruowanym oprogramowaniem. Stąd też na programiście spoczywa ciężar odpowiedzialności za pisanie kodu w zgodzie z wytycznymi producenta (opisanymi szczegółowo w dokumencie Design Rules). Istnieje wiele reguł z których najważniejszą jest nieprzekraczanie maksymalnego czasu obsługi pojedynczego sygnału (liczonego w instrukcjach kodu maszynowego) na danym poziomie wykonania (A, B, C, D). Przekroczenie maksymalnego czasu powoduje wymuszenie restartu centrali, co wiąże się z obniżeniem dostępności i jakości oferowanych usług. Wykonanie dłuższej sekwencji (np. budowanie tzw. Idle List w różnych blokach funkcjonalnych) musi być co pewien czas przerywane wysyłaniem sygnału CONTINUE, co umożliwia obsługę pozostałych sygnałów w kolejce. Drugą co do istotności regułą jest nieprzekraczanie maksymalnej ilości sygnałów wysłanych podczas obsługi pojedynczego sygnału przychodzącego. Naruszenie tej reguły może doprowadzić do przepełnienia kolejki sygnałów, co z kolei również prowadzi do restartu. Tego typu błąd jest trudny do wyśledzenia, gdyż występuje zwykle podczas silnego obciążenia centrali, a z faktu przepełnienia kolejki trudno jest wprost wywnioskować który blok został źle napisany. Ciekawą cechą języka (wspieraną sprzętowo przez procesor centralny, CP) jest zdolność do kontrolowanego zwalniania zasobów w sytuacjach wyjątkowych, bez konieczności restartu centrali, tzw. FORLOPP (szw. förlopp -- przebieg zdarzeń). Procesor posiada specjalny rejestr FIR (Forlopp Register), który przechowuje identyfikator bieżącego "wątku" wykonania. Znacznik ten jest propagowany poprzez sygnały do wszystkich bloków programowych biorących udział w danej funkcjonalności. W każdym z bloków, alokowane zasoby są znakowane bieżącą zawartością rejestru FIR. Jeśli którykolwiek z bloków wykryje nieprawidłowy stan wykonania (np. otrzyma sygnał którego nie oczekiwał), może wywołać funkcję FLERROR, która stworzy loga przydatnego w trouble-shootingu, zawierającego ostatnie sygnały wysyłane w danym wątku oraz wszystkie dane powiązane z tym wątkiem. Aplikacja może też uruchomić sama procedurę anulowania "wątku" i zwalniania wszystkich zasobów z nim powiązanych (FLRELEASE) lub w przypadku błędu krytycznego (typu użycie "Null pointera") sam system automatycznie uruchamia tę procedurę. Dzięki temu, nie każda błędna sytuacja musi skończyć się restartem całego systemu, a jedynie selektywnym zwolnieniem zasobów. Inną odmianą kontroli wykonania wątku jest kontrola czasu wykonania zadania (nie należy mylić z czasem obsługi pojedynczego sygnału). Przykładem mogą być komendy wydawane przez operatora centrali. Funkcja FLAUDITSTART, znajdująca się na początku kodu obsługującego daną komendę, inicjuje monitorowanie czasu wykonania zadania (tu komendy operatora). Jeśli wykonanie potrwa dłużej niż podany czas maksymalny, dojdzie do automatycznego wygenerowania błędu TIMEOUT AT FLAUDIT i zwolnienia zasobów (FLRELEASE). Ponieważ niektóre komendy mogą mieć bardzo zróżnicowany czas wykonania, istnieje możliwość programowego zwiększenia limitu czasu (funkcja FLAUDITEXTEND), jeśli przetwarzanie komendy tego wymaga. W przypadku pomyślnego zakończenia wykonania zadania, monitorowanie jest wyłączane funkcją FLAUDITSTOP. Obsługą funkcjonalności FORLOPP zajmuje się blok Forlopp Manager (MFM). PLEX (Programming Language for EXchanges) is a special-purpose, concurrent, real-time programming language. The proprietary PLEX language is closely tied to the architecture of Ericsson's AXE telephone exchanges which it was designed to control. PLEX was developed by Göran Hemdahl at Ericsson in the 1970s, and it has been continuously evolving since then. PLEX was described in 2008 as "a cross between Fortran and a macro assembler." The language has two variants: Plex-C used for the AXE Central Processor (CP) and Plex-M used for Extension Module Regional Processors (EMRP). Ericsson started a project in the mid-1980s to create a successor language which resulted in Erlang. According to co-creator Joe Armstrong, "Erlang was heavily influenced by PLEX and the AXE design." Erlang did not replace PLEX, but was used alongside it. Programming Language for Exchanges (PLEX), ett Ericsson-utvecklat Pascal-liknande språk för att skriva applikationer som exekverar i AXEs processorer. Plex, som utvecklades under 1970-talet, finns i två varianter, Plex-C för Centralprocessorn, CP, Plex-M för de regionala processorerna, RP.
dbp:dialects
Plex-C, Plex-M
gold:hypernym
dbr:Language
prov:wasDerivedFrom
wikipedia-en:PLEX_(programming_language)?oldid=1102617166&ns=0
dbo:wikiPageLength
4283
dbo:influenced
dbr:Erlang_(programming_language)
dbo:license
dbr:Proprietary_software
foaf:isPrimaryTopicOf
wikipedia-en:PLEX_(programming_language)
Subject Item
dbr:CHILL
dbo:wikiPageWikiLink
dbr:PLEX_(programming_language)
Subject Item
dbr:Erlang_(programming_language)
dbo:wikiPageWikiLink
dbr:PLEX_(programming_language)
dbp:influencedBy
dbr:PLEX_(programming_language)
dbo:influencedBy
dbr:PLEX_(programming_language)
Subject Item
dbr:Ivar_Jacobson
dbo:wikiPageWikiLink
dbr:PLEX_(programming_language)
Subject Item
dbr:AXE_telephone_exchange
dbo:wikiPageWikiLink
dbr:PLEX_(programming_language)
Subject Item
dbr:Plex_(company)
owl:differentFrom
dbr:PLEX_(programming_language)
Subject Item
dbr:Greek_wiretapping_case_2004–05
dbo:wikiPageWikiLink
dbr:PLEX_(programming_language)
Subject Item
wikipedia-en:PLEX_(programming_language)
foaf:primaryTopic
dbr:PLEX_(programming_language)