[go: up one dir, main page]

FI98595C - Menetelmä varaprosessin lämmittämiseksi kahdennetussa reaaliaikaisessa järjestelmässä, erityisesti puhelinkeskuksessa - Google Patents

Menetelmä varaprosessin lämmittämiseksi kahdennetussa reaaliaikaisessa järjestelmässä, erityisesti puhelinkeskuksessa Download PDF

Info

Publication number
FI98595C
FI98595C FI943328A FI943328A FI98595C FI 98595 C FI98595 C FI 98595C FI 943328 A FI943328 A FI 943328A FI 943328 A FI943328 A FI 943328A FI 98595 C FI98595 C FI 98595C
Authority
FI
Finland
Prior art keywords
unit
active
backup
control unit
heating
Prior art date
Application number
FI943328A
Other languages
English (en)
Swedish (sv)
Other versions
FI943328A0 (fi
FI98595B (fi
FI943328L (fi
Inventor
Raimo Kantola
Eeva Hartikainen
Original Assignee
Nokia Telecommunications Oy
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nokia Telecommunications Oy filed Critical Nokia Telecommunications Oy
Publication of FI943328A0 publication Critical patent/FI943328A0/fi
Priority to FI943328A priority Critical patent/FI98595C/fi
Priority to DE69515176T priority patent/DE69515176T2/de
Priority to PCT/FI1995/000399 priority patent/WO1996002115A2/en
Priority to JP8504140A priority patent/JP2992349B2/ja
Priority to AU28891/95A priority patent/AU691632B2/en
Priority to US08/782,927 priority patent/US5963634A/en
Priority to AT95924345T priority patent/ATE189930T1/de
Priority to EP95924345A priority patent/EP0770242B1/en
Priority to CN95194601A priority patent/CN1096643C/zh
Publication of FI943328L publication Critical patent/FI943328L/fi
Publication of FI98595B publication Critical patent/FI98595B/fi
Application granted granted Critical
Publication of FI98595C publication Critical patent/FI98595C/fi

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q3/00Selecting arrangements
    • H04Q3/42Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker
    • H04Q3/54Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker in which the logic circuitry controlling the exchange is centralised
    • H04Q3/545Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker in which the logic circuitry controlling the exchange is centralised using a stored programme
    • H04Q3/54541Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker in which the logic circuitry controlling the exchange is centralised using a stored programme using multi-processor systems
    • H04Q3/54558Redundancy, stand-by
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users
    • Y10S707/99953Recoverability
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users
    • Y10S707/99955Archiving or backup

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Hardware Redundancy (AREA)
  • Exchange Systems With Centralized Control (AREA)
  • Multi Processors (AREA)
  • Telephonic Communication Services (AREA)

Description

1 98595
Menetelmä varaprosessin lämmittämiseksi kahdennetussa reaaliaikaisessa järjestelmässä, erityisesti puhelinkeskuksessa 5 Keksinnön kohteena on menetelmä varaprosessin läm mittämiseksi aktiivisen prosessin rinnalle kahdennetussa reaaliaikaisessa järjestelmässä, erityisesti puhelinkeskuksessa, joka järjestelmä käsittää ohjausvälineen, joka käsittää ainakin yhden aktiivisen ohjausyksikön, jolla on 10 jatkuvasti tai tarvittaessa varmistuksena kuumakor-vausperiaatteella toimiva varayksikkö, siten että varayk-sikkö suorittaa rinnakkaisesti samoja prosesseja kuin aktiivinen ohjausyksikkö.
Yleisten puhelinkeskusten ohjausjärjestelmissä on 15 viime aikoina sovellettua hajautettuja tietokonejärjestelmiä. Tällöin puhelinkeskuksen ohjaus hajautetaan usealle tietokoneelle, jotka on kytketty toisiinsa suhteellisen nopealla väylällä tai vastaavalla siirtovälineellä. Tällaisissa puhelinkeskuksissa tai vastaavassa muussa kytken-20 täjärjestelmässä pyritään järjestelmä toiminta varmistamaan kahdentamalla ainakin osa hajautetuista ohjaustietokoneista. Tällöin ohjaustietokoneiden kahdennus tulisi kyetä : suorittamaan tavalla, joka ei kohtuuttomasti kuluta oh- jaustietokoneiden suorituskapasiteettia eikä vaadi kallis- .·.·. 25 ta erikoislaitteistoa. Hajautettujen tietokoneiden kahden- • · makselle puhelinkeskusympäristössä asetettuja vaatimuksia .···. on selostettu artikkelissa "New fault-tolerance design: « · · developments in software system architecture of the Nokia .. DX 200", Raimo Kantola, Discovery, Volume 22, First Quar- • « 2 98595
Mikrosynkronointimenetelmän etuna on sen näkymättömyys sovellusohjelmistolle. Varjopuolena on erikoislaitteiston kalleus ja vaikeus ellei mahdottomuus soveltaa menetelmää tehokkaasti N+l-varmennetuille tietokoneille, varsinkin 5 jos N on vähintään useita kymmeniä. N+l-varmennustavassa N samanlaista tietokonetta suorittaa samantyyppisiä, mutta riippumattomia hyötytehtäviä, käyttäen samoja ohjelmia. Yksi kone on varalla otettavana käyttöön, jos yksi mainituista N:stä -tietokoneesta vikaantuu tai esimerkiksi kun 10 välitysteknisen järjestelmän käyttöjärjestelyt sitä vaativat. Tämän N+l-laitteiston varmennusmenetelmän etuina on sen halpuus ja yhteensopivuus 2N-menetelmän kanssa, sillä erolla, että varakoneen kiinnitys aktiiviselle tietokoneelle on aina tehtävä ennen yksikön vaihtoa.
15 Aikaisemmin on toteutettu myös ratkaisuja, joissa koko ohjauksen varmennettu suoritus on jätetty sovellusohjelman harteille siten, että ohjelman tila-automaatti on sisältänyt tarpeelliset tilasiirtymät varalla olevan tietokoneen pitämiseksi ajan tasalla siinä, mitä aktiivinen 20 tietokone tekee. Tämän kahdennusmenetelmän varjopuolena on se, että sovellus joutuu ratkaisemaan yhtä aikaa kahta ongelmaa: varsinaista tehtäväänsä ja sen varmennusta. Tämä ; : hankaloittaa sovellusohjelmien kehittämistä. Toisena var- jopuolena on se, että tämä kahdennusmenetelmä ei johda • · 25 yhtenäiseen toteutukseen, jolloin sovellusten ylläpito on • · kallista.
‘I'.'.' Aikaisemmin on lisäksi kehitetty varmennukset so- • · · ‘ velluksilta peittäviä menetelmiä, jotka ovat tavoitelleet laskennan oikeellisuutta kaikissa suorittavissa tietoko- • · • · S 8595 3 kaisen yksittäisen pikkutoiminnan osalta.
FI-patenttihakemuksesta 912669 tunnetaan kahdennus-menetelmä, jossa kahden tai useamman rinnakkain toimivan tietokoneen suorittamat prosessit kahdennetaan mahdolli-5 simman monta aliprosessia sisältävissä ryhmissä siten, että kahden rinnakkain toimivan koneen vastaavien ryhmien sisällä olevat vastaavat aliprosessit toimivat toisistaan riippumattomasti (asynkronisesti) mutta rinnakkaisten aliprosessien suorittamien prosessien välillä ei ole risti-10 riitaa. Tämä menetelmä perustuu prosessien väliseen multicast -tyyppiseen sanomanvälitykseen, jossa prosessoinnin kannalta tärkeät tiedot, joita siirretään päätietokoneen prosessien välillä, välitetään samanaikaisesti myös rinnalla toimivan varatietokoneen vastaaville prosesseille. 15 Tällöin rinnakkaisesti toimivat tietokoneet suorittavat samaa ohjelmaa virtuaalisesti saman aikaan siten, että tietokoneet näyttävät ulkoapäin katsoen lähettävän ja vastaanottavan samat sanomat samassa järjestyksessä. Menetelmä ei pyri takaamaan kahden suorituksen hetkellistä oi-20 keellisuutta vaan sen, että rinnan toimivien tietokoneiden suorittama toimenpide ei ole ristiriidassa joukon pääko-: neen suorittaman toimenpiteen kanssa. Tällä tavoin vähen- : netään kahdennuksesta johtuva tietokoneiden kuormitusta ilman, että tarvitaan muuta erikoislaitteistoa kuin tieto-25 koneita yhdistävä tiedonsiirtoväylä, joka tarvitaan ha- • · .1, jautetussa välitysjärjestelmässä joka tapauksessa.
“.V. Tällaisessa tunnetussa sanomapohjaisessa kahdennus- * menetelmässä on aluksi luotava varmistettavan aktiivisen prosessin rinnalle kuumakorvausvaraprosessi (hot stand- • · ! " 3 0 by) , joka on saatettava samaan dynaamiseen tilaan kuin • · · V · varmistettava aktiivinen prosessi. Tietokoneyksiköiden • · tasolla tämä tarkoittaa, että varayksikkö otetaan kylmä- korvaustilasta (cold stand-by) kuumakorvaustilaan saattamalla varaprosessi ensin ns. alkuvalmiustilaan ja siitä 35 edelleen tilaan, joka on aktiivisen yksikön mukainen. Ai- 98595 4 kutila saavutetaan lataamalla varayksikköön asianmukaiset ohjelmakoodit ja datatiedostot sekä käynnistämällä pääpro-sessit. Tässä alkuvalmiustilassa kaikki tilattomat prosessit ovat jo oikeassa toimintatilassa. Sen sijaan kaikki 5 tilaorientoituneet prosessit on edelleen saatettava alku-valmiustilasta tilaan, joka on yhdenmukainen aktiivisen yksikön kanssa. Tätä proseduuria kutsutaan prosessin tai tietokoneyksikön lämmittämiseksi (warm-up procedure). Läm-mitysproseduuri voi olla passiivinen tai aktiivinen. Pas-10 siivisella lämmityksellä tarkoitetaan, että uusia laskutoimituksia luodaan kahdennettuina laskutoimituksina ja ajan kuluessa yhdenmukaisten laskutoimitusten määrä va-rayksikössä tulee yhä lähemmäksi rinnakkaisten laskutoimitusten kokonaismäärää aktiivisessa yksikössä. Passiivinen 15 lämmitys ei kuitenkaan anna mitään takeita siitä, että varayksikkö koskaan saavuttaa aktiivisen yksikön kanssa yhdenmukaisen tilan, ts. että passiivinen lämmitys päättyy onnistuneesti, eikä passiivinen lämmitys myöskään anna mitään loppukriteeriä lämmitykselle. Tästä syystä, ja kos-20 ka passiivinen lämmitys saattaa viedä liian pitkän ajan, tarvitaan aktiivista lämmitystä. Aktiivisella lämmityksel-•.V lä tarkoitetaan proseduuria, jossa aktiivisen yksikön ti- : v laorientoituneiden prosessien tilamuuttujien nykyiset ar- vot kopioidaan varayksikön vastaaville tilamuuttujille.
• t 25 Aktiivinen lämmitys myöskin antaa kriteerin sille, milloin • · lämmitys on onnistuneesti päättynyt.
'•V'' Aktiiviselle lämmitykselle asetetaan monia vaati- • · · muksia. Lämmitysproseduurien tulisi olla sovellettavissa kaikkiin tai ainakin suurimpaan osaan sovelluksia aktii- • · ♦ 30 visten laskutoimitusten dynaamisen tilan kloonaamiseksi, • · · • · · *.* * ts. laskutoimitusten siirtämiseksi varayksikköön pysäyttä- 9 * * mättä ulkoisten tapahtumien ohjaamaa aktiivista laskentaa !" ·. pääyksikössä. Lämmitysproseduurien tulisi olla mahdolli- • simman näkymättömiä sovelluksille. Lämmitysproseduurien : 35 tulisi lisäksi aiheuttaa aktiivisen yksikön toiminnalle 98595 5 niin vähän häiriötä kuin mahdollista eivätkä ne saa koskaan aiheuttaa virheitä aktiivisen yksikön laskutoimituksissa ja niiden tulisi päättyä kun varayksikkö on saavuttanut yhdenmukaisen tilan.
5 Esillä olevan keksinnön päämääränä on lämmitys- menetelmä, joka täyttää mm. edellä mainitut vaatimukset.
Tämä saavutetaan johdannossa esitetyn tyyppisellä lämmitysmenetelmällä, jolle on keksinnön mukaisesti tunnusomaista, että 10 aktiivisen prosessin tai sitä laajemman prosessi- ryhmän, joka halutaan kahdentaa, toiminta jäähdytetään väliaikaisesti aktiivisessa ohjausyksikössä, kun todetaan, että prosessiryhmän millään prosessilla ei ole tehtävää, jota prosessi voitaisiin asettaa suorittamaan ohjausyksi-15 köiden vapautuessa muilta tehtäviltä, samalla säilyttäen aktiivisen ohjausyksikön muut prosessit toiminnassa, aktiivisen prosessin jäähdytystilan aikana tulevat tehtäväpyynnöt tallennetaan prosessin tehtäväpyyntöjonoon, kerätään lähetettävät tilatiedot, 20 lähetetään kerätyt tilatiedot varayksikölle yhdessä tai useammassa erässä, luodaan aktiivisen prosessin varaprosessi varayk-sikköön, ladataan ensimmäisen tilatietoerän sisältämät tila-25 tiedot varaprosessiin, • · lähetetään kuittaus aktiiviselle ohjausyksikölle, Ύ.’. tarkistetaan ettei aktiivisella prosessilla edel- • · • · · ' leenkään ole tehtäväpyyntöjä ja todetaan jäähdytys onnis tuneeksi, jos tehtäväpyyntöjä ei ole, ja lämmitys epäon-♦ " 30 nistuneeksi, jos tehtäväpyyntöjä on.
·.· * Keksinnön toisen suoritusmuodon mukaiselle menetel- * * mälle on tunnusomaista, että aktiivisen prosessin tai sitä laajemman prosessi-ryhmän, joka halutaan kahdentaa, toiminta jäähdytetään : 35 väliaikaisesti aktiivisessa ohjausyksikössä samalla säi- β 98595 lyttäen aktiivisen ohjausyksikön muut prosessit toiminnassa, lähetetään varayksikölle aktiivisen prosessin tehtävä jonossa olevien tehtäväpyyntöjen kopiot ja merkitään 5 ylös aktiivisessa yksikössä mitkä tehtäväpyynnöt on lähetetty, aktiivisen prosessin jäähdytystilan aikana tulevat tehtäväpyynnöt tallennetaan prosessin tehtäväpyyntöjonoon, kerätään lähetettävät tilatiedot ja lähetetään ne 10 varayksikölle yhdessä tai useammassa erässä, luodaan aktiivisen prosessin varaprosessi varayk-sikköön, ladataan ensimmäisen tilatietoerän sisältämät tilatiedot varaprosessiin, 15 ladataan mainitut tehtäväpyyntöjen kopiot vara- prosessin tehtäväpyyntöjonoon samaan järjestykseen, jossa ne olivat aktiivisen prosessin tehtäväpyyntöjonossa, lähetetään kuittaus aktiiviselle ohjausyksikölle, tarkistetaan ettei aktiivisella prosessille ole 20 tullut uusia tehtäväpyyntöjä niiden lisäksi, joiden kopiot lähetettiin varayksikölle, : todetaan jäähdytys onnistuneeksi, jos uusia tehtä- : ·.: väpyyntöjä ei ole tullut, ja lämmitys epäonnistuneeksi, j'.‘; jos uusia tehtäväpyyntöjä on tullut.
• · 25 Keksinnössä yhdellä kerralla lämmitettävää varayk- • · sikön komponenttia kutsutaan lämmityskokonaisuudeksi tai 'V.l -ryhmäksi. Olisi ideaalista, jos lämmityskokonaisuus olisi • · · * yksittäinen prosessi. Pahimmassa tapauksessa kaikki vara-yksikön prosessit voisivat kuulua samaan lämmityskokonai- • < ·* " 30 suuteen. Koska lämmityskokonaisuuden sisältö ei saa lämmi- * ♦ ♦ V ; tyksen aikana muuttua, viimeksi mainittu tapaus tarkoit- * * taa, että lämmitys olisi mahdotonta pysäyttämättä lasken- ··. taa pitkäksi ajaksi. Esillä olevassa keksinnössä, joka toimii sanomavälitteisessä kahdennusjärjestelmässä, kes-: V 35 keytetään (jäähdytetään) kahdennettavan aktiivisen proses- 98595 7 sin tai sitä laajemman prosessiryhmän, joka muodostaa lammi tyskokonaisuuden, toiminta väliaikaisesti aktiivisessa ohjausyksikössä. Keksinnön eräässä suoritusmuodossas kriteerinä jäähdyttämiselle pidetään sitä, että prosessiryh-5 män kerneltilan perusteella voidaan todeta, että prosessi-ryhmän millään prosessilla ei ole tehtävää, jota kernel voi laittaa prosessin suorittamaan, kun tietokone vapautuu muilta tehtäviltä. Sanomavälitykseen perustuvassa järjestelmässä se, että prosessilla ei ole tehtäviä, voidaan 10 todeta esim. siitä, että prosessin tulevien sanomien jono on tyhjä. Muita kerneltiloja (muuttujia) ovat esim. prosessin kommunikointitila ja prosessin ajotila (odottaa tehtäviä, kelpaa ajoon, ajossa, jne.). Samanaikaisesti kuitenkin säilytetään aktiivisen yksikön muut prosessit, 15 jotka eivät kuulu tähän lämmityskokonaisuuteen, normaalissa toiminnassa. Jäähdytetyssä tilassa oleva prosessi on muiden prosessien kannalta normaali ja ne voivat lähettää sille sanomia. Jäähdytetty prosessi ei kuitenkaan suorita ainuttakaan operaatiota vaan sille tulevat sanomat viedään 20 prosessisisääntulevien sanomien jonoon, josta ne sitten otetaan prosessin käsittelyyn, kun jäähdytetty tila päätti tyy. Koska keksinnössä lämmitys pyritään kohdistamaan pie- neen joutilaaseen osaan aktiivisen yksikön prosesseja, ts. jV. niihin joilla ei ole tulevia sanomia käsiteltävänä, aktii- 25 visen yksikön toiminta voi jatkua käytännöllisesti katsoen * · 11« e;e normaalina. Ainoa häiriö, joka voidaan havaita aktiivisen yksikön muussa toiminnassa, on jäähdytetyn yksikön sanoma- S > · ' jonoon mahdollisesti tulevien sanomien käsittelyn viiväs tyminen.
« « • * 30 Edellytyksenä lämmityksen onnistumiselle on, että • · · V ; aktiivisen prosessin tilatiedot eivät muutu sillä aikaa * * kun niitä siirretään varaprosessiin. Keksinnön eräässä ·, suoritusmuodossa tämä varmistetaan siten, että aktiivisen '·’ prosessin tulevien sanomien jonon täytyy säilyä tyhjänä : .‘ 35 tai muuttumattomana, jotta lämmitys todetaan onnistuneek- 98595 8 si. Jos jono ei säily tyhjänä tai muuttumattomana, lämmitys epäonnistuu ja varaprosessi palautetaan alkuvalmiusti-laan ja aktiivinen prosessi palautetaan jäähdytetystä tilasta. Jos jäähdytyksen aloittamisen ehtona ei ole aktii-5 visen prosessin tyhjä tulevien sanomien jono, keksinnnön eräässä suoritusmuodossa varaprosesin saomajonon yhdenmukaisuus ja aktiivisen prosessin sanomajonon muuttumattomuus varmistetaan kopiomalla aktiivisen prosessin sanoma-jonon jäähdytyksen alkaessa varaprosessin sanomajonoon ja 10 merkitsemällä kopioidut sanomat. Mikäli aktiivisen prosessin sanomajonoon tulee uusia sanomia ennen kuin vara-prosessi ilmoittaa kykenevänsä itse vastaanottamaan sanomia sanomajonoon, lämmitys todetaan epäonnistuneeksi. Sanomien vastaanottaminen jonoon voidaan kuitenkin sallia 15 myös jäähdytetyssä tilassa sen jälkeen, kun myös vara-prosessille on saatu luotua vastaava tulevien sanomien jono. Keksinnön mukaisella järjestelyllä vain varmistetaan, että ainuttakaan aktiivisen prosessin sanomajonoon tullutta sanomaa ei menetetä sinä aikana, joka on aktiivi-20 sen prosessin jäähdyttämisen ja varaprosessin sekä sen sanomajonon luomisen välissä. Keksinnön mukaiselle lämmi-. : ; tysmenetelmälle on myös ominaista, että se soveltuu reaa- liaikaympäristöön, koska siinä ei edellytetä tehtävien ’’ uudelleensuoritusta (rollback) tarkistuspisteestä (check- 25 point) nykytilaan varakoneen toimesta. Yhdenmukainen tila • « kopioidaan varayksikköön aktiivisesta yksiköstä lämmitys- t järjestyksen mukaan. Varayksikkö ei suorita aktiivisen S i · " yksikön aikaisemmin suorittamia tehtäviä uudelleen pääs täkseen ajan tasalla olevaan tilaan.
• 4 « » < *' 30 Reaaliaikavaatimusten takia tietoja voidaan välit- *· « V : taa prosessilta toiselle ja säilyttää keskusmuistitiedos- * ' ' toissa, eli tiedostoissa jotka koko ajan sijaitsevat tie tokoneen muistissa. Näillä tiedostoilla voi olla kopio ' pysyvässä muistissa esim. levyllä. Aina näin ei kuitenkaan 1 35 ole mikäli tiedosto sisältää nopeasti muuttuvaa järjestel- 98595 9 män tilatietoa. Keskusmuistitiedostoja mallinnetaan da-tayksiköiden joukolla. Jokainen datayksikkö mallintaa muuttujajoukkoa jossakin keskusmuistitiedostossa. Datayk-siköt eroavat prosessien omista muuttujista siten, että 5 niitä ei välttämättä ole sidottu kiinteästi yhteen prosessiin vaan esim: A) jotakin datayksiköiden alijoukkoa D]_ voivat kaikki prosessit lukea, B) jonkin datayksiköiden joukon D2 arvot kirjoittaa yksi prosessi ja toinen lukee niitä. Jos datayksiköitä ei käytetä tiedon siirtoon pro-10 sessilta toiselle, silloin datayksiköt voidaan rinnastaa kirjoittavan prosessin omiin muuttujiin ja lämmittää prosessin mukana.
Jos datayksiköitä käytetään tiedon siirtoon prosessilta toiselle, silloin määritellään prosessien välille 15 lämmitysjärjestys siten, että lukijaprosessit lämmitetään sen jälkeen kun kirjoittajaprosessi ja datayksiköt on lämmitetty. Näin varmistetaan että aktiivin kanssa ristiriitainen tilatieto ei pääse leviämään lämmityksen aikana datayksiköiden kautta.
20 Keksinnön eräässä suoritusmuodossa suoritetaan ti latietojen onnistuneen lämmityksen jälkeen tarvittaessa ..· aktiiviseen prosessiin liittyvien erillisten datayksiköi- den siirto aktiivisesta ohjausyksiköstä varayksikköön. Nämä erilliset datayksiköt ovat sellaisia, joita ei käyte-25 tä muuttamaan prosessitilamuuttujia tai synnyttämään si- • 9 sältöä sellaiselle sisäiselle sanomalla, joka lähetetään toiselle prosessille. Tällaisia erillisiä datayksiköitä ’ voivat reaaliaikaisessa kytkentäjärjestelmässä olla esi merkiksi palvelun tuottaja- ja kuluttajakontekstissa ke- « 4 • " 30 rättyjä tilasto- ja veloitustietoja. Esimerkiksi suuren
Ml V * tilaajajoukon veloituslaskuritiedosto on niin iso, että • * sitä ei voida lämmittää yhtenä kokonaisuutena mutta se voidaan jakaa joukoksi erillisiä datayksiköitä. Jokainen datayksikkö siirtää dataa itsenäisenä yksikkönä. Veloitus- I t ; 35 ja muut laskurit ovat tilamuuttujia, tilastotietojen ke- i fill * 98595 10 rääminen kohteelle on pysyvää tilaorientoitunutta laskentaa. Yksi prosessi suorittaa datakeräyksen kohderyhmälle, mutta eri kohteiden laskuoperaatioilla ei ole mitään tekemistä toistensa kanssa.
5 Keksinnön mukaisesti tällaisten erillisten datayk- siköiden siirto käsittää vaiheet: tallennetaan siirrettävän erillinen datayksikön nykyinen arvo varayksikössä, pyydetään aktiivista ohjausyksikköä lähettämään 10 mainittu erillinen datayksikkö varayksikölle, luetaan mainittu erillinen datayksikkö aktiivisessa ohjausyksikössä ja lähetetään se varayksikölle, varmistetaan, ettei siirtovaiheen aikana ole tapahtunut datayksikköön kohdistuneita kirjoitustoimenpiteitä, 15 vertaamalla datayksikön nykyistä arvoa varayksikössä mai nittuun tallennettuun arvoon, ja jos datayksikön nykyinen arvo ja tallennettu arvo ovat samat, kirjoitetaan aktiiviselta ohjausyksiköltä vastaanotettu datayksikön arvo varayksikön datayksikön nykyi-20 seksi arvoksi, jos datayksikön nykyinen arvo ja tallennettu arvo ovat erilaiset, määritetään siirto epäonnistuneeksi ja hylätään aktiiviselta ohjausyksiköltä vastaanotettu datayksikön arvo.
25 Esillä oleva keksintö mahdollistaa siten rajoite- • · tusti käytettyjen tiedostojen kopioinnin aktiivisesta yk- • · siköstä varayksikköön siten, että aktiivisen yksikön so- « vellukset voivat jatkaa tietojen päivittämistä kopioinnin • · ‘ ollessa menossa. Konflikti syntyy vain, jos aktiivikonees-30 sa päivitetään tietoja, joita ollaan samanaikaisesti kopi- • · : " oimassa lämmitettävään varayksikköön. Lisäksi tallentamal- • · « • · · * ’ ' la varayksikössä ei-ajantasalla oleva datayksikön arvo ennen datayksikön oikean arvon hakemista aktiivisesta yk-siköstä ja tämän jälkeen kirjoittamalla haettu arvo va-35 rayksikköön vain, jos varayksikössä oleva arvo ei ole haun 98595 11 aikana muusta syystä muuttunut, voidaan konfliktit havaita ja virheellisen tiedon kopiointi estää. Havaitseminen perustuu siihen tosiasiaan, että varayksikköön kohdistuvat samat ulkopuoliset operaatiot kuin aktiiviyksikköönkin.
5 Mikäli datayksikön arvo varayksikössä haun aikana muuttuu ja siten poikkeaa ennen hakua tallennetusta arvosta, haettu arvo oletetaan virheelliseksi ja lämmitys tulkitaan epäonnistuneeksi. Keksintö mahdollista suurten, paljon dynaamista dataa sisältävien tiedostojen kahdentamisen ja 10 ylipäätään käytön reaaliaikaisessa järjestelmässä siten, että aktiivikone voi jatkaa normaalien tehtävien suorittamista kopioinnin tapahtuessa. Tällaiset tiedostot soveltuvat hyvin veloituslaskureiden keräilyyn, joita puhelinkeskuksessa on paljon. Nyt tehokas lämmitysmenetelmä ei ra-15 joita niiden käyttöä.
Keksintöä selitetään nyt yksityiskohtaisemmin ensisijaisten suoritusmuotojen avulla viitaten oheisiin piirroksiin, joissa kuvio 1 on lohkokaavio eräästä puhelinkeskuksesta, 20 jossa voidaan soveltaa keksinnön mukaista menetelmää, kuvio 2 on kaavio, joka havainnollistaa tiedonsiirtoa kahdennettujen prosessilohkojen välillä, , kuvio 3 havainnollistaa keksinnön mukaista aktii- -,-.1 vista prosessinlämmitystä, ja IV. 25 kuvio 4 havainnollistaa keksinnön mukaista erillis- • · • · ten datayksiköiden lämmitystä.
• ·
Seuraavassa keksintöä selitetään digitaalisen puhe- ".!! linkeskuksen yhteydessä, mutta keksinnön mukaista lämmi- • · < * tysmenetelmää voidaan soveltaa missä tahansa muussakin 30 kahdennetussa reaaliaikaisessa järjestelmässä erityisesti • · : ” samantyyppisissä välitysteknisissä kytkentälaitteistoissa, • · · joissa kytketään siirtoyhteyksiä siirtokanavien välillä. Kuviossa 1 on ohjuksen kohteena on kytkentäosa tai kytkentäkenttä 1, jota ohjataan toiminnallisesti hajautetulla • 35 ohjausosalla 2, jonka on esitetty sisältävän yleisimmät 12 98595 yksikkötyypit. Kytkentäosa 1 voi sisältää kytkentämatrii-sin sekä tarvittavia signalointi- ja puheenkäsittelylait-teistoja. Kytkentäosa 1 kytkee ohjausosan 2 ohjauksen alaisena siirtoyhteyksiä ensimmäiseen siirtokanava- tai 5 linjaryhmän L1...LN sekä toisen siirtokanavaryhmän L'1...L'N välille.
Ohjausosassa 2 ohjaustoiminnot on hajautettu useille mikrotietokoneyksiköille 21A-21E, 22A-22D, 23 ja 25, jotka on kytketty toisiinsa nopealla rinnakkaismuotoisella 10 sanomaväylällä. Sanomaväylän sijasta voidaan käyttää ohjausosan 2 sisäiseen tiedonsiirtoon mitä tahansa muutakin sopivaa tiedonsiirtovälinettä.
Kuviossa 1 on esitetty kaksi toiminnallisesti erikoistunutta ohjaustietokonetyyppiä, nimittäin markkeri 25 15 kytkimen ohjausta varten sekä toiminta- ja huoltoyksikkö 23. Lisäksi on esitetty erityyppisiä signalointiyksiköitä (SIG) 21A-21E sekä palvelutoimintoyksiköitä (SU) 22A-22D.
Ainakin yksi signalointiyksiköistä 21 on varattu tulevan puhelun käsittelyyn, jolloin se sisältää toimin-20 töinä ainakin tulevan signaloinnin käsittelyn, tulevan puhelun ohjauksen, puhelun laskutuksen sekä resurssien hallinnan. Resursseilla tarkoitetaan tässä yhteydessä mm.
. : : liikennekanava-aikavälejä, puhelutunnisteita sekä kytken- töjä.
25 Ainakin yksi signalointiyksiköistä 21 käsittelee • · lähtevän puhelun signalointia, jolloin se sisältää lähte- • · vän puhelun ohjauksen sekä lähtevän signaloinnin käsitte- • · · · ... lyn.
Markkeri 25 sisältää kytkentöjen käsittelyn.
30 Yksi tai useampi palveluyksiköistä 22 sisältää oh- • · : “ jelmalohkoja tilaajadatan, linjandatan, keskusjohtodatan • · · : : : tai reititysdatan hakupalveluja varten. Lisäksi yksi tai useampi palveluyksikkö voi sisältää puhelun tilastointeja laskutustietojen keräystoimintoja.
Ί 35 Ainakin osa edellä mainituista tietokoneista on < « 13 98595 varmistettu kahdentamalla toiminnot eli käyttämällä rinnakkain kahta tai useampaa tietokoneyksikköä, jotka suorittavat näennäisesti samanaikaisesti samoja prosesseja. Keksintöä selitetään seuraavassa esimerkinomaisesti sel-5 laisen tapauksen yhteydessä, jossa yhden aktiivisen ohjausyksikön rinnalla toimii kuumakorvausperiaatteella toinen ohjausyksikkö varayksikkönä siten, että se on tarpeen vaatiessa välittömästi otettavissa käyttöön aktiivisen yksikön rikkoutuessa. Tällaista kahdennusperiaatetta kutsu-10 taan 2N-menetelmäksi. Keksintö on tarkoitettu kuitenkin sovellettavaksi myös N+l-kahdennusmenettelyn yhteydessä, jolloin ohjausyksikön vaihdon tapauksessa ainoa varayksik-kö täytyy ensin saattaa korvattavan yksikön kanssa kuuma-korvaustilaan ennen sen käyttöön ottoa. Tällöin tämä lop-15 putilanne vastaa 2N-varmennusmenetelmää.
Keksinnön ensisijaisessa suoritusmuodossa sitä sovelletaan ns. multicast-periaatteella kahdennetussa järjestelmässä, jollainen on kuvattu FI-patenttihakemuksessa 912669. Multicast-menetelmässä tietylle puhelulle tai yh-20 teydelle suoritettavan kytkennänohjausprosessin aliproses sit suoritetaan keskenään asynkronisissa ryhmissä, jotka ryhmät lähettävät toisilleen sanomia tiedonsiirtoväylän, kuten väylä 22 kautta. Varayksikön vastaavat aliprosessit muodostavat samanlaiset vararyhmät, jotka myös kykenevät . · ; 25 välittämään sanomia tiedonsiirtoväylän 22 kautta. Ali- • · prosessiryhmät aktiivisessa yksikössä WO ja sitä varmista- • · va vararyhmä varayksikössä SP ovat keskenään asynkronisia « ”1^ siten, että toisiaan vastaavat aliprosessit näiden ryhmien • · * ’ sisällä suoritetaan toisistaan riippumattomasti. Ali- 30 prosessit ryhmän sisällä kommunikoivat suoraan keskenään • · ‘ ja ryhmät lähettävät toisilleen sanomia yhteisen tiedon- t·· *.* * siirtoväylän 22 kautta. Kuviossa 2 on esitetty kaksi ak- .'· tiivistä prosessia Α„0 ja Bw0, jotka sijaitsevat aktiivises- ·". sa ohjausyksikössä W0 ja jotka kumpikin muodostuvat yhdes- 35 tä tai useammasta aliprosessista. Varayksikössä SP on vas- 98595 14 taavasti varmistavat varaprosessit AsP sekä vastaavasti Bsp. Kuviossa 2 aktiivinen prosessi A„0 lähettää toiselle aktiiviselle prosessille Bwo sanoman, joka sisältää esimerkiksi tiedon puhelun kytkemisestä. Myös varaprosessi Asp on muo-5 dostanut saman kytkentätiedon. Prosessin ASP tulosta ei kuitenkaan hyödynnetä jatkossa, vaan prosessin Α„0 kytken-tätieto lähetetään multicast-periaatteen mukaisesti sekä aktiiviselle prosessille Bwo että varaprosessille Bwo. Näin varmistetaan, että prosessit Bwo ja Bsp jatkavat ohjaus-10 prosessia itsenäisesti mutta samoilla lähtötiedoilla. Mul-ticast-periaatteen tarkemman kuvauksen osalta viitataan FI-patenttihakemukseen 912669.
Kuten yllä on aikaisemmin selitetty, varaprosessi täytyy saattaa kylmäkorvaustilasta alkuvalmiustilaan la-15 taamalla tarvittavat ohjelmakoodilohkot ja datatiedostot ja käynnistämällä pääprosessit, sekä edelleen aktiivisella lämmitysproseduurilla saattaa alkuvalmiustilasta tilaan, joka on yhdenmukainen aktiivisen prosessin kanssa, kopioimalla aktiivisen yksikön tilaorientoituneiden prosessien 20 tilamuuttujien nykyiset arvot varayksikön vastaaviin tila-muuttujiin. Dynaaminen tiladata, jota saatetaan siirtää aktiivisesta yksiköstä varayksikköön, voi sisältää prosessien tilamuuttujat, prosessinohjaustietoja, aktiivisia aikalaskureita, jne. Kuten aikaisemmin todettiin, aktiivi- ; · : 25 sen lämmitysproseduurin tulisi aiheuttaa mahdollisimman • · .1·1: vähän häiriötä aktiiviyksikön normaalille toiminnalle eikä • · se saisi koskaan aiheuttaa virheitä aktiiviyksikön toimin- • « · · ·:·. nassa.
• · · Nämä ja muut aikaisemmin selostetut edut saavute-30 taan keksinnön mukaisella lämmitysmenetelmällä, jonka en- • · sisijäinen suoritusmuoto selitetään seuraavassa esimerkki-• · · • 1 1 ’·' ' nä viitaten kuvioon 3. Kuviossa 3 on esitetty aktiiviyk- ·.1·.· sikkö WO sekä varayksikkö SP. Kahdennettua prosessia, joka . halutaan lämmittää, on merkitty aktiivisessa yksikössä awo 35 ja varayksikössä asp. Lämmitysproseduurin suorittaa kernel- 98595 15 ohjelmalohko, jota aktiivisessa yksikössä merkitään Wwo ja jota varayksikössä merkitään WSP. Lämmitysproseduurin suorittamisen aikana muut aktiivisen yksikön W0 ja varayksi-kön SP prosessit etenevät normaalisti.
5 Keksinnön ensisijaisessa suoritusmuodossa lämmitys- proseduurin aloitusehdot ovat seuraavat: 1) σΜ0 on suorittamassa vastaanottovaihetta, 2) prosessin σ"° sisääntulevien sanomien jono on tyhjä, 10 3) prosessi awo ei ole estänyt lämmitystä, ja 4) prosessia 0sp ei ole vielä lämmitetty.
Keksinnön mukainen lämmitysprosessi etenee perusperiaatteeltaan seuraavasti:
Kuvion 3 vaiheessa 1 prosessi aw0 jäähdytetään, ts. 15 prosessin suoritus pysäytetään väliaikaisesti. Jäähdytetyssä tilassa oleva prosessi aw0 on olemassa muille prosesseille aktiivisessa yksikössä ja ne voivat lähettää sille sanomia. Jäähdytetty prosessi awo ei kuitenkaan suorita ainuttakaan ohjelmakoodiriviä ja kernel pistää sisääntule-20 vat sanomat prosessin σΗ0 sisääntulevien sanomien jonoon.
Prosessi owo tulee käsittelemään nämä sanomat, kun jäähdy-tystila päättyy.
. : : Kuvion 3 vaiheessa 2 kerätään sen lämmityskokonai- suuden, jonka osa prosessi aw0 on, tilatiedot.
25 Kuvion 3 vaiheessa 3 nämä kerätyt tilatiedot lähe- • · tetään aktiiviselta yksiköltä WO varayksiköllä SP. Tämä • · '·' ensimmäinen sanoma sisältää myös j äähdytyskäskyn vara-
• · · · < π n SP
... prosessille σ.
• · · * Kuvion 3 vaiheessa 4 luodaan prosessi asp, jäähdyte- 30 tään luotu varaprosessi sekä kirjoitetaan aktiivisesta : “ yksiköstä WO vastaanotettuun sanomaan sisältyneet tilatie- ; : : dot varaprosessiin aSP. Varaprosessin asp tiedonsiirtotila asetetaan tilaan "saavutettava, jolloin, samalla tavoin kuin aktiivisen prosessin tapauksessa, jäähdytetty vara-35 prosessi osp on vaiheen 4 jälkeen olemassa järjestelmän 98595 16 muille prosesseille ja ne voivat lähettää sille sanomia. Kernel asettaa kaikki jäähdytetylle varaprosessille aSP tulevat sanomat varaprosessin aSP sisääntulevien sanomien jonoon myöhempää käsittelyä varten.
5 Kuvion 3 vaiheessa 5 lähetetään kuittaus varayksi- költä SP aktiiviselle yksikölle WO.
Kuvion 3 vaiheessa 6 tarkastetaan aktiivisen prosessin σ”° sisääntulevien sanomien jono. Edellä kuvattujen vaiheiden 2-5 aikana aktiivisen prosessin awo sisääntulevi-10 en sanomien jonon täytyy säilyä tyhjänä. Syy tähän on, että saman sanoman kopio on saatettu menettää varayksikös-sä SP ennenkuin varaprosessi aSP on luotu vaiheessa 4.
Jos kuvion 3 vaiheessa 6 aktiivisen prosessin awo sisääntulevien sanomien jono on säilynyt tyhjänä, jäähdy-15 tys oli onnistunut.
Jos kuvion 3 vaiheessa 6 aktiivisen prosessin aw0 sisääntulevien sanomien jonossa on yksikin sanoma, lämmitys epäonnistuu ja epäonnistumisesta ilmoittava sanoma lähetetään aktiiviselta yksiköltä WO varayksikölle SP, 20 jossa varaprosessi aSP palautetaan alkutilaansa. Aktiivinen prosessi σΜ0 palautetaan jäähdytyksestä ja se voi jatkaa käsittelyä, aloittaen sanomajonoon jäähdytyksen aikana . tulleista sanomista. Kernelprosessi W yrittää prosessin osp lämmitystä myöhemmin uudelleen.
. · ; 25 Jos jäähdytys oli onnistunut, mutta kaikkia tila- • · tietoja ei voitu lähettää ensimmäisessä sanomassa prose- « · • · duurin vaiheessa 3, lisätiedot lähetetään varayksikölle SP myöhemmissä sanomissa, nämä tiedot kirjoitetaan varayksik- • · · • f · ‘ köön SP ja jokainen sanoma kuitataan. Näiden myöhempien 30 tiladatasanomien siirron aikana sanomat, jotka tulevat • · • · ί ** prosessille a, puskuroidaan sisääntulevien sanomien jonoon • · · ‘ ? *' sekä aktiivisessa prosessissa awo että varaprosessissa aSP.
Täten jonot pysyvät yhdenmukaisina (vaiheesta 4 eteenpäin) , jos sanomapohjainen kahdennusperiaate ei muuten 3 5 epäonnistu. Tämän seurauksena prosessien σΜ0 ja σΞΡ jonojen 98595 17 ei tarvitse säilyä tyhjänä jäähdytyksen aikana tilatietoja sisältäviä lisäsanomia lähetettäessä.
Kuvion 3 vaiheessa 7a todetaan, että enempää lähetettäviä tilatietoja ei ole, jolloin aktiivinen prosessi 5 aw0 palautetaan jäähdytyksestä ja sille asetetaan status, jonka mukaan se on kahdennetussa moodissa.
Vaiheessa 7b, kun viimeisen datasanoman tilatiedot on kirjoitettu, varaprosessi SP palautetaan jäähdytyksestä ja sille asetetaan status, jonka mukaan se on kahdennetus-10 sa moodissa.
Vaiheet 1-7 täytyy suorittaa korkealla prioriteetilla, jotta minimoidaan sovelluksiin kohdistuvat häiriöt ja maksimoidaan onnistumismahdollisuudet. Kuitenkin koko-naisproseduuri kaikille prosesseille täytyy ajaa sovellus-15 ten taustalla, niin että sovellukset voivat edetä lämmi-tyskokonaisuuksien lämmittämisien välissä. Tämän seurauksena prioriteeteille täytyy päteä seuraava sääntö: lämmityskokonaisuuden valinta s sovellutukset s kokonaisuuden lämmittäminen.
20 Keksinnön toisessa suoritusmuodossa ei lämmityksen käynnistämisen kriteeinä ole se, että aktiivisen prosessin tulevien sanomien jono on tyhjä. Sen sijaan aktiivisen : prosessin tai sitä laajemman prosessiryhmän, joka halutaan ./ : kahdentaa, tehtävä jonossa olevien sanomien eli tehtävä- i‘.'; 25 pyyntöjen kopiot lähetetään varayksikölle SP ja merkitään • · ·.·. ylös aktiivisessa yksikössä WO mitkä sanomat on lähetetty.
• · ’•t Tämän jälkeen edetään, kuten kuvion 3 suoritusmuodossa, paitsi että vaiheessa 5 tallennetaan myös mainitut sanoma- • · « kopiot luodun varaprosessin asp tulevien sanomien jonoon 30 samaan järjestykseen, jossa ne olivat aktiivisen prosessin « · : *** σΜ0 sanoma jonossa. Tämän jälkeen lähetetään kuittaus kuvion ·· · ’ ’ r 3 vaiheen 5 mukaisesti ja vaiheessa 6 tarkistetaan aktii visen prosessin awo sisääntulevien sanomien jono. Toisin sanoen tarkistetaan, ettei aktiivisella prosessille awo ole . 35 tullut uusia sanomia niiden lisäksi, joiden kopiot lähe- 18 98595 tettiin varayksikölle. Tällöin todetaan jäähdytys onnistuneeksi, jos uusia sanomia ei ole tullut, ja lämmitys epäonnistuneeksi, jos uusia sanomia on tullut. Tämän jälkeen edetään kuten kuvion 3 suoritusmuodossa.
5 Edellä kuvattu lämmitysperiaate soveltuu sellaise naan, kun datan kokonaismäärä lämmityskokonaisuudessa, joka sisältää prosessin a ja kaikki sen datayksiköt, ei ole liian suuri. Jos prosessiin a liittyy suuria datayksi-köiden ryhmiä, kaiken datan siirtäminen yhdellä kertaa vie 10 liian paljon aikaa reaaliaikasovellusten kannalta. Tämän vuoksi ns. erilliset datayksiköt, jotka määriteltiin aikaisemmin tässä hakemuksessa, siirretään eri ajankohtana edellä kuvatun lämmityksen jälkeen pienempinä kappaleina.
Seuraavassa kuvataan keksinnön ensisijaisen suori-15 tuksen mukaista erillisten datayksiköiden lämmitys-proseduuria viitaten kuvioon 4. Kuviossa 4 on esitetty seuraavat lohkot:
Wm on kernel-pääprosessi, joka on vastuussa tiedoston lämmityksestä,
20 Wmsp on prosessin Wm vastine varayksikössä SP
Whw° ja Whsp ovat vastaavasti aktiivisen yksikön WO ja varayksikön SP apuprosesseja, jotka suorittavat tiedoston ,i i lämmityksen, Δ = {di |i = l,...,N}, on erillisten datayksiköiden i . . 2 5 ryhmä, joka on lämmitettävä, • · o on prosessi, johon datayksiköiden ryhmä liittyy.
• ·
Ennenkuin datayksiköiden lämmitys alkaa, prosessi σ 'It! on ensin lämmitetty yllä kuvion 3 yhteydessä kuvatulla : : : * tavalla. Tämän jälkeen lämmitysproseduuri etenee seuraa- 30 vasti: • » • · : " kuvion 4 vaiheessa 1 varayksikön SP kernelprosessi • · · ’ ' *' Wmsp pyytää apuprosessiaan Whsp lämmittämään datayksikön dif joka voidaan siirtää sanomassa.
Kuvion 4 vaiheessa 2 WhSP tallentaa lämmitettävän da-35 tayksikön. Tämän tallennetun datan oletetaan olevan risti- 98595 19 riitaisessa tilassa aktiivisen yksikön vastaavan datayksi-kön kanssa. Tallennettua sisältöä merkitään v(diSP) = usav.
Kuvion 4 kohdassa 3 Whsp pyytää aktiivisen yksikön apuprosessia Whwo lähettämään kyseisen datayksikön di.
5 Vaiheessa 4 apuprosessi Whwo lukee datayksikön aktii visesta yksiköstä ja lähettää datayksikön di varayksikön SP apuprosessille Whsp vaiheessa 5.
Kuvion 4 vaiheessa 6 varayksikön SP apuprosessi Whsp lukee varayksiköstä SP datayksikön d(diSP) nykyisen arvon 10 ucur ja vertaa sitä tallennettuun arvoon usav. Jos usav = ucurf niin aktiivisesta yksiköstä WO vastaanotettu datayksikkö da kirjoitetaan erillisten datayksiköiden ryhmään varayksi-kössä SP. Jos usav on erilainen kuin ucur, niin tämän datayksikön lämmitys epäonnistuu ja lämmitystä täytyy yrittää 15 uudelleen. Tämä testi varmistaa, että voidaan ilmaista vaiheiden 3, 4, 5 ja 6 aikana suoritetut prosessin aSP da-tayksikköön diSP ennen uuden sisällön kirjoittamista kohdistuneet kirjoitustapahtumat (muiden prosessien, esim. owo, toimesta).
20 Kuvion 4 vaiheessa 7 varayksikön SP apuprosessi Whsp kuittaa onnistuneen lämmityksen varayksikön kernelproses-sille Wmsp. Jos kyseessä ei ollut viimeinen siirrettävä da-: tayksikkö, WmSP jatkaa vaiheesta 1, muussa tapauksessa läm mitys päättyy.
i . . 25 On huomattava, että vaiheissa 4 ja 5 voidaan siir- • * tää useita sanomia, jos se ei vie niin paljon aikaa, että #j, syntyy reaaliaikaongelmia. Tämä mahdollistaa sen, että da- *!*.* tayksiköt ovat suurempia kuin maksimisanoman pituus. Koska « · * lämmitys vie suhteellisen pitkän ajan on lämmitysproseduu- 30 ri ajettava reaaliaikavaatimusten vuoksi sovellusten taus- : ** talla. Tämän ehdon täyttämiseksi ja yksittäisen datayksi- ··· ! ! ! kön lämmitysajan minimoimiseksi, vaiheessa 6 käsitellyn turvajakson varmistamiseksi ja täten lämmityksen onnistu-, mistodennäköisyyden maksimoimiseksi käytetään prosessien 35 suorittamisessa seuraavia prioriteetteja: 98595 20 pri (Wm) s pri (sovellukset) < pri (Wh) .
Tämä sääntö varmistaa, että prosessi σδΡ ei voi tehdä mitään esimerkiksi vaiheiden 2 ja 3 aikana.
Sellaisessa järjestelmässä, jossa lämmityskokonai-5 suudet sisältävät keskusmuistitiedostoja, joihin useilla prosesseilla on luku- ja kirjoituspääsy, lämmityskokonai-suudet lämmitetään sellaisessa järjestyksessä, että tietojen lukijat lämmitetään sen jälkeen kun kirjoittajat ja itse keskusmuistitiedostot on lämmitetty.
10 Kuviot ja niihin liittyvä selitys on tarkoitettu vain havainnollistamaan esillä olevaa keksintöä. Yksityiskohdiltaan keksinnön mukainen menetelmä voi vaihdella oheisten patenttivaatimusten puitteissa.
s···; 9 · iVi k t 49% t .1*1 <1* *1 · * · % • · i ·..
* ··» • » · « * * • · « · « ♦ *

Claims (14)

98595 21
1. Menetelmä varaprosessin lämmittämiseksi aktiivisen prosessin rinnalle kahdennetussa reaaliaikaisessa jär- 5 jestelmässä, erityisesti puhelinkeskuksessa, joka järjestelmä käsittää ohjausvälineen, joka käsittää ainakin yhden aktiivisen ohjausyksikön, jolla on jatkuvasti tai tarvittaessa varmistuksena kuumakorvausperiaatteella toimiva varayksikkö, siten että varayksikkö suorittaa rinnakkai-10 sesti samoja prosesseja kuin aktiivinen ohjausyksikkö, tunnettu siitä, että aktiivisen prosessin tai sitä laajemman prosessi-ryhmän, joka halutaan kahdentaa, toiminta jäähdytetään väliaikaisesti aktiivisessa ohjausyksikössä, kun todetaan, 15 että prosessiryhmän millään prosessilla ei ole tehtävää, jota prosessi voitaisiin asettaa suorittamaan ohjausyksi-köiden vapautuessa muilta tehtäviltä, samalla säilyttäen aktiivisen ohjausyksikön muut prosessit toiminnassa, aktiivisen prosessin jäähdytystilan aikana tulevat 20 tehtäväpyynnöt tallennetaan prosessin tehtäväpyyntöjonoon, kerätään lähetettävät tilatiedot, lähetetään kerätyt tilatiedot varayksikölle yhdessä tai useammassa erässä, luodaan aktiivisen prosessin varaprosessi varayk- *·'·' 25 sikköön, « · *: ladataan ensimmäisen tilatietoerän sisältämät tila- • · ♦ • V tiedot varaprosessiin, • · • V lähetetään kuittaus aktiiviselle ohjausyksikölle, ·; tarkistetaan ettei aktiivisella prosessilla edel- • · ·« .*·*: 30 leenkään ole tehtäväpyyntöjä ja todetaan jäähdytys onnis- tuneeksi, jos tehtäväpyyntöjä ei ole, ja lämmitys epäonnistuneeksi, jos tehtäväpyyntöjä on.
2. Menetelmä varaprosessin lämmittämiseksi aktiivisen prosessin rinnalle kahdennetussa reaaliaikaisessa jär- 35 jestelmässä, erityisesti puhelinkeskuksessa, joka järjes- 22 98595 telmä käsittää ohjausvälineen, joka käsittää ainakin yhden aktiivisen ohjausyksikön, jolla on jatkuvasti tai tarvittaessa varmistuksena kuumakorvausperiaatteella toimiva varayksikkö, siten että varayksikkö suorittaa rinnakkai-5 sesti samoja prosesseja kuin aktiivinen ohjausyksikkö, tunnettu siitä, että aktiivisen prosessin tai sitä laajemman prosessi-ryhmän, joka halutaan kahdentaa, toiminta jäähdytetään väliaikaisesti aktiivisessa ohjausyksikössä samalla säilö lyttäen aktiivisen ohjausyksikön muut prosessit toiminnas sa, lähetetään varayksikölle aktiivisen prosessin tehtävä jonossa olevien tehtäväpyyntöjen kopiot ja merkitään ylös aktiivisessa yksikössä mitkä tehtäväpyynnöt on lähe-15 tetty, aktiivisen prosessin jäähdytystilan aikana tulevat tehtäväpyynnöt tallennetaan prosessin tehtäväpyyntöjonoon, kerätään lähetettävät tilatiedot ja lähetetään ne varayksikölle yhdessä tai useammassa erässä, 20 luodaan aktiivisen prosessin varaprosessi varayk- sikköön, ladataan ensimmäisen tilatietoerän sisältämät tilatiedot varaprosessiin, .. ladataan mainitut tehtäväpyyntöjen kopiot vara- 25 prosessin tehtäväpyyntöjonoon samaan järjestykseen, jossa • · · *· ** ne olivat aktiivisen prosessin tehtäväpyyntöjonossa, • · · : lähetetään kuittaus aktiiviselle ohjausyksikölle, • * • V tarkistetaan ettei aktiivisella prosessille ole tullut uusia tehtäväpyyntöjä niiden lisäksi, joiden kopiot 30 lähetettiin varayksikölle, todetaan jäähdytys onnistuneeksi, jos uusia tehtäväpyyntöjä ei ole tullut, ja lämmitys epäonnistuneeksi, jos uusia tehtäväpyyntöjä on tullut.
3. Patenttivaatimuksen 1 tai 2 mukainen menetelmä, 35 tunnettu siitä, että aktiivinen ohjausyksikkö ja • · 98595 23 varayksikkö on liitetty ohjausvälineen sisäiseen tiedonsiirtovälineeseen, ja että mainitut tehtäväpyynnöt ovat sanomia ja tehtäväpyyntöjonot sanomajonoja.
4. Patenttivaatimuksen 3 mukainen menetelmä, t u n-5 n e t t u siitä, että aktiivisen prosessin tehtäväpyyntö j en tarkistus käsittää aktiivisen prosessin tulevien sanomien jonon tarkistuksen, jolloin aktiivisella prosessilla ei ole tehtäväpyyntöjä, jos sanomajono on tyhjä, ja aktiivisella prosessilla on tehtäväpyyntöjä jos sanomajo- 10 nossa on sanomia.
5. Patenttivaatimuksen 4 mukainen menetelmä, tunnettu siitä, että sanomat, jotka vastaanotetaan aktiivisen prosessin tulevien sanomien jonoon jäähdytystilan aikana ja/tai ovat siellä jäähdytystilan alkaessa, käsi- 15 tellään jäähdytystilan päättymisen jälkeen.
6. Patenttivaatimuksen 4 tai 5 mukainen menetelmä, tunnettu siitä, että varaprosessin epäonnistuneen lämmityksen jälkeen varayksikölle lähetetään virhesanoma, varaprosessi palautetaan alkutilaan ja lämmitystä yrite- 20 tään uudelleen sopivana ajankohtana.
7. Patenttivaatimuksen 4, 5 tai 6 mukainen menetelmä, tunnettu siitä, että onnistuneen jäähdytyksen jälkeen aktiivinen prosessi pidetään jäähdytystilassa ja , , aktiiviselta ohjausyksiköltä lähetetään varayksikölle li- '· 25 sää tilatietoeriä, jotka sisältävät mainittuja kerättyjä • · · *· tilatietoja kunnes kaikki kerätyt tilatiedot on lähetetty : ja varaprosessin tila on saatettu vastaamaan aktiivisen • « ; prosessin tilaa, jolloin aktiiviprosessin jäähdytys päät- <#’#· tyy ja se palautetaan ennen lämmityksen aloitusta val- 30 linneeseen kerneltilaan, jollin se voi suorittaa normaale-ja tehtäviä saapuneiden tai saapuvien sanomien mukaisesti, ja että varaprosessi asetetaan samalla jäähdytystilasta normaaliin toimintatilaan.
. 8. Patenttivaatimuksen 4, 5, 6 tai 7 mukainen mene- 1. 35 telmä, tunnettu siitä, että onnistuneen jäähdy- 98595 24 tyksen jälkeen varaprosessin tulevien sanomien jonoon vastaanotetaan seimat sanomat kuin aktiivisen prosessin tulevien sanomien jonoon.
9. Jonkin edellisen patenttivaatimuksen mukainen 5 menetelmä, tunnettu siitä, että tilatietojen onnistuneen lämmityksen jälkeen suoritetaan tarvittaessa aktiiviseen prosessiin liittyvien erillisten datayksiköi-den siirto aktiivisesta ohjausyksiköstä varayksikköön, mainittujen erillisten datayksiköiden ollessa datayksiköi- 10 tä, joita ei käytetä muuttamaan prosessin tilamuuttujia tai synnyttämään sisältöä sisäiselle sanomalle, joka lähetetään toiselle prosessille.
10. Patenttivaatimuksen 9 mukainen menetelmä, tunnettu siitä, että erillisten datayksiköiden 15 siirto käsittää vaiheet tallennetaan siirrettävän erillisen datayksikön nykyinen arvo varayksikössä, pyydetään aktiivista ohjausyksikköä lähettämään mainittu erillinen datayksikkö varayksikölle, 20 luetaan mainittu erillinen datayksikkö aktiivisessa ohjausyksikössä ja lähetetään se varayksikölle, varmistetaan, ettei siirtovaiheen aikana ole tapahtunut datayksikköön kohdistuneita kirjoitustoimenpiteitä, vertaamalla datayksikön nykyistä arvoa varayksikössä mai- 25 nittuun tallennettuun arvoon, ja • · · *· '· jos datayksikön nykyinen arvo ja tallennettu arvo : ovat samat, kirjoitetaan aktiiviselta ohjausyksiköltä vas- • * • \* taanotettu datayksikön arvo varayksikön datayksikön nykyi- seksi arvoksi, 30 jos datayksikön nykyinen arvo ja tallennettu arvo ovat erilaiset, määritetään siirto epäonnistuneeksi ja hylätään aktiiviselta ohjausyksiköltä vastaanotettu datayksikön arvo.
11. Patenttivaatimuksen 9 mukainen menetelmä, 35 tunnettu siitä, että erillisten datayksiköiden 25 9 8 5 9 5 siirto käsittää vaiheet pyydetään aktiivista ohjausyksikköä lähettämään mainittu erillinen datayksikkö varayksikölle, luetaan mainittu erillinen datayksikkö aktiivisessa 5 ohjausyksikössä ja lähetetään se varayksikölle, tarkistetaan onko siirtovaiheen aikana tapahtunut datayksikköön kohdistuneita kirjoitus toimenpiteitä varayk-sikössä, ja kirjoitetaan aktiiviselta ohjausyksiköltä vastaan-10 otettu datayksikön arvo varayksikön datayksikön nykyiseksi arvoksi, jos kirjoitustoimenpiteitä ei ole tapahtunut, määritetään siirto epäonnistuneeksi ja hylätään aktiiviselta ohjausyksiköltä vastaanotettu datayksikön arvo, jos kirjoitusoperaatioita on tapahtunut.
12. Patenttivaatimuksen 9 mukainen menetelmä, tunnettu siitä, että erilliset datayksiköt käsittävät järjestelmän laskutus- ja/tai tilastotietoja.
13. Jonkin edellisen patenttivaatimuksen mukainen menetelmä, tunnettu siitä, että sellaisessa jär-20 jestelmässä, jossa lämmityskokonaisuudet sisältävät kes-kusmuistitiedostoja, joihin useilla prosesseilla on lukuja kirjoituspääsy, lämmityskokonaisuudet lämmitetään sellaisessa järjestyksessä, että tietojen lukijat lämmitetään sen jälkeen kun kirjoittajat ja itse keskusmuistitiedostot ; 25 on lämmitetty. t
· · '· [· 14. Jonkin edellisen patenttivaatimuksen mukainen • · · ί ·’ menetelmä, tunnettu siitä, että reaaliaikainen • · : järjestelmä on puhelinkeskus, joka käsittää kytkentäväli- neet, joiden kautta on selektiivisesti kytkettävissä siir-: 30 toyhteyksiä ensimmäisen siirtokanavaryhmän ja toisen siir- tokanavaryhmän välille, ja että mainittu ohjausväline on kytkennänohjausväline, joka käsittää ainakin yhden, kyt-kennänohjausvälineen sisäiseen tiedonsiirtovälineeseen liittyvän aktiivisen ohjausyksikön, jolla on jatkuvasti 35 tai tarvittaessa varmistuksena mainittuun tiedonsiirtovä- 98595 26 lineeseen liittyvä kuumakorvausperiaatteella toimiva va-rayksikkö, siten että varayksikkö suorittaa rinnakkaisesti samoja kytkennänohjauksen prosesseja kuin aktiivinen ohjausyksikkö . • · • « · • · · « · • 1 · • · · • · • t • t • · · • I · · · Ml • · 1 • « · 98595 27
FI943328A 1994-07-12 1994-07-12 Menetelmä varaprosessin lämmittämiseksi kahdennetussa reaaliaikaisessa järjestelmässä, erityisesti puhelinkeskuksessa FI98595C (fi)

Priority Applications (9)

Application Number Priority Date Filing Date Title
FI943328A FI98595C (fi) 1994-07-12 1994-07-12 Menetelmä varaprosessin lämmittämiseksi kahdennetussa reaaliaikaisessa järjestelmässä, erityisesti puhelinkeskuksessa
AU28891/95A AU691632B2 (en) 1994-07-12 1995-07-10 Method for warming up a spare process in a replicated real-time system, in particular in a telephone exchange
PCT/FI1995/000399 WO1996002115A2 (en) 1994-07-12 1995-07-10 Method for warming up a spare process in a replicated real-time system, in particular in a telephone exchange
JP8504140A JP2992349B2 (ja) 1994-07-12 1995-07-10 複製型リアルタイムシステム、特に電話交換機において予備プロセスをウオームアップする方法
DE69515176T DE69515176T2 (de) 1994-07-12 1995-07-10 Ersatzprozessstartverfahren für ein redundantes echtzeitsystem insbesondere in einer vermittlungsstelle
US08/782,927 US5963634A (en) 1994-07-12 1995-07-10 Method for warming up a spare process in a replicated real-time system, in particular in a telephone exchange
AT95924345T ATE189930T1 (de) 1994-07-12 1995-07-10 Ersatzprozessstartverfahren für ein redundantes echtzeitsystem insbesondere in einer vermittlungsstelle
EP95924345A EP0770242B1 (en) 1994-07-12 1995-07-10 Method for warming up a spare process in a replicated real-time system, in particular in a telephone exchange
CN95194601A CN1096643C (zh) 1994-07-12 1995-07-10 在复制的实时系统中特别是在电话交换机中用于加热一个备用进程的方法

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FI943328 1994-07-12
FI943328A FI98595C (fi) 1994-07-12 1994-07-12 Menetelmä varaprosessin lämmittämiseksi kahdennetussa reaaliaikaisessa järjestelmässä, erityisesti puhelinkeskuksessa

Publications (4)

Publication Number Publication Date
FI943328A0 FI943328A0 (fi) 1994-07-12
FI943328L FI943328L (fi) 1996-01-13
FI98595B FI98595B (fi) 1997-03-27
FI98595C true FI98595C (fi) 1997-07-10

Family

ID=8541090

Family Applications (1)

Application Number Title Priority Date Filing Date
FI943328A FI98595C (fi) 1994-07-12 1994-07-12 Menetelmä varaprosessin lämmittämiseksi kahdennetussa reaaliaikaisessa järjestelmässä, erityisesti puhelinkeskuksessa

Country Status (9)

Country Link
US (1) US5963634A (fi)
EP (1) EP0770242B1 (fi)
JP (1) JP2992349B2 (fi)
CN (1) CN1096643C (fi)
AT (1) ATE189930T1 (fi)
AU (1) AU691632B2 (fi)
DE (1) DE69515176T2 (fi)
FI (1) FI98595C (fi)
WO (1) WO1996002115A2 (fi)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
NO970466L (no) * 1997-02-03 1998-08-04 Ericsson Telefon Ab L M FremgangsmÕte og system for beskyttelse av utstyr og svitsjefunksjonalitet i et telekommunikasjonssystem
US6205449B1 (en) * 1998-03-20 2001-03-20 Lucent Technologies, Inc. System and method for providing hot spare redundancy and recovery for a very large database management system
US6470462B1 (en) 1999-02-25 2002-10-22 Telefonaktiebolaget Lm Ericsson (Publ) Simultaneous resynchronization by command for state machines in redundant systems
US6567376B1 (en) 1999-02-25 2003-05-20 Telefonaktiebolaget Lm Ericsson (Publ) Using system frame number to implement timers in telecommunications system having redundancy
FI109315B (fi) * 1999-12-28 2002-06-28 Nokia Corp Yhteyden järjestäminen verkkoelementissä
GB2359385B (en) * 2000-02-16 2004-04-07 Data Connection Ltd Method for upgrading running software processes without compromising fault-tolerance
US8868448B2 (en) * 2000-10-26 2014-10-21 Liveperson, Inc. Systems and methods to facilitate selling of products and services
US20020073409A1 (en) * 2000-12-13 2002-06-13 Arne Lundback Telecommunications platform with processor cluster and method of operation thereof
DE50101774D1 (de) * 2001-06-28 2004-04-29 Siemens Ag Verfahren zur Verkürzung der Sperrzeit während der Datensicherung einer gemeinsamen Datenbank
US20030039256A1 (en) * 2001-08-24 2003-02-27 Klas Carlberg Distribution of connection handling in a processor cluster
US7694085B2 (en) * 2002-06-14 2010-04-06 Nokia Corporation Warming large dynamic data in redundant functional unit
AU2002345110A1 (en) * 2002-06-14 2003-12-31 Nokia Corporation Warming large dynamic data in redundant functional unit
KR100533017B1 (ko) * 2002-07-26 2005-12-02 엘지전자 주식회사 네트워크 라우터의 이중화장치
US7142640B2 (en) * 2004-03-31 2006-11-28 Sbc Knowledge Ventures, L.P. Method and system of remotely restoring communication lines
JP4704195B2 (ja) * 2005-11-24 2011-06-15 株式会社エヌ・ティ・ティ・ドコモ 利用者情報管理装置及びサービス提供サーバ

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4371754A (en) * 1980-11-19 1983-02-01 Rockwell International Corporation Automatic fault recovery system for a multiple processor telecommunications switching control
US4633039A (en) * 1980-12-29 1986-12-30 Gte Communication Systems Corp. Master-slave microprocessor control circuit
US4466098A (en) * 1982-06-11 1984-08-14 Siemens Corporation Cross channel circuit for an electronic system having two or more redundant computers
SE454730B (sv) * 1986-09-19 1988-05-24 Asea Ab Forfarande och datorutrustning for stotfri omkoppling av funktionen fran aktiva enheter till beredskapsenheter i en centralenhet
FI87716C (fi) * 1991-06-03 1993-02-10 Telenokia Oy Dubbleringsfoerfarande foer ett kopplingssystem, speciellt foer en telefoncentral
JPH0549058A (ja) * 1991-08-16 1993-02-26 Fujitsu Ltd リソース整合処理方式
US5406548A (en) * 1992-12-08 1995-04-11 Nec Corporation Line accommodation circuit capable of switching from an active system to a standby system without a loss of a communication information signal
US5469503A (en) * 1993-07-27 1995-11-21 Aspect Telecommunications Corporation Method for resynchronizing secondary database and primary database with preservation of functionality of an automatic call distribution system

Also Published As

Publication number Publication date
DE69515176D1 (de) 2000-03-30
AU691632B2 (en) 1998-05-21
FI943328A0 (fi) 1994-07-12
ATE189930T1 (de) 2000-03-15
AU2889195A (en) 1996-02-09
WO1996002115A2 (en) 1996-01-25
FI98595B (fi) 1997-03-27
EP0770242B1 (en) 2000-02-23
CN1096643C (zh) 2002-12-18
US5963634A (en) 1999-10-05
DE69515176T2 (de) 2000-08-24
WO1996002115A3 (en) 1996-03-07
FI943328L (fi) 1996-01-13
JPH09507983A (ja) 1997-08-12
CN1156512A (zh) 1997-08-06
EP0770242A2 (en) 1997-05-02
JP2992349B2 (ja) 1999-12-20

Similar Documents

Publication Publication Date Title
FI98595C (fi) Menetelmä varaprosessin lämmittämiseksi kahdennetussa reaaliaikaisessa järjestelmässä, erityisesti puhelinkeskuksessa
KR100625595B1 (ko) 트랜잭션 처리 시스템의 병렬 로깅 방법 및 트랜잭션 로그 처리 시스템
CN109493223B (zh) 一种记账方法及装置
US5799305A (en) Method of commitment in a distributed database transaction
US20060129778A1 (en) Apparatus, system, and method for managing storage space allocation
US5386554A (en) Method and apparatus for reducing data locking time by removing a lock when journal data is written into a main memory journal queue
CN110807064B (zh) Rac分布式数据库集群系统中的数据恢复装置
CN110196759B (zh) 分布式事务处理方法和装置、存储介质及电子装置
CN111784329A (zh) 业务数据的处理方法和装置、存储介质、电子装置
CN104065636A (zh) 数据处理方法和系统
CN113656116B (zh) 业务流程的处理方法和装置
EP0587885B1 (en) Fault tolerant change distribution method in a distributed database system
FI80533B (fi) Kontroll av datamaskinhierarki.
CN118152154A (zh) 基于共享内存开发的通讯控制方法、系统和可读存储介质
CN112632083A (zh) 一种实现索引数据更新的方法、装置及设备
CN112711606A (zh) 数据库访问方法、装置、计算机设备和存储介质
CN112667270A (zh) 语音处理资源的更新方法、计算机设备及存储装置
CN111880908A (zh) 分布式事务的处理方法、装置及存储介质
JPS5994155A (ja) 端末ファイルの保守方式
US5761403A (en) Failure recovery system and failure recovery method in loosely coupled multi-computer system, and medium for storing failure recovery program
US6510456B1 (en) Data transfer control method and system, data transfer control program file, and file storage medium
JPH06510895A (ja) 故障許容通信システム・コントローラ
JP4280306B2 (ja) トランザクションメッセージキューイングシステムのためのログベースデータアーキテクチャ
US6029255A (en) Input/output control device and method applied to fault-resilient computer system
KR0145936B1 (ko) 전전자교환기에 있어서 과금데이타 관리방법

Legal Events

Date Code Title Description
BB Publication of examined application
MA Patent expired