FI113709B - Menetelmä sulautetussa ympäristössä etälaitteen toiminnallisuuden järjestämiseksi - Google Patents

Menetelmä sulautetussa ympäristössä etälaitteen toiminnallisuuden järjestämiseksi Download PDF

Info

Publication number
FI113709B
FI113709B FI20015047A FI20015047A FI113709B FI 113709 B FI113709 B FI 113709B FI 20015047 A FI20015047 A FI 20015047A FI 20015047 A FI20015047 A FI 20015047A FI 113709 B FI113709 B FI 113709B
Authority
FI
Finland
Prior art keywords
functionality
code
server
remote unit
server machine
Prior art date
Application number
FI20015047A
Other languages
English (en)
Swedish (sv)
Other versions
FI20015047A0 (fi
FI20015047A (fi
Inventor
Petri Ahonen
Original Assignee
Nokia Corp
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 Corp filed Critical Nokia Corp
Priority to FI20015047A priority Critical patent/FI113709B/fi
Publication of FI20015047A0 publication Critical patent/FI20015047A0/fi
Priority to US10/303,339 priority patent/US7260618B2/en
Publication of FI20015047A publication Critical patent/FI20015047A/fi
Application granted granted Critical
Publication of FI113709B publication Critical patent/FI113709B/fi

Links

Classifications

    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F5/00Coin-actuated mechanisms; Interlocks
    • G07F5/18Coin-actuated mechanisms; Interlocks specially adapted for controlling several coin-freed apparatus from one place
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F9/00Details other than those peculiar to special kinds or types of apparatus
    • G07F9/001Interfacing with vending machines using mobile or wearable devices
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F9/00Details other than those peculiar to special kinds or types of apparatus
    • G07F9/002Vending machines being part of a centrally controlled network of vending machines
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F9/00Details other than those peculiar to special kinds or types of apparatus
    • G07F9/02Devices for alarm or indication, e.g. when empty; Advertising arrangements in coin-freed apparatus
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
    • 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/99954Version management

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Computer Security & Cryptography (AREA)
  • Telephonic Communication Services (AREA)
  • Computer And Data Communications (AREA)

Description

i 113709
MENETELMÄ SULAUTETUSSA YMPÄRISTÖSSÄ ETÄLAITTEEN TOIMINNALLISUUDEN JÄRJESTÄMISEKSI
Keksinnön kohteena on menetelmä sulautetussa ympäristössä 5 etälaitteen toiminnallisuuden järjestämiseksi, johon osapuolina kuuluu - ainakin yksi etälaite ja ainakin yksi palvelinkone, joiden yhteyteen on järjestetty ainakin suoritin, muistivälineet ja päätelaitevälineet tietoverkossa kommunikoimi- 10 seksi ja jossa molemmille osapuolille on järjestetty yhteys tietoverkkoon, jonka yhteyteen on järjestetty mahdollinen palvelinkoneen ja tietoverkon välinen yhdyskäytävä (GATEWAY) ja jossa osapuolet ja mahdollinen yhdyskäytävä (GATEWAY) toimivat ORB-ytimeen 15 (Object Request Broker) perustuvassa ympäristössä ja jossa etälaitteen toiminnallisuuden järjestämiseksi vaiheittain - yksi sanotuista osapuolista suorittaa toiminnallisuus-pyynnön muodostamisen edellyttämät toimenpiteet, - toiminnallisuuspyyntö saatetaan palvelinkoneelle, 20 - toiminnallisuuspyyntö tulkitaan palvelinkoneella, - palvelinkone suorittaa toiminnallisuuden aikaansaamiseksi edellytetyt toimenpiteet ja . - palvelinkone käsittelee toimenpiteiden seurauksena • * · ‘ < syntyneen tuloksen asetetun kriteerin mukaisesti.
25 Käsitteellä "sulautettu ympäristö" tarkoitetaan yleens". suori-:.· · tinpohjaisen laitteiston ja ohjelmiston muodostamaa yhdistelmää, joka on järjestetty toimimaan osana jotain suurempaa järjestel-: ; mäkokonaisuutta. Ne pyritään yleensä suunnittelultaan järjestä- 30 mään mahdollisimman yksinkertaisiksi eivätkä useinkaan sisällä esimerkiksi massamuistikomponentte j a tai yleensäkään mitään .···. oheislaitteita. Sulautettuja järjestelmiä on sovitettu runsaasti esimerkiksi erilaisiin myyntiautomaatteihin, joista esimerkkinä '· ’· mainittakoon juoma-automaatit.
35
Sulautettuihin järjestelmiin perustuvien laitteiden kytkeminen internetiin ja yleensäkin niiden kaikenlainen verkottaminen 113709 2 tarjoavat runsaasti mahdollisuuksia etälaitteiden älykkyyden lisäämiseen ja paremman kyvyn vastata niiden käyttäjien ja hallinnoinnin edellyttämiin vaatimuksiin.
5 Esimerkkejä tällaisista verkotettujen sulautettujen järjestelmien sovellusalueista voidaan mainita lukemattomia aina kiinteistöjen LVIS-järjestelmistä ja yksinkertaisista energiankulutus-mittauksista suuriin laitteistoihin ja hälytysjärjestelmiin. Esimerkiksi kopiokoneista tunnettua on sulautettujen järjestel-10 mien hyödyntäminen niiden toiminnallisen tilan ilmaisemisessa. Tällöin sulautettujen järjestelmien verkottamisella mahdollistetaan mm. niiden etävalvonta, -analysointi ja -hallinta.
Tunnettuja ratkaisuja sulautettuihin järjestelmiin perustuvien 15 etälaitteiden ulos- ja sisäänpäin tapahtuvalle tiedonsiirrolle edustavat yksinkertaisten laitteistotasolla tapahtuvien tiedonsiirtona japintojen hyödyntäminen, joiden kautta voidaan raportoida esimerkiksi etälaitteiden huollontarpeesta tai niiden myyntituotteiden täydentämistarpeista.
20
Monimutkaisemmat hallintasovellukset edustavat kuitenkin todel- . lista haastetta sulautetuille järjestelmille. Koska sulautetut • _ järjestelmät pyritään usein toteuttamaan mahdollisimman edulli- « · · ···· sesti siten, että niistä puuttuu esimerkiksi suurimittakaavainen 25 tiedon tallennuskapasiteetti, tunnettuja ja yleisesti tieto- · koneverkoissa käytettyjä tiedonsiirtomenetelmiä vieroksutaan ja M": näiden sijasta yleisessä käytössä ovat huomattavasti paljon : : yksinkertaisimmat laitteistotasolla operoivat protokollat.
30 Esimerkkinä tällaisesta yksinkertaisesta, laitteistotason .···. tiedonsiirtoprotokollaa hyödyntävästä toimintatavasta esitetään ·’ sulautetun etälaitteen, kuten esimerkiksi juoma-automaatin, ’· hallintaa ja tilavalvontaa.
35 Tunnetun tekniikan mukaan on juoma-automaatin toiminnallisuus järjestetty usein siten, että etälaitteelle on järjestetty 3 113709 suoritinyksikkö, joka yleensä on mikrokontrolleri ja muistivälineet. Muistivälineisiin on tallennettu mm. juoma-automaatin hallintaan, valvontaan sekä sen toimintaan vaaditut ohjelmistot.
5 Haluttaessa tietoa esimerkiksi juoma-automaatin täyttöasteesta, voidaan valvontajärjestelmän operaattoripäässä tehdä valvonta-kutsu juoma-automaatille. Tämän seurauksena luodaan tiedonsiirtoyhteys tietoverkon, kuten esimerkiksi puhelinverkon kautta operaattoripään palvelinkoneelle. Kun yhteys on osapuolien 10 välille saatu muodostuttua, seuraa useista eri vaiheista muodostuva tiedonsiirtoproseduuri, jossa tietoa siirretään etälaitteelta palvelinkoneelle ja mahdollisesti takaisin.
Tiedonsiirron tapahtuessa osapuolien välillä esimerkiksi sarja-15 liikennemuotoisena, avataan juoma-automaatilta ensin sarjaliikenneyhteys ja välitetään operaattoripään palvelimelle tieto yhteyden onnistuneesta luomisesta. Kun palvelin on todennut yhteyden aukioloa kuvaavan bittijonon, siirretään tietoverkon kautta juoma-automaatin muistirekistereistä tämän sen hetkisen 20 tilan selvittämiseksi välttämättömiä arvoja, joiden perusteella palvelinkone selvittää vastauksen kyselyn kohteena olevaan . asiaan. Tästä seuraa linjan aukioloaikana runsaasti eri vaiheis- « 35 113709 4
Edelleen etälaitteille järjestettyjen sovellusohjelmien päivitettävyys muodostuu niin teknisesti kuin määrällisesti erittäin hankalaksi. Etälaitteen ohjelman päivitystarpeen ilmetessä jokaisella etälaitteella on käytävä suorittamassa toimenpiteitä 5 uuden ohjelmistoversion päivittämiseksi tai peräti uuden sovel-lusmodulin vaihtamiseksi. Kehittyneemmissä versioissa saattaa olla mahdollista ladata tietoverkon kautta jokaiselle etälaitteelle erikseen erityinen päivityspaketti, joka korvaa vanhan ohjelmistoversion. Lukuisien etälaitteiden ja niiden eri versi-10 oiden tapauksessa ohjelmistojen päivittäminen muodostuu entistäkin hankalammaksi.
Etälaitteiden sovelluskehitys on myös hankalaa, koska niiden sovelluskoodi on yleensä mikrokontrolleripohjaista natiivikiel-15 tä. Tällöin ne ovat suorittimen suoraan tulkittavissa olevaa konekieltä, kuten esimerkiksi assembleria, jonka muokkaaminen ja edelleen kehittäminen on erityisen hankalaa vaatien runsaasti ohjelmointiin perehtyneisyyttä ja esimerkiksi kulloinkin käytettävien kiinteiden tietoliikenneprotokollien tuntemusta.
20
Ominaista kuvatunlaisessa ratkaisussa on se, että sen toiminnallisuus on järjestetty kiinteästi etälaitteelle. Jos toiminnalli-: ’* suuden aikaansaaminen ei ole erityisen aikakriittistä niin se voidaan myös järjestää palvelinkoneelle, tiedonsiirron ollessa « « · ·...· 25 kuitenkin kuvatunlaises i vahvasti laitteistotasolla tapahtuvaa.
» » « • « · · *:·*: Kehittyneemmissä toimintatavoissa etätoiminnallisuuden lataami- nen suoritetaan käyttämällä laitteistotason natiivikoodia.
• · · Tällöin kuitenkin dynaamisuuden ja prosessoinnin aikana saumat-30 tomasti vaihtuvan toiminnallisuuden saavuttaminen on vaikeaa ,···, ilman esimerkiksi täydellistä etätiedostonhallintajärjestelmää.
·” Lisäksi tiedonsiirtoon liittyvät viittaukset ovat varsinaisessa ‘ί sovelluskoodissa järjestetty kiinteiksi.
» « i · i • * I » « » t » » 113709 5 US-julkaisuissa US-6, 134,600 (Liu), US-5,991,795 (Howard et ai.) ja US-6,219,677 (Howard) on esitetty kehittyneempiä menetelmiä edellä kuvattujen tilanteiden ratkaisemiseksi.
5 Julkaisussa US-6,134,600 (Liu) kuvataan ratkaisua, jossa tarjotaan etälaitteille palvelinkoneelle sijoitettujen sovellustyöka-luja CORBA -asiakas-palvelin arkkitehtuurissa (Common Object Request Broker Architecture) . Tällöin etälaitteelle sallitaan palvelinkoneelle sijoitettujen työkalujen käyttöoikeus paljasta-10 matta niihin liittyvää toiminnallisuutta. Palvelinkoneella, jolle järjestelmän toiminnallisuus on oleellisesti järjestetty, ylläpidetään JAVA-appletteja. Etälaitteet välittävät analyysin edellyttämät parametrit palvelinkoneelle, jossa JAVA-appletit prosessoivat halutun analyysin. Tämän jälkeen vastaus palaute-15 taan takaisin etälaitteelle. Kuvattu ratkaisu on WEB-pohjainen ja se on sidottu vahvasti TCP/IP -protokollan mukaiseen tietoverkkoon .
Julkaisussa US-5,991,795 (Howard et ai.) esitetään myös tiedon-20 siirtoprotokolla ja menetelmä erityisesti tiedon vaihtamiseksi sulautetuissa järjestelmissä tietoverkon yli. Myös tälle ratkai- , sulle on ominaista HTTP-protokollan käyttö.
» · · « "·* Tällaisia esittäviin kieliin perustuvia menetelmiä, kuten 25 esimerkiksi HTML:n mukaisia JAVA-appletteja, käytetään suoraan :,· : loppukäyttäjään kohdistuvissa vuorovaikutustilanteessa. JAVA- appletteja ei suoranaisesti voida liittää natiiviin sovelluskoo-: : diin eivätkä ne ole dynaamisia. Edelleen myös applettien sijain nit on kiinnitetty aina määriteltyyn HTML-sivuun ja niiden 30 suorittaminen vaatii suhteellisen tehokkaan laitteiston ja * » suorittimen, joiden koot sulautetuissa ympäristöissä pyritään * i * * minimoimaan.
* »
< i » ί * I
• I
* ' * JAVA-profiileissa, kuten J2ME (Java 2 Platform, Micro Edition) 35 on tunnettua määritellä viittaukset etäsovelluksien lataamisek-si. Näiden tarjoamista etälaitteille ja ketjuttamista toisiinsa 6 113709 ei ole kuitenkaan määritelty. JAVA-rajapinnan toiminnallisuus natiiviin koodiin on jokaisessa profiilissa standardisoitu kiinteäksi eikä se ole näin ollen ole sovelluskohtainen.
5 Jo edellä mainittu CORBA on OMG-järjestön määrittelemä verkkokäyttöjärjestelmän ydin. Se mahdollistaa tiedonsiirron yhteensopivuuden eri laite- ja käyttöjärjestelmäalustojen sekä tietoverkkojen välillä aina pienimmistä mikrokontrollereista tehok-kaimpiin mikroprosessoreihin. CORBA-arkkitehtuurin mukainen ORB-10 käyttöjärjestelmäydin suorittaa eri toimintaympäristöjen välillä vaadittavan formaattimuunnoksen, jolloin samalla suodatetaan pois vastaanottavan osapuolen käyttämän ympäristön kannalta epäoleellinen data.
15 CORBA:an perustuva ORB-ydin etsii asiakkaan pyytämän palvelun toteutuksen, muuntaa ja siirtää palveluun liittyvät parametrit, aktivoi tarvittaessa toteutuksen ja siirtää kontrollin palve-luobjektille. Palvelun suorituksen jälkeen ORB palauttaa mahdolliset tulokset asiakkaalle tämän ympäristöön muotoiltuna.
20 JAVA:sta tunnetaan myös JAVA:n sisään rakennettu oma ORB RMI (Remote Method Invocation), joka vastaa CORBA:n ORB-käsitettä.
. '.· RMI on kuitenkin vain kielen laajennus, joten se ei toimi muilla ·· kielillä tehtyjen objektien kanssa. Näin ollen JAVA poistaa 25 laiteympäristöjen väliset rajat, mutta sitoo tiettyyn ohjelmoin-: .·. tikieleen.
... Tätä rajoitetta voidaan kuitenkin yrittää ratkaista JNI:llä "* (JAVA Native Interface) . JNI mahdollistaa myös muilla kielillä 30 tehtyjen komponenttien (esimerkiksi C, C++) kutsumisen JAVA:sta ja päin vastoin. JNI vuorostaan sitoo ohjelman kuitenkin vahvas-...* ti tiettyyn laitteistoarkkitehtuuriin.
• » » ....: Tämän keksinnön tarkoituksena on saada aikaan oleellisesti • · 35 parannettu menetelmä etälaitteen toiminnallisuuden järjestämi- • · i 113709 7 seksi sulautetussa ympäristössä. Keksinnön mukaisen menetelmän tunnusomaiset piirteet on esitetty patenttivaatimuksessa 1.
Keksinnön mukainen menetelmä perustuu esimerkiksi CORBArn 5 kaltaisiin verkkokäyttöjärjestelmäydin arkkitehtuureihin, jotka ovat arkkitehtuurillisesti kykeneviä määrittelemään dynaamisen rajapinnan toiminnallisuuden järjestämiselle. Keksinnön mukainen menetelmä mahdollistaa metodikutsun suorittamisen, jolloin haluttu toiminnallisuus tapahtuu etälaitteella, mutta sen 10 lopputulokset nähdään paikallisesti. Keksinnön mukainen menetelmä mahdollistetaan esimerkiksi CORBA-arkkitehtuurin tarjoamilla ominaisuuksilla, joissa määritellään mm. dynaamiset rajapinnat järjestelmän toiminnallisuudelle ja funktioiden sijaintien levittäminen.
15
Keksinnön mukaisella menetelmällä saavutetaan hyötyinä etälaitteiden oleellisesti pienentynyt muistiresurssitarve, koska niihin liittyvää toiminnallisuutta ei tarvitse tallentaa etälaitteelle. Edelleen menetelmä mahdollistaa etälaitteen metodi-20 kutsuun liittyvän toiminnallisuuden dynaamisen muuttumisen ja oleellisesti parantuneen päivitettävyyden, koska kaikki toiminnallisuutta vastaava koodi on järjestetty keksitetystä palvelin-koneelle. Metodikutsujen prosessointi nopeutuu oleellisesti tunnettuun tekniikkaan nähden, jossa metodikutsuun liittyvä ···. 25 toiminnallisuus suoritetaan nykyisin CORBA-arkkxtehtuurissa ; keskuslaitteella, jolloin päätelaitteen toiminnallisuutta täytyy ! etäkäyttöä metodikutsujen prosessoinnin aikana.
’···’ Keksinnön mukainen menetelmä parantaa oleellisesti sulautettujen 30 järjestelmien turvallisuutta ja yksityisyyttä, koska varsinainen • * sovellusdata voidaan pitää etälaitteella sovelluksen yhteydessä ja palvelinkoneelta noudetut etämetodit voidaan ajaa paikal-.·. : lisympäristössä, joka on dynaaminen ja poistetaan prosessoinnin jälkeen. Muut keksinnön mukaiselle menetelmälle ominaiset 35 piirteet ilmenevät oheisista patenttivaatimuksista.
113709 8
Keksinnön mukaista menetelmää, jota ei ole rajoitettu seuraavas-sa esitettäviin suoritusmuotoihin, selostetaan tarkemmin viittaamalla oheisiin kuviin, joissa 5 Kuva 1 esittää keksinnön mukaista menetelmää käyttävää sovellusesimerkkiä kaaviokuvana,
Kuva 2 esittää karkeaa kaaviota osapuolien loogisista osista, Kuva 3 esittää keksinnön mukaisen menetelmän alkupuoliskoa vuokaaviona ja 10 Kuva 4 esittää keksinnön mukaisen menetelmän jälkipuoliskoa vuokaaviona.
Kuvassa 1 on esitetty esimerkillinen kaavio keksinnön mukaista menetelmää hyödyntävän sovellusesimerkin osapuolista ja kom-15 ponenteista sulautetussa ympäristössä. Etälaitteina esimerkissä ovat juomien myyntiautomaatit 13.1, 13.2, 13.3, jotka ovat maantieteellisesti hajautettu juomien myyntipisteisiin. Juoma-automaattien 13.1, 13.2, 13.3 yhteyteen on järjestetty päätelaitteet 16.1, 16.2, 16.3, jotka yhdistävät ne tietoverkkoon 10. 20 Juoma-automaattien 13.1, 13.2, 13.3 huollosta ja täydennyksestä vastaa esimerkiksi autolla 23 liikkuva huoltomies (SERVICE) 21, jolla on myös välineet 22 tietoverkossa 10 kommunikoimiseksi.
Keksinnön mukaisessa menetelmässä voidaan hyödyntää mitä tahansa 25 langatonta tai langallista tiedonsiirtolinkkiä. Tällaisia ovat ·' esimerkiksi langattomat GSM- (esim. SMS, GPRS) , UMTS- ja muut 3G-teknologiaan perustuvat verkot (esimerkiksi EDGE, TDMA) . Myös ,···. internet-verkon hyödyntäminen eri siirtoprotokollilla on mahdol lista, kuten myös LAN- ja WLAN-verkkojen käyttäminen.
. 30
Sovellusesimerkissä käytetään langatonta GSM-verkkoa 10, jossa ···' kommunikointi voi tapahtua mm. GPRS-tekniikalla (Group Packet : Radio Service) tai PSTN-yhdyskäytävän (Public Switched Telephone >;··’: Network) kautta. Näitä varten tietoverkon 10 yhteyteen on .1. 35 järjestetty välineet, jotka käsittävät ainakin keskukset 31, 32 ”*. (kuva 2) tiedonsiirron mahdollistamiseksi.
113709 9
Palvelinkone 11, joka perustuu CORBA-arkkitehtuurin ORB-ytimeen (Object Request Broker), on kytketty tietoverkkoon 10 myös ORB-ytimeen perustuvan yhdyskäytävän (GATEWAY) 17 kautta. Yhdyskäytävän 17 eräänä tehtävänä on suorittaa protokollamuunnos, joka 5 mahdollistaa erityyppisissä tietoverkoissa toimivien päätelaitteiden välisen tiedonsiirron. Yhdyskäytävä 17 ei ole pakollinen komponentti keksinnön mukaisessa menetelmässä, jos keskenään liikennöivät osapuolet käyttävät samaa tiedonsiirtoprotokollaa, kuten esimerkiksi TCP/IP liikennöinnissä päätelaitteelta 13.2 10 palvelinkoneen 11 IP-osoitteeseen.
Palvelinkoneelle 11 on järjestetty mm. yhteys tietokantaan 12. Juomienjakeluverkoston hallintaa, valvontaa ja raportointia voidaan suorittaa esimerkiksi hallinnan 19 päätelaitteella 20, 15 jolle on järjestetty yhteys esimerkiksi internet-verkon 18 kautta palvelinkoneelle 11. Verkko 18 voi olla myös esimerkiksi yrityksen sisäinen verkko (intranet). Myös huoltoyhtiön päätelaitteen 20 toiminta perustuu ORB-ytimeen.
20 Keksinnön mukaisessa menetelmässä tietoverkon 10 kautta toistensa kanssa kommunikoivat osapuolet ja niiden välillä mahdollisesti olevat toiminnalliset komponentit ovat järjestetty oleelli-: ·’ sesti ORB-ytimeen (Object Request Broker) perustuviksi. Sanottu ORB-ydin pohjautuu CORBA-asiakas-palvelin arkkitehtuuriin . : 25 (Common Object Request Broker Architecture), joka ymmärretään : teollisuusstandardina hajautettujen ohjelmistojen yhteenliittä- • J miseksi.
C0RBA:ssa määritellään mm. rajapintojen kuvauskieli ja ohjel-. 30 mointirajapinta, joita käyttäen asiakas-palvelin -ohjelmat ... voivat siirtää tietoa eri valmistajien CORBA-toteutuksen välil- ;* lä. CORBA-standardin mukaiset ohjelmakomponentit voivat kom- : ’·< munikoida keskenään, vaikka ne olisi esimerkiksi kirjoitettu eri ohjelmointikielillä tai toimisivat eri laitteisto- ja käyttöjär-... 35 jestelmäarkkitehtuureissa. CORBA tarjoaa palveluja mm. kom- ponenttien käsittelyyn ja se hoitaa dataformaattimuunnoksen eri 113709 10 arkkitehtuurien välillä. Oliosuuntautunut CORBA ei sinällään ole ohjelmointimenetelmä, vaan se toimii ikään kuin "liimana" eri ohjelmointikielillä ja laitteilla tehtyjen komponenttien välillä .
5 CORBA:n mukainen ORB-ydin tarjoaa asiakaskomponenteille läpinäkyvän menetelmän muualla sijaitsevien palveluiden kutsumiseen. ORB helpottaa hajautettujen sovellusten ohjelmointia kätkemällä tietoliikenteeseen liittyvät rutiinitoimet, siten 10 että palvelupyyntö näyttää asiakkaalle paikalliselta funktiota! metodikutsulta.
ORB-kätkee mm. palveluobjektin sijainnin, jolloin asiakkaan tarvitsee antaa ORB:lie vain haluamansa palvelun nimen tai 15 ominaisuudet. Palveluobjektin tila ja toteutus ovat myös asiakkaan tietämättömissä, kuten myös sen saavuttamiseksi vaadittava kommunikaatiomenetelmä. ORB:n IDL (Interface Definition Language) on olemassa olevat palvelut tuottava funktiohaun rajapinta-kuvaus, joka ei sisällä kontrollirakenteita vaan ainoastaan 20 rajapinnan funktioiden ja tietotyyppien esittelyn.
Keksinnön mukaisessa menetelmässä etälaite 13.1, 13.2, 13.3 on muodostettu sulautetuksi järjestelmäksi. Etälaitteella 13.1, 13.2, 13.3 on sovelluskortti AM (Application Module) 15.1, 15.2, • 25 15.3, jossa on mm. mahdolliset muistivälineet ja mahdollinen i : : suoritinyksikkö, joka on esimerkiksi mikrokontrolleri tai ;··· mikroprosessori (eivät esitetty). Edelleen etälaitteella 13.1, 13.2, 13.3 on myös ORB-ytimeen perustuvat ja sovelluskorttiin 15.1, 15.2, 15.3 kytketyt päätelaitevälineet 16.1, 16.2, 16.3 , iit§· 30 jolla mahdollistetaan etälaitteen 13.1, 13.2, 13.3 yhteys » * ... esimerkiksi GSM-verkkoon 10. Myös ilman todellista suoritinyk- sikköä, sovelluskorttiin AM 15.1, 15.2, 15.3 sisällytettyä virtuaalitoiminnallisuutta ja muistivälineitä olevat sovellus-korttiratkaisut ovat mahdollisia, jolloin etälaitteen 13.1, ···, 35 13.2, 13.3 toiminnallisuus prosessoidaan päätelaitevälineiden 16.1, 16.2, 16.3 virtuaaliprosessorilla 27, kuva 2. Tällöin joka 113709 11 sovellukseen erikseen räätälöitävä sovelluskortti AM 15.1, 15.2, 15.3 voi olla järjestetty mahdollisimman yksinkertaiseksi.
Kuvassa 2 on karkea kaaviomainen esitys keksinnön mukaisessa 5 menetelmässä käytettävän etälaitteen 13.1 yhteyteen järjestetyn päätelaitteen 16.1 ja palvelinkoneen 11 loogisista osista. Etälaitteen 13.1 yhteyteen järjestetylle päätelaitteelle 16.1 on järjestetty mm. sovellusohjelma 28, ORB-ytimen mukainen metodi-kutsureititin 25 ja paikalliset metodikutsut 26, jossa on 10 päätelaitteen 16.1 "kiinteä toiminta". Virtuaaliprosessori 27 on järjestetty esimerkiksi päätelaitteen 16.1 muistivälineisiin ja se aktivoidaan tarvittaessa. Päätelaite 16.1 on järjestetty yhteyteen juoma-automaatin 13.1 sovelluskortin AM 15.1 kanssa. Päätelaitteelle ei keksinnön mukaisessa menetelmässä tarvitse 15 järjestää lainkaan käyttäjäliityntää.
Tietoverkkoon 10 kuuluu esimerkin mukaisessa tapauksessa sieltä ulos- ja sisäänpäin liikennöinnin mahdollistavia linkkikom-ponentteja, kuten esimerkiksi tekstiviestikeskus (SMSC) 30, GGSN 20 31 (GPRS Gateway Support Node) tai PSTN- yhdyskäytävä 32 (piirikytkentäiselle datalle) . Linkkikomponentit 30, 31, 32 kom munikoivat palvelinkoneelle 11 mahdollisen yhdyskäytävän 17 (GATEWAY) kautta, joka perustuu myös sanottuun ORB-ytimeen.
'” Yhdyskäytävän (GATEWAY) 17 tarkoitus on protokollamuunnoksen 25 ohella suodattaa pois kaikki ylimääräinen eri protokollaa käyttävien tietoverkkojen välillä siirrettävästä datasta, pienentäen näin turhaa liikennettä ja vähentäen verkon 10 . .· kuormitusta.
30 ORB-ytimeen 25 perustuvalla palvelinkoneella 11 reititetään keksinnön menetelmän mukaisesti metodikutsuja. Palvelinkoneelle ··’ 11 on järjestetty yhteys tietokantaan dB 12, joka voi sijaita sen yhteyteen järjestetyissä muistivälineissä tai hajautetusti ..·· tietoverkossa 10. Tietokantaan dB 12 on tallennettu ladattavissa 35 olevien etämetodikutsujen lausekielinen esitys, joita hallitaan ”·_ palvelinkoneen 11 tietokannanhallinta 24 osiolla.
11370? 12
Kuvissa 3 ja 4 kuvataan muutamia sovellusesimerkkejä keksinnön mukaisen menetelmän suoritusmuodoista etälaitteiden 13.1, 13.2, 13.3 toiminnallisuuden järjestämiseksi. Eräässä ensimmäisessä keksinnön mukaisen menetelmän suoritusmuodossa etälaitteen 13.1 5 päätelaitteen 16.1 metodikutsu reititin (ORB) 25 etsii toiminnallisuutta päätelaitteen 16.1 paikallisten metodikutsujen lohkosta 26. Jos sovelluksen 28 pyytämää toiminnallisuutta ei löydetä päätelaitteelta 16.1, muodostetaan etälaitteen 13.1 sovelluksessa 28 palvelupyyntö (request) metodikutsuna (201) , 10 jonka päätelaite 16.1 lähettää(202) verkkoon 10. Metodikutsu välittyy jollain käytettävissä olevalla tiedonsiirtotavalla (SMS, GPRS, jne.) palvelinkoneelle 11.
Metodikutsu reitittyy tietoverkossa 10 palvelinkoneen 11 päähän 15 sijoitetulle mahdolliselle yhdyskäytävälle (GATEWAY) 17, jonka ORB-ydin tekee sinänsä tunnettuja toimenpiteitä kutsun välittämiseksi palvelinkoneen 11 ympäristöön. Palvelinkone 11 vastaanottaa (203) ja tulkitsee metodikutsun ja sen sisältämän toiminnallisuuden (204), jonka perusteella tietokannan hallinta osio 20 24 käy läpi tietokantaa dB 12 ja kokoaa sieltä metodikutsua vastaavan toiminnallisuuden (205) . Palvelinkone 11 lähettää (reply) (206) tietokannastaan dB 12 kokoamansa ohjelmakoodin ’* takaisin metodikutsun tehneelle etälaitteelle 13.1 ORB-ytimen 25 välityksellä oleellisesti vastaavien vaiheiden kautta, kuin : 25 metodikutsun välityksessä.
...| Kuvassa 4 on esitetty ohjelmakoodin lähettämistä seuraavat ,···. etälaitteella 13.1 suoritettavat toimintavaiheet sekä koodin suorituksen seurauksena saatavien tulosten käsittely. Etälaite . 30 13.1 vastaanottaa (301) palvelinkoneen 11 lähettämän ja ORB- ... ytimen tietoverkon 10 eri vaiheissa etälaitteen 13.1 toimintaym- ·*· päristöön soveltuvaksi muokkaaman ohjelmakoodin tallentaen sen • · : ‘.j muistivälineisiinsä (302) .
.’..t 35 Tämän jälkeen etälaitteella 13.1 aktivoidaan sen yhteyteen järjestetty virtuaaliprosessori 27 (303), jolle annetaan syöt- 113709 13 teenä muistiin tallennettu suoritettua metodikutsua vastaava ohjelmakoodi prosessoitavaksi (304). Prosessoinnista saadut tulokset luovutetaan tässä suoritusmuodossa etälaitteen 13.1 sovellusohjelmalle 28 (305) , joka käsittelee tulokset asetetun 5 kriteerin mukaisesti ja suorittaa niitä vastaavat toimenpiteet (306) . Tämän jälkeen metodikutsua vastaava ohjelmakoodi poistetaan etälaitteen 13.1 muistista (307.1) sekä poistetaan myös virtuaaliprosessori 27, jolla ohjelmakoodin prosessointi suoritettiin (307.2) .
10
Kuvissa 3 ja 4 on esitetty myös eräs toinen keksinnön mukaisen menetelmän suoritusmuoto, joka poikkeaa ensimmäisestä suoritusmuodosta metodikutsun muodostus- ja tulostenkäsittelyvaiheitten osalta. Toisen suoritusmuodon alku- ja loppuvaiheiden kulkua 15 kuvataan katkoviivanuolilla, muutoin yhtenäisillä nuoliviivoil-la. Tässä suoritusmuodossa metodikutsu muodostetaan palvelinkoneella 11 ajettavassa juoma-automaattien hallinnointisovelluk-sessa (207). Palvelinkone 11 tulkitsee ja hakee tietokannastaan dB 12 metodikutsun suorittamiseen vaadittavat komponentit, 20 joista se kokoaa metodikutsua vastaavan toiminnallisuuden (204 -205) . Tämän jälkeen palvelinkone 11 lähettää kokoamansa ohjelmakoodin (206) sen kohteena olevalle juoma-automaatille 13.1. Tätä '·· seuraa vaiheet (301 - 304), jotka on kuvattu oleellisesti « ensimmäisessä suoritusmuodossa.
i * . « · 25 > i ·
Kun juoma-automaatilla 13.1 ajettava virtuaaliprosessori 27 on prosessoinut koodin (304), sen seurauksena saadut tulokset se ’··, lähettää (305c) takaisin palvelinkoneelle 11. Palvelinkone 11 vastaanottaa tulokset (308) ja suorittaa ennalta asetetut . 30 tuloksen mukaiset toimenpiteet (309). Koodi poistetaan juoma- k » automaatin 13.1 muistista ja virtuaaliprosessori 27 hävitetään, kuten ensimmäisessäkin suoritusmuodossa (307.1, 307.2).
» > * I * ;·*: Eräässä kolmannessa keksinnön mukaisessa suoritusmuodossa 35 metodikutsu muodostetaan toisella etälaitteella, kuten juoma- » * automaatilla 13.2 tai esimerkiksi järjestelmää hallinnoivan »lii*
» I
113709 14 operaattorin 19 päätelaitteella 20. Tämä suoritusmuoto poikkeaa myös sanotusta ensimmäisestä suoritusmuodosta menetelmän alkuja loppuvaiheiden kohdalla ja näihin poikkeaviin vaiheisiin on viitattu kuvissa 3 ja 4 pisteviivanuolilla, muutoin noudatetaan 5 yhtenäistä nuoliviivaa. Toinen etälaite voi olla esimerkiksi sanottu järjestelmää hallinnoivan operaattorin 19 päätelaite 20, jolla esimerkiksi WEB-selaimella internetverkon 18 kautta hallinnoidaan palvelinkonetta 11. Operaattori 19 määrittelee WEB-selaimellaan haluamaansa toiminnallisuutta vastaavan metodi-10 kutsun (208) ja lähettää sen internet-verkon 18 kautta joko palvelinkoneelle 11 (209a) tai mahdollisesti suoraan toiminnallisuuden kohteena olevalle juoma-automaatille 13.1 (209b).
Jos metodikutsu lähetetään suoraan toiminnallisuuden kohteena 15 olevalle juoma-automaatille 13.1, tämä vastaanottaa metodikutsun ja lähettää (202) sen edelleen palvelinkoneelle 11. Palvelinkone 11 vastaanottaa metodikutsun (203), jonka jälkeen palvelinkone 11 ja metodikutsun kohteena oleva juoma-automaatti 13.1 toimivat oleellisesti vaiheiden (203 - 304) mukaisesti, kuten on esitetty 20 ensimmäisessä suoritusmuodossa.
Juoma-automaatin 13.1 virtuaaliprosessorilla 27 saadut tulokset • ** lähetetään palvelinkoneelle 11 (305a) tai/ja metodikutsun « t · tehneelle hallinnon 19 päätelaitteelle 20 (305b) . Nämä vastaan-,,,· 25 ottavat tulokset (308, 310) ja suorittavat tuloksen edellyttämät \ l · toimenpiteet asetetun kriteerin mukaisesti (309, 311). Suoritet- ;··: tava koodi ja virtuaaliprosessori 27 poistetaan (307.1, 307.2) etälaitteelta 13.1.
30 Sanottu toinen etälaite voi olla myös esimerkiksi huoltomiehen ··' 21 matkaviestinpäätelaite 22, joka on varustettu esimerkiksi WAP-selaimella. Huoltomies 21 on yhteydessä päätelaitteensa 22 WAP-selaimella palvelinkoneeseen 11, joka tällöin toimii WAP-palvelimena. Huoltomies 21 valitsee palvelinkoneella 11 ylläpi-,*·. 35 detyistä WAP-palveluista haluamansa toiminnallisuuden, jonka edellyttämät toimenpiteet palvelinkone 11 suorittaa. Tämän 15
11370P
jälkeen palvelinkone 11 ja metodikutsun kohteena oleva juoma-automaatti 13.1 toimivat vaiheiden (204 - 305) mukaisesti, kuten on esitetty ensimmäisessä suoritusmuodossa. Tulosten lähetys (305) voi tapahtua palvelinkoneen 11 kautta myös huoltomiehen 21 5 matkaviestinpäätelaitteeseen 22, joka vastaanottaa ne ja ryhtyy niiden edellyttämiin toimenpiteisiin.
Myös määrämuotoisia SMS-viestejä voidaan käyttää metodikutsun aktivointiin ja kohdistamiseen. Tämä edellyttää kuitenkin pääte-10 laitteelta 21 esimerkiksi ORB-tukea ja sen päällä toimivaa käyttöliittymäsovellusta (ei esitetty).
Erään neljännen edullisen suoritusmuodon mukaan prosessoitu metodikutsu voi myös toimia monitorointifunktiona (ei esitetty) . 15 Tällöin metodikutsuun on sovitettu reittikartta, jonka mukaan se suunnistaa etälaitteelta 13.1, 13.2, 13.3 toiselle. Suoritusmuodossa joku osapuolista tekee metodikutsun, jolloin sen toiminnallisuutta vastaava koodi ohjautuu palvelinkoneelta 11 kutsun kohteena olevaan ensimmäiseen etälaitteeseen 13.3.
20
Ensimmäisessä etälaitteessa 13.3 se kutsua vastaava koodi, joka . edellä kuvatulla tavalla sille toimitetaan, prosessoidaan myös • ** edellä kuvatulla tavalla. Prosessoinnin aikana aktivoidaan ···· toinen metodikutsu, joka osoitetaan suoraan reittikartan mukai- ·...· 25 sesi i etälaiteelle 13.2. Kutsun mukana välitetään myös metodi- ;.· : kutsun toiminnallisuuteen liittyvä koodi ja data etälaiteelle 13.2, jossa toimitaan vastaavalla tavalla. Reittikartan lopussa metodikutsun prosessoinnin seurauksena syntynyt kokonaistulos osoitetaan ensimmäiselle kutsujalle, joka voi olla esimerkiksi 30 juoma-automaattien valvontaa suorittava palvelinkone 11.
Keksinnön mukaisessa menetelmässä ei sovellusohjelman 28 välttä-’. : mättä tarvitse absoluuttisesti määritellä kohdelaitetta, jonne viesti kulkee (kuten CORBA:ssa yleensä määritellään kohde-.·**. 35 objekti) , mutta sekin on kyllä mahdollista. Tällöin kuvattu ____: menetelmä toimisi vain, kun kohde-objekti on päätelaite. Poik- 113709 16 keustilanteiden selvittämiseksi voidaan sovellusohjelmalle lähettää missä tahansa menetelmävaiheessa ilmoitus, jolla halutun toiminnallisuuden saavuttamiseksi vaaditut toimenpiteet on keskeytetty. Tämän jälkeen toimitaan mahdollisesti ennalta 5 asetetusti poikkeustilanteen edellyttämällä tavalla.
Metodikutsua ei erään edullisen suoritusmuodon mukaan poisteta sen prosessoinnin jälkeen etälaitteen 13.1, 13.2, 13.3 muistista. Tällöin metodikutsu säilytetään etälaitteen 13.1, 13.2, 13.3 10 muistissa myös sen prosessoinnin jälkeenkin ja tätä taltiointia voidaan edullisesti käyttää järjestelmän verkkokäteismuistina. Tämän tekee mahdolliseksi metodien dynaaminen osoitus, jonka perusteella niiden sijainnit ovat jatkuvasti osapuolien selvitettävissä metodien suorituspaikan ollessa palvelinkoneen 11 15 suhteen vapaa.
Tavanomaisesti metodirajapintamäärittely IDL toimii kiinteänä, jolla palvelinkone 11 ja sovellusohjelma 28 käskevät esimerkiksi päätelaitteen 16.1 toimintaa. Jos palvelinkoneen 11 etälaitteel-20 le 13.1 lähettämä metodi säilytetään kuvatulla tavalla etälaitteen 13.1, 13.2, 13.3 muistissa myös sen prosessoinnin jälkeen-. kin, päätelaitteen 16.1 ORB:n IDL:ää (Interface Definition * ** Language) eli metodirajapintakuvausta voidaan erään edullisen ···· sovellusmuodon mukaan muuttaa. Päätelaite 16.1 voi tällöin 25 informoida lisärajapinnan tarjolra olosta johtuvaa IDL:n dynaa-· mistä muutosta. Toimintaa voi ehdottaa myös toiminnallisuuden pyytäjä antamalla kutsussaan tiedon metodirajapinnan pysyvästä muutoksesta.
____: 30 Keksinnön mukainen menetelmä voidaan toteuttaa käyttämällä « « .···. esimerkiksi kahta suoritinta, joista toinen on palvelinkoneella *·* 11 prosessoimassa etälaitteiden 13.1, 13.2, 13.3 tekemiä metodi- \ ·: kutsuja ja toinen etälaitteella 13.1, 13.2, 13.3 prosessoimassa palvelinkoneelta 11 lähetettyä metodikutsua vastaavaa koodia. 35 Toteutus myös yhdellä prosessorilla on mahdollista, jos etälait- 17 11370? teen 13.1, 13.2, 13.3 yhteyteen järjestetty suoritin toteutetaan niin sanottuna Java-virtuaalikoneena 27.
Tallennettu koodi voi olla esimerkiksi natiivia konekieliseksi 5 käännettyä prosessorikoodia (assembly) tai vaihtoehtoisesti jotain korkeamman tason kieltä (esimerkiksi Java:a), joka tulkitaan prosessoinnin aikana. Esimerkkinä tällaisesta koodista on ns. "rajoitettu Java", J2ME (Java 2, Micro Edition), joka on tarkoitettu erityisesti mobiilisovelluksiin.
10
Java-virtuaalikoneen päällä toimivalla J2ME MIDP-profiililla (Mobile Information Device Profile), jota keksinnön mukaisen menetelmän toteuttavissa metodikutsuissa voidaan käyttää, on spesifioituja metodeja ladattavan koodin strukturointiin, mutta 15 ei ladattavien reititysten hallinnointiin eikä latauksen käyttö-olosuhteisiin. Etälaitteella 13.1, 13.2, 13.3 ajettava virtuaa-liprosessori 27 voi olla esimerkiksi J2ME-spesifikaation mukainen tai rajoitettuihin ympäristöihin tarkoitettuun Java-virtuaa-likoneeseen KVM -java (K Virtual Machine) perustuva.
20
Minimi informaatio, jonka palvelinkone 11 tarvitsee toiminnalli-suuspyynnön toteuttamiseksi, on toiminnallisuuspyyntö ja sen : *' spesifioitu kohde.
·...· 25 On ymmärrettävä, että edellä oleva selitys ja siihen liittyvät : · .* kuvat on tarkoitettu ainoastaan havainnollistamaan esillä olevaa M» « ·;··; keksinnön mukaista menetelmää. Keksintöä ei siten ole rajattu pelkästään edellä esitettyihin tai patenttivaatimuksissa määriteltyihin suoritusmuotoihin, vaan alan ammattimiehelle tulevat 30 olemaan ilmeisiä monet erilaiset keksinnön variaatiot ja muun- • · nokset, jotka ovat mahdollisia oheisten patenttivaatimusten ’’’ määrittelemän keksinnöllisen ajatuksen puitteissa.
• »

Claims (10)

113709 18
1. Menetelmä sulautetussa ympäristössä etälaitteen (13.1) toiminnallisuuden järjestämiseksi, johon osapuolina kuuluu 5 - ainakin yksi etälaite (13.1) ja ainakin yksi palvelinko ne (11), joiden yhteyteen on järjestetty ainakin suoritin (27, 24) , muistivälineet (26, 12) ja päätelaitevälineet (16.1) tietoverkossa (10) kommunikoimiseksi ja jossa molemmille osapuolille (13.1, 11) on järjestetty yhteys 10 tietoverkkoon (10), jonka yhteyteen on järjestetty mahdollinen palvelinkoneen (11) ja tietoverkon (10) välinen yhdyskäytävä (17) (GATEWAY) ja jossa osapuolet (13.1, 11) ja mahdollinen yhdyskäytävä (17) (GATEWAY) toimivat ORB-ytimeen (Object Request Broker) perustuvassa ympäristössä ja jossa etälaitteen (13.1) 15 toiminnallisuuden järjestämiseksi vaiheittain - yksi sanotuista osapuolista (13.1, 11) suorittaa toimin-nallisuuspyynnön muodostamisen edellyttämät toimenpiteet, - toiminnallisuuspyyntö saatetaan palvelinkoneelle (11), - toiminnallisuuspyyntö tulkitaan palvelinkoneella (11) , 20 - palvelinkone (11) suorittaa toiminnallisuuden aikaansaamiseksi edellytetyt toimenpiteet ja - palvelinkone (11) käsittelee toimenpiteiden seurauksena syntyneen tuloksen asetetun kriteerin mukaisesti, « · « tunnettu siitä, että toiminnallisuuspyyntö muodostetaan metodi-25 kutsuksi, jonka mukaisesti palvelinkone (11) kokoaa muistiväli -j ! neistään (12) sanotuksi tulokseksi metodikutsussa määritellyn ;·*: toiminnallisuutta vastaavan koodin, joka lähetetään, välitetään ja vastaanotetaan kussakin vaiheessa sanotun ORB-ytimen käsitte- • * · lemänä etälaitteen (13.1) päätelaitteella (16.1), jonka jälkeen 30 vaiheittain t · .··_ - etälaitteen (13.1) vastaanottama koodi tallennetaan sen ’!* muistivälineisiin, - etälaitteella (13.1) aktivoidaan virtuaaliprosessori ·:··: (27), ,···, 35 - sanottu koodi suoritetaan virtuaaliprosessorilla (27), 11370? 19 - suorituksesta saatu tulos käsitellään asetetun kriteerin mukaisesti ja - virtuaaliprosessori (27) passivoidaan etälaitteen (13.1) muistivälineistä. 5
2. Patenttivaatimuksen 1 mukainen menetelmä, tunnettu siitä, että tietoverkko (10) on langaton matkaviestinverkko, kuten esimerkiksi GSM- tai 3G-teknologiaan perustuva verkko.
3. Patenttivaatimuksen 1 tai 2 mukainen menetelmä, tunnettu siitä, että toiminnallisuuden sisältävä koodi poistetaan etälaitteen (13.1) muistivälineistä sen suorituksen jälkeen.
4. Patenttivaatimuksen 1 tai 2 mukainen menetelmä, tunnettu 15 siitä, että toiminnallisuuden sisältävä koodi säilytetään etälaitteella (13.1) verkkokäteismuistina.
5. Jonkin patenttivaatimuksen 1-4 mukainen menetelmä, tunnettu siitä, että koodi on natiivia prosessorikoodia, joka on suoraan 20 virtuaaliprosessorin (27) tulkittavissa olevassa muodossa.
6. Jonkin patenttivaatimuksen 1-5 mukainen menetelmä, tunnettu " siitä, että koodi on jotain lausekieltä, kuten esimerkiksi Java:a, jota tulkitaan prosessoinnin aikana. 25
7. Patenttivaatimuksen 6 mukainen menetelmä, tunnettu siitä, n * ...·· että koodi on järjestetty J2ME -formaattiin (Java 2, Micro ,*·*. Edition) . . 30 8. Patenttivaatimuksen 6 tai 7 mukainen menetelmä, tunnettu • i ... siitä, että virtuaaliprosessori (27) on J2ME-spesifikaation mukainen. • » I t » • t
9. Patenttivaatimuksen 8 mukainen menetelmä, tunnettu siitä, t···. 35 että virtuaaliprosessori (27) on rajoitettuihin ympäristöihin • · • · · » · 113709 20 tarkoitettu Java virtuaalikone, kuten esimerkiksi KVM (K Virtual Machine).
10. Jonkin patenttivaatimuksen 1-9 mukainen menetelmä, tunnet-5 tu siitä, että metodikutsun yhteyteen on järjestetty reititys-kartta, jonka mukaan metodikutsu prosessoidaan ainakin kahdessa etälaitteessa (13.1, 13.2) ja jossa lopuksi reitityksen seurauksena saatu tulos välitetään metodikutsun alkuun laittaneelle osapuolelle. « · · ♦ • « · · « · • · 21 1 1270?
FI20015047A 2001-12-10 2001-12-10 Menetelmä sulautetussa ympäristössä etälaitteen toiminnallisuuden järjestämiseksi FI113709B (fi)

Priority Applications (2)

Application Number Priority Date Filing Date Title
FI20015047A FI113709B (fi) 2001-12-10 2001-12-10 Menetelmä sulautetussa ympäristössä etälaitteen toiminnallisuuden järjestämiseksi
US10/303,339 US7260618B2 (en) 2001-12-10 2002-11-25 Method in an embedded environment for arranging functionality of a remote device

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FI20015047A FI113709B (fi) 2001-12-10 2001-12-10 Menetelmä sulautetussa ympäristössä etälaitteen toiminnallisuuden järjestämiseksi
FI20015047 2001-12-10

Publications (3)

Publication Number Publication Date
FI20015047A0 FI20015047A0 (fi) 2001-12-10
FI20015047A FI20015047A (fi) 2003-06-11
FI113709B true FI113709B (fi) 2004-05-31

Family

ID=8562657

Family Applications (1)

Application Number Title Priority Date Filing Date
FI20015047A FI113709B (fi) 2001-12-10 2001-12-10 Menetelmä sulautetussa ympäristössä etälaitteen toiminnallisuuden järjestämiseksi

Country Status (2)

Country Link
US (1) US7260618B2 (fi)
FI (1) FI113709B (fi)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FI113709B (fi) * 2001-12-10 2004-05-31 Nokia Corp Menetelmä sulautetussa ympäristössä etälaitteen toiminnallisuuden järjestämiseksi
US20040158474A1 (en) * 2003-02-06 2004-08-12 Karschnia Robert J. Service facility for providing remote diagnostic and maintenance services to a process plant
GB0313375D0 (en) * 2003-06-10 2003-07-16 Symbian Ltd Method of connecting a client running on a computing device to a server running on a different computing device
WO2005036411A1 (en) * 2003-09-29 2005-04-21 Realm Systems, Inc. Mobility device platform
KR20060097130A (ko) * 2003-11-18 2006-09-13 코닌클리케 필립스 일렉트로닉스 엔.브이. 판독-전용 저장 매체를 가상적으로 재기입할 수 있게렌더링하기 위한 방법 및 시스템
FR2864398A1 (fr) * 2003-12-23 2005-06-24 France Telecom Terminal de telecommunication a deux espaces d'execution
TWI284473B (en) * 2005-08-03 2007-07-21 Lite On Technology Corp Application update methods and mobile communication devices utilizing the same
CN102692903B (zh) * 2012-05-31 2016-01-13 景津环保股份有限公司 压滤机远程操作控制系统
CN110009803A (zh) * 2017-12-26 2019-07-12 广州因文际会品牌策划有限公司 一种基于互联网的计算机零配件售卖系统

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6134600A (en) * 1996-07-01 2000-10-17 Sun Microsystems, Inc. Method and apparatus for dynamic derivatives desktops
US5991795A (en) * 1997-04-18 1999-11-23 Emware, Inc. Communication system and methods using dynamic expansion for computer networks
US6125383A (en) * 1997-06-11 2000-09-26 Netgenics Corp. Research system using multi-platform object oriented program language for providing objects at runtime for creating and manipulating biological or chemical data
US6098108A (en) * 1997-07-02 2000-08-01 Sitara Networks, Inc. Distributed directory for enhanced network communication
US5958004A (en) * 1997-10-28 1999-09-28 Microsoft Corporation Disabling and enabling transaction committal in transactional application components
US6202207B1 (en) * 1998-01-28 2001-03-13 International Business Machines Corporation Method and a mechanism for synchronized updating of interoperating software
US6219677B1 (en) 1998-05-01 2001-04-17 Emware, Inc. Split file system
US6279030B1 (en) * 1998-11-12 2001-08-21 International Business Machines Corporation Dynamic JAVA™ class selection and download based on changeable attributes
US6591272B1 (en) * 1999-02-25 2003-07-08 Tricoron Networks, Inc. Method and apparatus to make and transmit objects from a database on a server computer to a client computer
US20030208641A1 (en) * 1999-03-09 2003-11-06 Wesemann Darren L. Software components as virtual processors
US6370436B1 (en) 1999-03-26 2002-04-09 Emware, Inc. Distributed objects for a computer system
US6430619B1 (en) * 1999-05-06 2002-08-06 Cisco Technology, Inc. Virtual private data network session count limitation
JP2000322288A (ja) * 1999-05-06 2000-11-24 Fujitsu Ltd 分散オブジェクト開発システム、および、分散オブジェクト開発をコンピュータに実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体
GB9920676D0 (en) 1999-09-01 1999-11-03 Tao Group Ltd Translating and executing object-oriented computer programs
US6898618B1 (en) * 2000-05-09 2005-05-24 Sun Microsystems, Inc. Client-specified display services in a distributed computing environment
US20030005407A1 (en) * 2000-06-23 2003-01-02 Hines Kenneth J. System and method for coordination-centric design of software systems
US6836765B1 (en) * 2000-08-30 2004-12-28 Lester Sussman System and method for secure and address verifiable electronic commerce transactions
US6901429B2 (en) * 2000-10-27 2005-05-31 Eric Morgan Dowling Negotiated wireless peripheral security systems
TW586069B (en) * 2001-03-01 2004-05-01 Ibm A method and a bridge for coupling a server and a client of different object types
US20020138727A1 (en) * 2001-03-26 2002-09-26 International Business Machines Corporation System and process for enhancing method calls of special purpose object-oriented programming languages to have security attributes for access control
US6954754B2 (en) * 2001-04-16 2005-10-11 Innopath Software, Inc. Apparatus and methods for managing caches on a mobile device
US20020188941A1 (en) * 2001-06-12 2002-12-12 International Business Machines Corporation Efficient installation of software packages
US20030018964A1 (en) * 2001-07-19 2003-01-23 International Business Machines Corporation Object model and framework for installation of software packages using a distributed directory
FI113709B (fi) * 2001-12-10 2004-05-31 Nokia Corp Menetelmä sulautetussa ympäristössä etälaitteen toiminnallisuuden järjestämiseksi

Also Published As

Publication number Publication date
US20030110238A1 (en) 2003-06-12
US7260618B2 (en) 2007-08-21
FI20015047A0 (fi) 2001-12-10
FI20015047A (fi) 2003-06-11

Similar Documents

Publication Publication Date Title
US6430164B1 (en) Communications involving disparate protocol network/bus and device subsystems
US8626934B2 (en) System and method for controlling access to legacy push protocols based upon a policy
US20040117494A1 (en) Method and system for dynamically reconfiguring pervasive device communication channels
US20070169107A1 (en) Method of configuring parameters of machine-to-machine module and machine-to-machine module
EP2378741B1 (en) Systems and Methods for Conducting Communications Among Components of Multidomain Industrial Automation System
EP1345456A2 (en) Mobile services platform architecture
EP1285338A2 (en) Protocol stacks
US20040230965A1 (en) Mobile handset network that facilitates interaction between a generic intelligent responsive agent and a service broker server
EP2378716B1 (en) Systems for conducting communications among components of multidomain industrial automation system
US8984533B2 (en) Systems and methods for conducting communications among components of multidomain industrial automation system
US7746824B2 (en) Method and apparatus for establishing multiple bandwidth-limited connections for a communication device
FI113709B (fi) Menetelmä sulautetussa ympäristössä etälaitteen toiminnallisuuden järjestämiseksi
FI114581B (fi) Ohjelmistokehitysympäristö
US8725864B2 (en) Communication management network system and method for managing a communication network
FI111586B (fi) Siirtosovittimen hallinta yhdyskäytäväpalvelimessa
CN101080899B (zh) 用于远程服务器管理的方法和系统
EP1312225A1 (en) System and method for the provision of services over different networks
Martsola et al. Machine to machine communication in cellular networks
Sifalakis et al. A generic active service deployment protocol
KR100423634B1 (ko) 씨오알비에이-에스엔엠피 트랩 서버
US20050198138A1 (en) Automation device comprising an interface for message-based and port-based accessing of an application
IE20000442A1 (en) Bearer access in wireless communication systems
KR20040001291A (ko) 망 요소 관리 시스템에서 장치 연동 서버 및 방법
Cecílio et al. Configuration Interface for Industrial Wireless Sensor Networks
EP1379962B1 (en) Scalable server architecture systems and methods

Legal Events

Date Code Title Description
MA Patent expired