167446. lajstromszámú szabadalom • Berendezés real time üzemmódban, különböző prioritási szinteken dolgozó folyamatirányító számítógép rendellenes programvégrehajtásának jelzésére
3 167446 4 a számítógép program ír be. Ezáltal az is lehetővé válik, hogy megálláskor megkapjuk a programvégrehajtás állapotát oly módon, hogy a többi számláló léptetését letiltjuk. A találmánnyal elérni kívánt egyik célunk tehát 5 az, hogy rendellenes feltételek fellépését jelezzük a programvégrehajtás során, valamint a számítógép maximális hozzáférhető adatátviteli kapacitásának kihasználását biztosítsuk azáltal, hogy kiiktatjuk az ellenőrzetlen program lengést. Ilyen program lengés 10 bekövetkezhet a számítógép által vezérelt hírközlő rendszerben annak hatására, hogy időkülönbségek állnak elő a rendszerben, különböző időigényű programok behívásakor és végrehajtásakor. A találmánnyal további célunk az volt, hogy 15 automatikusan fellépő jelet biztosítsunk, amikor olyan vezérlő programok behívása válik szükségessé, amelyek megszüntetik a rendszerben a rendellenességek okozta üzemzavart, hogy a számítógép teljes leállása elkerülhetővé váljék. 20 A találmányt a továbbiakban részletesebben ismertetjük a mellékelt rajzok alapján, ahol az 1. ábrán egy primer intervallum vázlatos idődiagramját láthatjuk, amely intervallumon belül 25 különböző prioritási szintű programok végrehajtása folyik, a 2. ábra egy prioritási szint vázlatos idődiagramját mutatja a primer intervallumon belül, valamint ezen intervallum tetszőleges programrészét, a 30 3. ábra a találmány szerinti berendezés kiviteli alakjának tömbvázlatát szemlélteti. Az 1. ábra a három különböző prioritási (program) szint sematikus idődiagramja tetszőlegesen 35 választott Tp primer intervallumon belül, ahol minden egyes szint kezelésére rendre sor kerül a tA, tB és tC intervallumokban. A különböző szintek kezelése előre megválasztott bináris számértékek beolvasásával kezdődik, amelyek egy regisz- 40 térben vannak, és amelyek az egyes szintekhez vannak hozzárendelve, amint azt a 3. ábra kapcsán ismertetni fogjuk. Az egyes intervallumokon belül a Pal-Pan, Pbl-Pbn, Pcl-Pcn programok kerülnek behívásra a primer intervallumban a nekik meg- 45 felelő prioritási szinten. Az egyes programoknak tal-tan, tbl-tbn, tcl-tcn végrehajtási ideje van. A Pal-Pan programok prioritása a legmagasabb, következésképp ezek a programok kerülnek először végrehajtásra a prioritási A szinten belül. Ezután a 50 Pbl-Pbn programok következnek a B szinten, majd a Pcl-Pcn programok a C szinten. Az 1. ábra hivatott illusztrálni normális program végrehajtás során az állapotokat. Fontos, hogy a különböző programok végre- 55 hajtása azon időn belül történjék, ami minden egyes program számára elő van írva azért, hogy elkerüljük más programok késleltetését, illetve eltolódását. A találmány szerint minden egyes prioritási szinten az összes program kezelési összidejét 60 mérjük, valamint azt az időt, ami legalább néhány program végrehajtásához szükséges azon a szinten, így bizonyos időkorlátokkal már rendelkezünk, amelyek túllépése magával hozza azt, hogy intézkedéseket kell tenni. A 2. ábrán valamelyik priori- 65 tási szint ezen időkorlát értékei láthatók, és valamely önkényesen kiválasztott programrészt ezen a szinten mutatunk meg részletesebben. A prioritási szint to időtartama jelzi az első időkorlátot, amikor indikációt (figyelmeztetőjel) normális1 üzemben is kell, hogy kapjunk, és tp időtartam jelzi a második időkorlátot, amikor a program végrehajtás határozott megállítását kell jelezni (vészjel), így azonnali közbeavatkozás szükséges. Hasonlóképpen, valamely tetszőleges Pax programrész tox és tpx időtartamai az adott szinten definiálják a rendellenes működést és a teljes leállást jelző időtartamokat a programvégrehajtás során. Elégséges a rendellenes működés esetén csupán a tox időtartam elteltét jelezni, mivel a programvégrehajtás során a teljes leállást a prioritási szint ellenőrzése szolgáltatja, ahogy azt a 3. ábra ismertetése során alább ismertetjük. A találmány elvének megfelelően mindhárom prioritási A, B, C szinthez egy-egy számlálót vagy óraregisztert rendelünk hozzá, ezek feladata lesz ezen a szinten a programok végrehajtásának ellenőrzése, ezenkívül további egy vagy több számláló tartozik még ehhez a szinthez, amelyek célja a szinten belüli megfelelő programrészek ellenőrzése. A találmány szerinti berendezés részletes ismertetését a 3. ábra alapján végezzük el, ami tömbvázlat formában mutatja a találmány szerinti berendezés egy kiviteli alakját. A rajzon számlálókat és logikai áramköröket tartalmazó NA, NB és NC blokkok rendre a prioritási A, B és C szintekhez tartoznak. Csupán az NA blokkot részletezi az ábra, mivel feltételeztük, hogy a blokkok felépítése hasonló, és csak a szükséges számlálók számában különböznek egymástól. Az NA blokk tartalmaz első RA számlálót, amelynek azt az időt kell mérnie, amikor a számítógép A szinten dolgozik, és egy második RAx számlálót, ami azt az időt méri, amikor a számítógép a kiválasztott Pax programrészt hajtja végre az A szinten (lásd a 2. ábrát). A számlálókat órajel lépteti előre és tartalmuk annak az időnek lesz a mértéke, ami a prioritási A szint kezdetétől, illetve a Pax programrész kezdetétől eltelt. Amikor a prioritási A szinten kezdődik a munka, a számlálók előre lépnek, és ha a programok végrehajtási ideje meghaladja a kívánt értéket, az előre léptetés folytatódik addig a számláló állapotig, amelytől figyelmeztető-, majd vészjel kerül kiadásra. Természetesen a prioritási szint, vagy a programrész kezdésekor lehetséges, hogy w íróvezetéken keresztül a megfelelő számlálóba beírjuk az óraimpulzusok számának kezdő értékét, amennyit a program kezdetétől számlálva a figyelmeztető- és a vészjel megjelenéséig eltelni engedünk, és a számlálót hátrafelé léptetve figyelmeztető-jelet kapunk, amikor a kérdéses számláló egy adott, vagy nulla tartalmat mutat. A figyelmeztető-jelet g kimeneten kapjuk, amikor az RA számláló elérte a megfelelő értéket. A vészjelet az s kimeneten nyerjük az RA számláló megfelelő állapotában. Az sx kimeneten vészjelet kapunk, amikor az RAx számláló a Pax programrész vészjelének megfelelő értéket ért el. Hasonló feladatot ellátó kimenetek tartoznak az NB és az NC blokkokhoz is. Ezek a kimenetek 2