Standarder

GOPAs runtime kører direkte på PC-ens hardware/BIOS platform, d.v.s. det grundlag
på hvilket såvel andre realtids-systemer, som egentlige operativsystemer som Linux
og diverse Windows-versioner kører. Takket være den stigende interesse for åbne
standarder som f.ex. Linux, er denne standard blevet endnu mere veldefineret end
tidligere. I virkeligheden begyndte denne standardisering og åbenhed omkring processor
og motherboard nogle år før, folk for alvor begyndte at snakke om Linux. Nogle af de
vigtigste aktører bør nævnes her:

Processor og motherboard

Intel
Intel har i årevis lagt detalierede beskrivelser af deres CPU-er ud på nettet. Åbenheden
gælder ikke kun CPU-en men også de chips, som udgør CPU-ens nærmeste omgivelser.
Disse specifikationer bliver mere eller mindre de-facto standarder for de øvrige
chip-fabrikanter. F.ex. er CPUen i den PC, med hvilken denne tekst er skrevet, ikke en
Pentium-2 fra Intel men en AMD K6-2 fra “Advanced Micro Devices inc.”.
Det chipset som udgør CPU-ens nærmeste omgivelser er heller ikke fra Intel men fra
“Acer Laboratories inc.”I forhold til Intel er GOPAs runtime tjekket til og med Pentium-4,
samt Intels nyeste publikation fra 2002: “IA-32 Intel Architecture Software Developer’s
Manual, Volumen 3: System programmers guide”. Filen hedder “24547209.PDF” og kan
gratis downloades fra Intels hjemmeside her.

PCI-SIG
PCI-SIG står for “PCI Special Interest Group” og er en leverandør-uafhængig organisation,
hvis oprindelige formål var at varetage PCI (Peripheral Component Interconnect) bus
standarden. PCI-bussen er de fleste PC-ejere bekendt, og må betragtes som ISA-bussens
afløser. I princippet skulle PCI-SIG, i forhold til PC-ens motherboard, kun beskæftige sig
med de dele, som var direkte relevante for PCI-bussen. I praksis er det blevet til meget
mere end det. Fordi PCI-bussen (og især den af Intel introducerede udvidelse: AGP) spiller
så tæt sammen med CPU-ens nærmeste omgivelser, er PCI-SIG i realiteten også blevet
“standard-administrator” for CPU-ens nærmeste omgivelser. Enhver motherboard
leverandør, som leverer sit motherboard med “PCI-BIOS”, kommer til at overholde disse
standarder. GOPAs runtime er kontrolleret i forhold til nyeste specifikation (ver. 2.3 fra
29-03-2002, som afløser ver. 2.2 fra 18-12-1998). Eksempler på GOPA-supporterede
PCI-kort er: MOXA 8 port RS232 multiport kort, Siemens Profibus CP 5613 kommunikationskort
og Nvidia baserede skærmkort til AGP (fra 1998 og nyere).

Mere om PCI-SIG.

32 og 16 bit versionerne
Den oprindelige version, der kom ud at køre i 1996 var 16-bit, men var på mange måder
forberedt for 32-bit. I 2000 startede udviklingen af 32-bit versionen, som gav en række
nye muligheder.  Først og fremmest mere plads, højere grafisk opløsning og lettere tilpasning til nyere hardwarestandarder.
Men vel at mærke på en måde, så gamle 16-bitapplikationer relativt smertefrit kan op-
graderes til at køre under den nye kerne.
På den måde, bliver det i et vist omfang muligt at kompensere for det forhold, at indu-
striløsninger typisk har levetider, der er 2-3 gange længere end de kontorsystemer, der
traditionelt har drevet PC-udviklingen. Den rene 16-bit version er dog fortsat “levende”
– særlig med henblik på mulig anvendelse til små embeddede PC-er.

32 bit runtime er Open Source
32-bit versionen, som første gang kom ud at køre i 2005, tager udgangspunkt i bagud-
kompatibilitet, men retter sig udviklingsmæssigt mod etablerede standarder for 32/64-bit
– først og fremmest Linux. Derfor er runtime delen af både tekniske og juridiske grunde
gjort til Open Source.

Mere om 32 bit runtime

Andet udstyr

Og alligevel, Linux
Hvor standardisering omkring processor og motherboard skete for en del år siden, var
det langtfra tilfældet for andre typer udstyrs vedkommende. For 4-5 år siden var det
regelen snarere end undtagelsen, at man ikke kunne få noget at vide om f.ex. et
indstikskort til en PC. Man kunne få udleveret en devicedriver til en Windows-version
(ofte kun 16-bit win95 eller 98), og måske en MS-DOS driver.
Det er helt klart takket være Linux (og den support af Linux en række af de største
leverandører i branchen har meldt ud med) at det i dag er anderledes. For de fleste
produkter, især de industri-relevante, kan man i dag enten downloade fra nettet
(eller hente fra CD som følger med produktet) “Open Source” devicedrivere, som
dels kan bruges direkte af Linux-brugere, dels indeholder al den viden om kortet,
som programmøren har brug for, til et hvilket som helst miljø.

Det er ikke uden grund, at al fremadrettet udvikling på GOPA-siden i første omgang
sigter mod Linux. Når man har adgang til kildeteksten er der, i forhold til kunden,
INGEN undskyldning for ikke at få det til at virke på en driftssikker måde (hvis ellers
kortet virker). Desuden er Linux den hurtigst voksende platform for industri-relaterede
applikationer, og den modulære opbygning passer godt til GOPA.

Fordelen ved, på sigt, at få GOPA til at spille sammen med et andet operativsystem
(Linux), er muligheden for at køre administrative programmer i baggrunden, f.ex.
regneark, tekstbehandling, eksterne databaser, internet-browser o.lign. Disse
programmer kan være skrevet til enten Linux eller 32-bit Windows. Det bliver dog et
ultimativt krav fra vores side, at ingen fejl fra disse programmers side, på mindste måde
må kunne forstyrre funktionen af hverken fabriksstyring eller betjening af denne.

Tekniske detaljer om GOPA
At køre direkte på hardware/BIOS laget er en nødvendig, men ikke tilstrækkelig
betingelse for at sikre stabiliteten. Teknisk interesserede med solidt kendskab
til compilere og operativsystemer, kan få yderligere oplysninger her:

Tekniske detaljer om Gopa