• Ei tuloksia

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/.