Tietokonejärjestelmät yleensä ja moniprosessorijärjestelmät erityisesti koostuvat usein monesta samanlaisesta tai
samantapaisesta alijärjestelmästä, jotka voidaan toteuttaa samoin tai samanlaisin osin. Näiden osien toiminta ei aina ole itsenäistä, vaan tarvitsee keskinäistä synkronointia.
Petri-verkot ovat hyvä väline mallitettaessa rinnakkaisten järjestelmien ohjausta, mutta toiminnallisten osien samankal
taisuutta ei voida hyödyntää tehokkaasti. Tämä haitta voidaan välttää sellaisella muunnetulla formalismilla, jossa samanta
paiset verkon osat voidaan yhdistää sovittujen sääntöjen mu
kaisesti päällekkäin. Seuraavassa esitetään eräs tällainen formalismi ensin yleisessä muodossaan, ja tämän jälkeen eri
koistapauksena edelleen tiivistetyssä muodossa. Tiivistetylle muodolle ei esitetä formaalia määritelmää, koska se halutaan käsittää vain piirrosteknillisenä muunnoksena tavallisista Petri-verkoista. Muunnosalgoritmi tavallisiin Petri-verkkoi
hin esitetään.
Lokaliteetti Petri-verkko on kuusikko LPLÎ= ( P, T, L, I, О, M0 ) , jossa
р = [P, , Р2 , . . ., pj ; Т = {t, , tj_ » • • • » t«] ? L = , Ljl « • • • » lg) *
I : PxTxL'-'* N ; O : PxTxL^N
Me : PXL^ N ;
paikkojen joukko siirtymien joukko lokaliteettien joukko syöttöfunktio
tulostusfunktio alkumerkintä Siirtymä tj on virittynyt jos ja vain jos
v<V Vlk : Жрг1к> il(Pl.tj.lk>
Virittyneen siirtymän tj laukeamisesta merkinnässä M syntyy uusi merkintä M' siten, että :
Vp., VI k M'(p.,lk) =M(p.,lk) -Oip-.tj ,lk) - Kp-.tj ,ik)
LPM on turvallinen, jos siirtymä tj ei laukea, kun : s
3p. : ^(M<p.AK> ♦ 0<p. #t j »lk> - I(p.,t.,lk>) >1
-Myöhemmissä malleissa tarkastellaan vain turvallisia verkkoja.
-LPN on Petri-verkon laajennus siten, että jos /l/=1 niin LPN=PN.
Jatkossa ei algebrallista notaatiota enää käytetä. Tarkoitus oli lähinnä tuoda esille kuvauksen täsmällisyys. Tässä yhtey
dessä on lisäksi syytä korostaa , että vastaaville notaatioil
le on kehitetty erittäin runsaasti analyyttisiä tuloksia, joiden soveltaminen ei tuota mitään teoreettisia vaikeuksia.
Teknillisen korkeakoulun Digitaalitekniikan laboratoriossa on lisäksi parhaillaan kehitteillä analyyttisiä välineitä Petri- verkko jen tutkimiseen. Tulokset ovat helposti sovellettavissa
myöhemmin esiteltävien mallien formaaliin analysointiin. Tämä on ollut eräs päätavoitteita notaatiota kehiteltäessä.
Kuvassa 7 on esimerkkki eräästä yleisestä LPN-verkosta. Kaa
riin liitetyt numerot vastaavat lokaliteetteja, ja merkkejä vastaavat lokaliteettimerkinnällä varustetut ympyrät. Laukea- misehtojen mukaisesti voi esimerkiksi alaoikealla oleva
siirtymä laueta. Merkin lokaliteetti vaihtuu ykköseksi ja seuraavaan paikkaan tulee näin kaksi ykköstä. Jos toinen näistä laukaisee ylemmän kahdesta mahdollisesta siirtymästä, tulee tulostuspaikkaan kakkosen lisäksi kolmonen ja seuraava siirtymä virittyy jne.
Kuva 7 esimerkki yleisestä LPN-verkosta
Sekä yleinen että turvallinen LPN on helppo muuntaa vastaa
vaksi Petri-verkoksi. Sellaisissa sovellutuksissa , joissa paikallisuudella on suuri merkitys saadaan LPN-verkkojen käytöllä huomattavasti tiiviimpiä kuvauksia. Yksinkertainen muunnosformalismi on kuitenkin tärkeä, jotta säilytetään Petri-verkkojen analyyttiset ominaisuudet.
4.4 ALPN-verkko
ASMOS-käyttöjärjestelmän ja uC*: n tapauksessa ei tarvita kuin kaksi eri lokaliteettityyppiä, paikallinen tietylle prosesso
rille tai yhteinen. LPN sinänsä tarjoaa mahdollisuudet huomat
tavasti monipuolisempaan saantioikeuksien kuvaukseen. Symmet—
risyydestä on kuitenkin hyötyä, ja kuvausformalismia voidaan edelleen tiivistää. Kuvassa 8 on eräs Petri—verkko kuvattuna LPN-formalismi11a ja ALPN-formalismi11a, jossa Petri-verkko- jen symmetrisyys voidaan useissa tapauksissa hyödyntää vielä tarkemmin. Mitään yksinkertaista tapaa edetä LPN-kuvauksesta ALPM—kuvaukseen ei ole mielekästä esittää. Molemman kuvaus
tavat ovat mielekkäimmin määriteltävissä esitettäessä muun
nokset takaisin tavalliseen Petri-verkkoon. LPN-muunnos on ilmeinen algebrallisen esityksen pohjalta, seuraavaksi tar
kastellaan ALPN-kuvauksen muuntamista takaisin Petri-ver- koksi. Kuvassa 8 on sekä tavallisia paikkoja että kahdella viivalla piirrettyjä ympyröitä. Edellisistä käytetään jatkos
sa nimitystä tavallinen paikka ja jälkimmäisistä monitasoinen paikka.
Kuva 8 Samaa Petri-verkkoa vastaavat LPN- ja ALPN-kuvaukset.
verkko saadaan piirtämällä useita vastaavia tasoja ja yhdistelemällä näitä. Numerointi poistetaan.
Selkein tapa laajentaa ALPN-verkko (Abbreviated Locality Pet
ri Net) Petri-verkoksi on piirtää samanlaiset erilliset ver
kot, niinkutsutut tasot, vastaamaan jokaista lokaliteettia♦
Numeroidut kaaret jätetään kuitenkin piirtämättä. Tämän jäl
keen yhdistetään eri tasoilla vastaavat tavalliset paikat toi siinsa ja poistetaan kerrannaiset siirtymät. Numeroidut kaa
ret lisätään vielä numeron osoittamalla tasolla sijaitsevan vastaavan paikan ja kaikilla tasoilla sijaitsevien vastaavien siirtymien välille.
Alkumerkintä osoitetaan pienillä ympyröillä, joiden sisään lokaliteetti on merkitty. Jos lokaliteetin kohdalle on merkit ty "x", on kyseessä merkki joka tasolla. Turvallinen verkko edellyttää, että monitasoisissa paikoissa voi olla vain yksi merkki kutakin tasoa kohden. Tavallisissa paikoissa voi täl
löin olla vain yksi merkki ja useimmiten lokaliteetin merkit seminen on turhaa. Lokaliteetti on näissä paikoissa useimmi
ten vakio tai tilanne on muuten symmetrinen muiden tasojen kanssa. Muutoin ei ALPN-verkkoa piirrettäessä voida tavalli
seen paikkaan tulevien tai lähtevien kaarten numerointia
jättää pois. Jätettäessä lokaliteetti pois käytetään merkkinä pistettä.
Kuva 9 Siirtymän laukeaminen ALPN-verkossa
Kuva 9 havainnollistaa ALPN-verkon suoritusta. Monitasoiset paikat virittävät siirtymän vain, milloin syöttöpaikkojen
merkit ovat samalla tasolla. Numeroidut kaaret käyttäytyvät kuitenkin kuten LPN-verkossa muuttamalla syöttopaikan ja vas
taavasti myös tulostuspaikan tasoa. Kuvassa on siirtymällä tarvittava syöttömerkintä tasoilla 2 ja 3, mutta turvallisessa verkossa vain tasolla 3 voi laukeaminen tapahtua. Muutoin tu
lisi paikkaan alava seminal la kaksi merkkiä tasolle 2.
Yksinkertaisen numeroinnin lisäksi kaarilla voidaan käyttää relaatioita. Tällä tavoin voidaan formalismilla kätevästi mallittaa esimerkiksi rekursiivista laskentaa. Rekursiivista kutsua vastaavalle kaarelle laitetaan numeroinniksi -1, joka osoitta, että tulostus tapahtuu yhtä alemmalle tasolle kuin syöttö. Paluukutsua vastaavalle kaarelle taasen asetetaan nu
meroinniksi +1 jolloin paluu tapahtuu yhtä ylemmälle tasol
le. Tasojen loppuessa ei kaaria ole.
Rekursiota on yritetty useilla tahoilla mallittaa Petri-verk- kojen avulla. Mallit eivät ole olleet formaalisti analysoita
vissa. Tämä on toisaalta luonnollista, koska rekursion mallit
taminen luonteeltaan edellyttää äärettömiä verkkoja. Ei kui
tenkaan ole otettu huomioon, että käytännön tehtävissä tieto
koneet ovat aina rajallisia ja olisi vain hyödyllistä kyetä rajaamaan mallissakin rekursiotasojen tai pinon koko. Edellä esitetyllä tavalla rekursiota mallitettaessa saavutetaan kahtaallista etua. Mallitus on yksinkertaista ja jos mallia halutaan analyyttisesti tutkia, voidaan (on pakko) asettaa pinon koolle äärellinen raja. Tarkemmin ei rekursiota tässä tarkastella, koska se ei jatkon kannalta ole välttämätöntä.
Laajemmin Petri-verkkojen yleistyksiä on käsitelty Petrin omassa koulukunnassa Saksan Liittotasavallassa /31/.