FI90805B - Menetelmä ja laite sivukehyksen korvaamiseksi tietojenkäsittelyjärjestelmässä - Google Patents

Menetelmä ja laite sivukehyksen korvaamiseksi tietojenkäsittelyjärjestelmässä Download PDF

Info

Publication number
FI90805B
FI90805B FI872396A FI872396A FI90805B FI 90805 B FI90805 B FI 90805B FI 872396 A FI872396 A FI 872396A FI 872396 A FI872396 A FI 872396A FI 90805 B FI90805 B FI 90805B
Authority
FI
Finland
Prior art keywords
page
main memory
defining means
new
state
Prior art date
Application number
FI872396A
Other languages
English (en)
Swedish (sv)
Other versions
FI90805C (fi
FI872396A0 (fi
FI872396A (fi
Inventor
Victor M Morganti
James B Geyer
Original Assignee
Honeywell Bull
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 Honeywell Bull filed Critical Honeywell Bull
Publication of FI872396A0 publication Critical patent/FI872396A0/fi
Publication of FI872396A publication Critical patent/FI872396A/fi
Publication of FI90805B publication Critical patent/FI90805B/fi
Application granted granted Critical
Publication of FI90805C publication Critical patent/FI90805C/fi

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/12Replacement control
    • G06F12/121Replacement control using replacement algorithms
    • G06F12/123Replacement control using replacement algorithms with age lists, e.g. queue, most recently used [MRU] list or least recently used [LRU] list
    • G06F12/125Replacement control using replacement algorithms with age lists, e.g. queue, most recently used [MRU] list or least recently used [LRU] list being generated by decoding an array or storage
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

90805
Menetelmä ja laite sivukehyksen korvaamiseksi tietojenkäsittelyjärjestelmässä. Förfarande coh anordning för ersättning av bildsida i ett dataprocessorsystem
Keksinnön kohteena ovat yleisesti tietojenkäsittelyjärjestelmät, ja tarkemmin sanottuna sellaiset tietojenkäsittelyjärjestelmät, joilla on lukuisia keskusyksiköltä, jotka käyttävät virtuaali-osoitustekniikkaa yhteydenpidossaan päämuistiyksikköön.
Uudenaikaisessa tietojekäsittelyjärjestelmässä käytetään tyypillisesti hierarkista muistijärjestelmää. Se tietomäärä, johon tietojenkäsittelyjärjestelmällä on pääsy, on talletettu massa-talletuslaitteelle, kuten magneettinauhalle, magneettilevylie, tai muulle laitteelle, joka pystyy tallettamaan suuria määriä digitaalista tietoa. Nämä laitteet ovat tyypillisesti liian hitaita, jotta ne voisivat sallia talletetun tiedon suoran osoituksen keskusyksiköltä. Muistiyksikkö, jota yleensä kutsutaan päämuistiyksiköksi, on toteutettu nopeammalla tekniikalla, ja se tallettaa sen tiedon osia, jota tietojenkäsittelyjärjestelmä tarvitsee. (Vaikka se ei tähän keksintöön liitykkään, kuuluu tietojenkäsittelyjärjestelmään yleensä vielä nopeammalla tekniikalla toteutettu muisti keskusyksikölle erittäin tärkeän tiedon tallettamiseksi, ja tämä sijaitsee fyysisesti keskusyksikössä. Prosessorissa sijaitseva muistilaite on edullisempi kuin puskuri- tai välimuisti.)
Jokaiselle prosessorilla on käyttöjärjestelmän avulla pääsy kaikkeen saatavilla olevaan tietoon, joka liittyy tietojenkäsittelyjärjestelmään, ja se voi käyttää tätä tietoa halutulla tavalla. Käytännössä, koska sen tiedon määrä, joka on prosessorin saatavilla, olisi halutun tiedon saannilla massamuisteilta ratkaiseva vaikutus prosessin suorituksen tehokkuuteen. Tieto, jota tietojenkäsittelyjärjestelmä tarvitsee välittömästi, on talletettu päämuistiyksikköön. Koska kaiken tiedon tallettaminen päämuistiyksikköön on epäkäytännöllistä, on tieto jaettu tietolohkoihin, joita kutsutaan sivuiksi, ja jotka syötetään päämuistiin yhtenäisinä.
2
Virtuaalimuistitekniikoissa tietojenkäsittely-yksikön toiminnan aluksi allokoi käyttöjärjestelmä käytettävissä olevan tilan pää-muistiyksikössä. Päämuistitila allokoidaan ohjelmille/ taulukoille ja niille käyttöjärjestelmän osille/ joita tarvitaan tietojenkäsittelyjärjestelmän toimintaa varten. Tämän muistialueen sisältöä ei korvata kuten tyypillisesti tehdään jäljellejäävälle päämuistiin talletetulle tiedolle. Muistiyksikön jäljellejäävä osa on jaettu samansuuruisiin lohkoihin, joihin voidaan tallettaa toisiinsa liittyviä tietosignaaliryhmiä, jotka ovat tärkeitä tietojenkäsittelyjärjestelmälle. Näitä tietosignaalilohkoja kutsutaan sivukehyksiksi. Jokaiseen sivukehykseen liittyy ryhmä tietosignaaleja toisiinsa liittyvien signaalien taulukkona, jota kutsutaan sivukehysmäärittelijäksi. Käyttöjärjestelmä voi viitata sivukehysmäärittelijään, ja sivukehysmäärittelijä identifioi tai osoittaa siihen liittyvän sivumäärittelijän paikkaan. Sivu-määrittelijä sisältää tietoa, joka liittää tietojenkäsittelyjärjestelmän prosessoreiden käsittelemät virtuaaliset tai symboliset osoitteet todellisiksi tai fyysisiksi osoitteiksi sinne, missä alkuperäinen tieto on talletettu. Jokaiseen sivumääritte-lijään liittyy myös signaaleja, jotka ilmaisevat tilatiedon. Sivumääritteli jä sisältää myös tietosignaaleja paikassa, jota kutsutaan linkittäjäksi, ja joka ilmaisee sivukehysten järjestyksen edeltävalitun algoritmin mukaisesti, joka määrittää, kuinka sivukehysten järjestys on määriteltävä.
Tietojenkäsittelyjärjestelmän käynnistyksen jälkeen tarvitsee prosessori ryhmän tietosignaaleja. Ohjelmistoproseduuri muodostaa tiedon, joka liittää fyysisen osoitteen symboliseen osoitteeseen halutulle ryhmälle tietosignaaleja. Nämä toisiinsa liittävä tieto on talletettu sivumäärittelijään. Soveltuva tieto syötetään sivukehysmäärittelijän linkittäjäosaan ilmaisten, että tämä on sivukehysten sekvenssin ensimmäinen. Kun sivukehyksiä tulee lisää, identifioi linkittäjätieto sivukehyksen järjestyksen sekvenssissä. Kun kaikki sivukehykset ovat varattuina tiedolle, prosessori jatkaa saannin pyytämistä uuteen tietoon, vaatien, että tietoa jo sisältävä sivukehys ottaa uutta tietoa vanhan tiedon korvaamiseksi. Tämän keksinnön kohteena on kyseisen li 3 90805 sivukehystiedon korvaamisen toteutus.
Linkittäjätiedosta voidaan määrittää seuraava mahdollinen sivu-kehys sivukehysten sekvenssissä. Linkittäjätietoon perustuen voidaan identifioida tähän tietokehykseen liittyvä sivumääritte-lijä ja tämä sivumäärittelijä voidaan syöttää prosessoriin. Prosessori tutkii nykytekniikan mukaisen ohjelmisto-ohjauksen alaisuudessa ti1asignaalien arvot sivumäärittelijässä/ ja signaalien arvoihin pohjautuen tehdään päätös, voidaanko tieto tässä sivu-kehyksessä korvata. Esimerkiksi .usein käytettty tilasignaali liittyy siihen kokemukseen, että optimaalinen strategia tiedon korvaamiseksi on korvata tieto, jota on ei ole käytetty pisimpään aikaan. Tämän strategian toteuttaminen vaatii aivan liian paljon prosessointia. Tyypillinen strategia on poistaa "tieto käytetty" -signaali edeltämäärätyn proseduurin mukaisesti, ja asettaa "tieto käytetty" -signaali sivumäärittelijään silloin, kun tähän sivukehykseen liittyvä tieto on käytetty. Tällä tavalla voivat ohjelmistoproseduurit määrätä, että tieto on käytetty edeltävalitun aikajakson kuluessa.
Lisäksi voi sivukehykseen liittyä vielä muita tilasignaaleja.
Koska tilasignaaleja on useita, voi ohjelmistoproseduuri, joka päättää näihin liittyvän tietoryhmän korvaamisen, olla monimutkainen ja vaatia liian paljon prosessointitoimintaa.
Kun ohjelma, joka ohjaa tietojenkäsittelyjärjestelmän toimintaa, tarvitsee tietosignaaliryhmiä, jotka sillä hetkellä eivät ole talletettuna päämuistiin, käynnistetään korvausalgoritmi. Nykytekniikassa korvausalgoritmin suorittaa ohjelmistoprosessi, joka vaatii lukuisien tilasignaalien analysointia. Korvattavan sivukehystiedon määrityksen aikana on pääsy määrittäjään estetty, jotta estettäisiin sellaisen tiedon käyttö, joka voi olla muutettavana. Eräs menetelmä estäää pääsy tämän mahdollisen tie-donmuutosjakson aikana on varustaa muistin muistiosat muistin "lukolla", jolloin muistilukko estää pääsyn keskusmuistiin tai tämän valittuihin osiin. Tämä menetelmä on tehokas varmistamaan, että oikeaa tietoa käsitellään prosessoreilla, mutta ohjelmisto- 4 korvausalgoritmin suhteellisen hitaan suorituksen takia voidaan vaikuttaa vakavasti koko tietojenkäsittelyjärjestelmän suoritukseen. (Kuten alan asiantuntijoille on selvää/ vaikuttaa muisti-lukko tyypillisesti/ käytännön syistä/ lukuisiin muistipaikkoihin. Tehokkuuteen vaikutetaan siksi/ vaikka korvausalgoritmin analysoimaa tiettyä paikkaa ei haettaisikaan.)
Jotta poistettaisiin päämuistin osan varaaminen korvausalgoritmin suorituksen aikana, on käytetty menetelmiä, jotka sallivat korvauksen suorittamisen ilman päämuistialueen varausta. Tämän menetelmän mukaisesti tutkitaan sen jälkeen, kun korvattavan sivukehyksen valinta on tehty tietylle paikalle, onko sivukehyk-sen otsikon tilasignaaleissa on tapahtunut muutos korvausalgoritmin suorituksen aikana. Tämä menetelmä vaatii lisämonimutkai-suutta tietojenkäsittelyjärjestelmässä.
Tämän vuoksi on ollut tarvetta menetelmälle, joka sallii sellaisen päämuistipaikan määrittämisen, jolle käy, että siihen kyseisellä hetkellä talletettu tieto korvataan uudella tiedolla, jota tietojenkäsittelyjärjestelmä tarvitsee.
Keksinnön tehtävänä on muodostaa parannettu tietojenkäsittelyjärjestelmä .
Keksinnön toisena tehtävänä on muodostaa tietoryhmän korvaaminen tietojenkäsittelyjärjestelmän päämuistissa sellaisen edeltävali-tun kriteerin mukaisesti, joka perustuu tähän tietoryhmään liittyviin tilasignaaleihin.
Keksinnön vielä yksi tehtävä on muodostaa tietosignaaliryhmän analyysi käyttämättä ohjelmistoproseduuria tähän analyysiin.
Edellämainitut ja muut tehtävät on saavutettu keksinnön mukaisesti varustamalla tietojenkäsittelyjärjestelmä käskyllä, joka muodostaa alkuperäisiin tietosignaaleihin perustuvat uudet tila-signaalit samalla, kun se minimoi vaikutuksen päämuistiyksikön saatavuuteen. Keksinnön tunnusmerkit on esitetty oheisissa pa- I: 90805 5 tenttivaatimuksissa. Sivukehyksen korvausproseduurin aikana siirretään prosessoriin siihen seuraavaan sivukehykseen liittyvä sivumäärittelijä/ jota tullaan tutkimaan korvattavuuden suhteen. Korvattavuuden määritystä suorittavaan käskyyn liittyy taulukko syntyvistä tilasignaaliarvoista. Sivumäärittelijän tilasignaale-ja käytetään valitsemaan sopiva sisäänmenokohta käskytaulukkoon. Valitut tuloksena olevat tilasignaalit ilmaisevat/ pitääkö niihin liittyvä sivukehystieto korvata/ ja valittuja tilasignaaleja voidaan käyttää muiden prosessorin tarvitsemien aktiviteettien ilmaisemiseen. Valitut tilasignaalit talletetaan määrittelijään ja päämuistiin. Nämä ja muut keksinnön piirteet voidaan ymmärtää seuraavasta kuvauksesta piirrosten kanssa.
Kuva 1 on lohkokaavio tietojenkäsittelyjärjestelmästä/ joka pystyy käyttämään keksintöä.
Kuva 2 on kaavio, joka esittää päämuistiyksikön jakoa lukuisiin muistipaikkaryhmiin.
Kuva 3a on kaavio esittäen suhdetta sivukehysmäärittelijoiden taulukon ja sivutaulukon välillä/ kuva 3b esittää bittipaikkojen allokointia sivumäärittelijässä ja kuva 3c esittää tilasignaa-lien identifioimista sivumäärittelijässä.
Kuva 4 on kaavio korvauskäskyn bittipaikoista.
Kuva 5a esittää sisäänmenokohtia käännöstaulukossa, kun taas kuvassa 5b on esimerkkejä käännöstaulukon käytöstä.
Kuva 6 on lohkokaavio siitä laitteesta suoritusyksikössä/ joka suorittaa korvauskäskyn.
Kuva 7 on lohkokaavio esittäen kuinka korvauskäsky voidaan muodostaa ohjelmistoproseduurilla.
Kuva 8 esittää päämuistin erottamista sektoreihin pääsyn rajoittamiseksi .
6
Kuvassa 1 on esitetty tietojenkäsittelyjärjestelmä/ joka pystyy edullisesti käyttämään hyväksi tätä keksintöä. Tietojenkäsittelyjärjestelmä sisältää ainakin yhden prosessorin (esitetty prosessoreina 10 ja 11)# päämuistiyksikön 15/ ainakin yhden oheis-liitäntäyksikön (esitetty oheisliitäntäyksiköinä 12 ja 13)/ ja järjestelmäväylän 19. Kuvassa 1 esitetyssä tietojenkäsittelyjärjestelmässä päämuisti tallettaa ne tietosignaaliryhmät/ joita prosessorit käsittelevät. Järjestelmän käynnistyksen aikana on päämuistiyksikössä 15 päämuistin muistitila jaettu lukuisiin alueisiin/ jolloin kukin alue tallettaa edeltämäärätyn määrän loogisia signaaleja. Lisäksi päämuistiyksiköllä on tietyt alueet varattu tiedostoille/ jolloin prosessorit voivat hakea tiedostoista. Yhteisen päämuistiyksikön käyttöä lukuisille prosessoreille nimitetään "tiukasti kytketyksi" -järjestelmäksi.
Kuvassa 2 on päämuistin organisaation kaavamainen esitys. Tämä organisaatio muodostetaan tyypillisesti tietojenkäsittelyjärjestelmän käynnistyksen aikana. Alue 21 on yleensä varattu käyttöjärjestelmälle/ eli ohjelmille ja taulukoille, joita tietojenkäsittelyjärjestelmä tarvitsee. Loput päämuistipaikoista on jaettu päämuistipaikkojen ryhmiksi, joita kutsutaan sivukehyk-siksi. Kuvassa 2 on esitetty sivukehykset 1 22 - Q. On selvää, että kuva 2 on päämuistipaikkojen organisaation idealisoitu esitys, Tyypillisesti alue 21 olisi jaettu osiin ja levitetty koko päämuistiyksikköön. Sivukehysten numerointi on sattumanvaraista ja ilmaisee parhaimmillaan vain fyysisen paikan päämuistiyksikössä .
Kuvissa 3a, 3b ja 3c on esitetty niiden taulukoiden organisaatio, jotka ovat erityisen tärkeitä keksinnön kannalta. Kuvassa 2 on muodostettu sivukehysmäärittelijoiden 31 taulukko tietojenkäsittelyjärjestelmän käynnistyksen aikana. Jokainen sivukehys-määrittelijä liittyy yhteen kuvan 2 sivukehykseen 22 - 23. Sivu-kehysmäärittelijän tehtävä, nimenomaan tässä keksinnössä, on identifioida sen tiedon fyysinen osoite, joka sillä hetkellä on talletettuna vastaavassa sivukehyksessä. Tämä tehtävä suorite— i! 7 90805 taan muodostamalla osoitin sivutaulukkoon 34, ja tarkemmin sanottuna siihen sivumäärittelijään 35/ joka liittyy sillä hetkellä sivukehykseen talletettuun tietoon. Sivukehysmäärittelijä sisältää myös ryhmän paikkoja/ joka määrittelee sivukehyksen järjestyksen suhteessa toisiin sivukehyksiin. Kun tieto sivuke-hyksessä korvataan/ varmistaa linkittäjä, joka suorittaa sivu-kehysten järjestämisen, että kaikki muut sivukehykset päämuis-tissa tarkastellaan tiedon korvaamisen suhteen/ ennenkuin sitä sivukehystä tarkastellaan uudelleen, jossa tieto juuri korvattiin. Kuva 3b esittää kuvan 3a sivumäärittelijän 35 rakennetta. Sivumäärittelijä sisältää tilasignaalit 37 bittipaikoissa 0-3 ja sivukehysnumeron, joka identifioi sivukehyksen, bittipaikoissa 4-23. Kuvassa 3c esitetään tilabittien identifioiminen edullisessa toteutuksessa. Ensimmäinen paikka on kelpoisuusbitti ja se ilmaisee, milloin tietosivu on sivukehyksessä päämuistitie-dossa sivukehyksessä. Toinen paikka on käyttöbitti, ja se asetetaan joka kerta, kun tietoa siihen liittyvässä sivukehyksessä haetaan. Paikka 3 on muutosbitti, ja se ilmaisee, että sivukehyksessä olevan tiedon ja sen tiedon, josta sivukehys saatiin, välillä on ero. Tilabitti neljännessä paikassa on tällä hetkellä varattu tulevia tehtäviä varten.
Kuvassa 4 on esitetty sen käskyn rakenne, joka suorittaa kor-vausalgoritmin. Ensimmäiset 16 bittipaikkaa ilmaisevat käskyn operaatiokoodin. Toiset 16 bittiä ja mahdolliset 16-bitin lisä-tietosignaaliryhmät muodostavat osoittimen sivumäärittelijään. Lopuissa 16-bitin ryhmissä pidetään käännöstaulukkoa.
Kuvassa 5a on esitetty käännöstaulukkojen sisääntulot edullisen toteutuksen mukaisesti. Taulukon sisääntulot on esitetty heksa-desimaalisin merkinnöin. Todellinen käännös on esitetty kuvassa 5b, jossa näytetään, kuinka sivumäärittelijän tilasignaaleja muunnetaan korvausalgoritmilla.
Kuvassa 6 on esitetty käskyn suorittava laite. Prosessorin suo-ritusyksikössä ladataan rekisteri 61 tietosignaaleilla, jotka määrittelee käskyn operaatiokoodi. Käskyrekisteristä signaalit 8 syötetään dekoodaus- ja ohjauslaitteelle 62. Dekoodaus- ja ohjauslaite 62 syöttää signaalit osoituslaitteelle 63. Dekoodaus-ja ohjauslaitteen 62 ohjauksen alaisuudessa sen haetun sivumää-rittelijän tilasignaalit, jotka on talletettu työrekistereiden 60 rekisteriin 64/ käytetään osoitesignaalina osoittamaan sisääntuloa siinä käännöstaulukossa, joka liittyy käskyyn. Tila-signaalien osoitelaitteen 63 kautta osoittama sisääntulo muodostaa uudet tilasignaalit/ jotka talletetaan sivumääritteli-jään. Signaalianalysointiyksikköä 66 käytetään ilmaisemaan/ että korvaussivukehys on identifioitu/ ja aloittamaan proseduuri halutun tietosivun tallettamiseksi sivukehykseen.
Kuvassa 7 on esitetty vuokaavio sivumäärittelijoiden tutkimiseksi/ jotta määritettäisiin/ tulisiko kyseessä oleva sivukehys korvata. Kun prosessi on aloitettu askeleella 700/ esimerkiksi suorittamalla kuvan 4 käsky/ valitaan seuraava sivumäärittelijä. Tämän valinnan määräävät linkittäjän muistipaikat 34/ jotka on esitetty kuvassa 3a. Edullisessa toteutuksessa linkittäjä valitsee sellaisen sivumäärittelijän/ joka on jäänyt tutkimatta kor-vausalgoritmilla. Tutkittavaa sivumäärittelijää valittaessa haetaan tilasignaalit/ jotka muodostavat osan sivumäärittelijää/ päämuistista askelella 702. Askelella 703 tutkitaan kelpoisuus-tilasignaali. Jos kelpoisuussignaalilla on negatiivinen arvo, ei sivumäärittelijää muuteta askeleella 704/ ja proseduuri palaa askeleeseen 701 valitsemaan seuraavaa sivumäärittelijää. Kun kelpoisuussignaalilla on positiivinen arvo, tutkitaan käyttösig-naali askeleella 705. Kun käyttösignaalilla on positiivinen arvo/ muutetaan käyttöbitin paikalle negatiivinen arvo, ja uudet tilasignaalit talletaan sopiviin sivumäärittelijän paikkoihin päämuistissa askeleella 706. Proseduuri palaa sitten askeleeseen 701 valitsemaan seuraavaa määrittelijää tutkittavaksi. Kun käyttösignaalilla on negatiivinen arvo, tutkitaan muunnettu tilasig-naali askeleella 707. Kun muunnetulla tilasignaalilla on positiivinen arvo, niin muunnettu bitti muutetaan negatiiviseen arvoon samalla/ kun lähetetään komento tuomaan sivukehyksessä oleva tieto vastaten sitä tietoa, josta sivukehystieto saatiin askeleella 708. Jos muunnetulla tilasignaalilla negatiivinen arvo, <· 90805 9 niin siihen liittyvä sivukehys on sopiva korvattavaksi. Askel 709 muuttaa kaikki tilasignaalit negatiivisiin arvoihin, ja tallettaa nämä arvot vastaaviin paikkoihin sivumäärittelijässä.
Sivumäärittelijä estetään ja tieto sivukehyksessä korvataan pyydetyllä tietosivulla. Sivumäärittelijää muunnetaan vastaamaan uutta tietoa, joka on talletettu sivukehykseen askelella 710. Sivumäärittelijä on korvattu sivukehysten sekvenssissä linkittä-jällä sivukehysmäärittelijässä ja tiedon korvaamisprosessi si-vukehyksessä on suoritettu loppuun askeleella 711.
Kuvassa 8 on esitetty edullinen toteutus, jossa päämuistiyksik-köä ohjaa kaksi ohjainta, A ja B. Kumpikin muistiohjäin ohjaa yhtä puoliskoa muistipaikoista. Kummassakin ohjaimessa siihen liittyvät muistipaikat on jaettu lukuisiin sektoreihin 83. Pääsyä kuhunkin sektoriin voidaan ohjata vastaavalla muistiohjai-mella. Siksi, jos esimerkiksi jotakin muistipaikkaa ollaan muuttamassa, voi ohjain estää pääsyn siihen tiettyyn sektoriin ilman, että se rajoittaa pääsyä koko alueeseen, joka liittyy tähän muistiohjaimeen. Kalleuden ja monimutkaisuuden takia on yksittäisten muistipaikkojen saantiohjaus toteutettu harvoin. Tästä syystä tietyn muistipaikan haun rajoittaminen johtaa lukuisien muistipaikkojen haun rajoittamiseen, ja mikä tahansa pitempiaikainen haun rajoittaminen voi potentiaalisesti vaikuttaa tietojenkäsittelyjärjestelmän tehokkuuteen.
Keksintö ratkaisee prosessoreiden muistihakuongelman paikkojen sisällön mahdollisen muutoksen aikana muodostamalla sivukorvauk-sen tehokkaan algoritmin. Tällä tavalla se päämuistin osa, joka on varattuna algoritmin suorituksen aikana, varataan vai lyhyeksi ajanjaksoksi, jolloin minimoidaan vaikutus tietojenkäsittelyjärjestelmän tehokkuuteen. Ohjelmistoproseduurin sijasta, joka voi rajoittaa pääsyä päämuistin osiin liian pitkän ajan, määritetään sivukehyksen sopivuus korvattavaksi käskyllä, jossa sivu-kehykseen liittyviä tilasignaaleja käytetään osoitesignaaleina määrittämään sisääntulokohta taulukkoon. Taulukko liittyy käskyyn itseensä. Sisääntulokohdat käskyssä voidaan määrittää varsin lyhyessä ajassa. Nämä uudet tai tuloksena olevat tilasignaa- 10 lit voidaan välittömästi tallettaa määrittelijään. Koska uudet tilasignaalit estävät niihin liittyvän sivukehyksen käytön/ voidaan poistaa se muistimekanismi, joka rajoittaa pääsyä päämuis-tisektoreihin/ jotka sisältävät sivukehyksen. Tähän proseduuriin vaadittava varsin lyhyt aika minimoi vaikutuksen päämuistin saatavuuteen ja vastaavasti tietojenkäsittelyjärjestelmän tehokkuuteen.
Tärkeä piirre algoritmin toteuttamiseen ohjelmistoproseduurissa on proseduurin muunneltavuus. J,os esimerkiksi halutaa tilasig-naalin erilaista tulkitsemista, voidaan tämän tulkitsemismuu-toksen seuraukset saada aikaan vastaavilla muutoksilla proseduurin askeliin. On selvää, että tämä muuteltavuus on jäljellä keksinnössä sillä paikalla käskyssä, johon tilasignaalien ryhmä ohjataan. Muuttamalla tulossignaaleja, joidaan muutettavuus säilyttää.
Edelläoleva kuvaus on esitetty edullisen toteutuksen toiminnan selittämiseksi, eikä sen tarkoitus ole rajoittaa keksinnön suo-japiiriä. Keksinnön suojapiiriä rajoittavat ainoastaan seuraa-vat patenttivaatimukset. Edelläolevasta selityksestä on alan ammattimiehille selvää, että monia muutoksia voidaan tehdä poikkeamatta keksinnön hengestä ja suojapiiristä.

Claims (8)

90805 11
1. Laite tietojenkäsittelyjärjestelmässä, jossa päämuisti pitää tietolohkoja sivujen muodossa ja jossa on pidettynä määrittelijä päämuistissa kutakin päämuistissa läsnäolevaa sivua varten, mainitun määrittelijän sisältäessä tilainformaation, joka kuvaa siihen liittyvän sivun ajankohtaista ryhmätilaa, joka laite on tarkoitettu toteuttamaan tietynlainen käsky määrittämään mikä sivu on korvattava silloin kun, mainitun järjestelmän käytön aikana, tulee tarpeen syöttää uusi sivu päämuistiin, mainitun käskyn sisältäessä ainutlaatuisen toimikoodin ja osoitteen yhden mainituista määrittelijöistä hakemiseksi; tunnettu mainitussa päämuistissa pidetystä taulukosta (65), joka sisältää kullekin erilaiselle ajankohtaiselle ryhmätilalle, mikä voi olla sisällytetty määrittelijään, uuden tilainformaation, joka kuvaa uuden ryhmätilan sivulle, joka on tarkoitettu varaamaan sama muistipaikka kuin se sivu, jota edustaa mainittu ajankohtainen ryhmätila; jäijitysvälineistä (61,62,63) reagoimaan mainitussa tietynlaisessa käskyssä olevaan toimikoodiin ja osoitteeseen osoitetussa määrittelijässä pidetyn tilainformaation jäljittämiseksi; osoitusvälineet (63), jotka reagoivat edelleen mainittuun tiettyyn käskyn toimikoodiin mainitun jäljitetyn tilainformaation soveltamiseksi osoitteena mainitulle taululle vastaavan uuden tilainformaation lukemiseksi päämuistista; ja signaalin analysointivälineet (66) mainitun jäljitetyn uuden tilainformaation vastaanottamiseksi, osoittaen korvaussivun tulleen yksilöidyksi, ja aloittaen toimenpiteen aikaansaamaan mainitussa päämuistissa pidetyn sivun vastaamaan mainittua uutta tilainformaatiota.
2. Patenttivaatimuksen 1 mukainen laite, tunnettu siitä, että mainittu toimenpide yksilöi sen, milloin tiedon sivukehys voidaan korvata uudella tiedon sivukehyksellä. ________ -- 1.. _ 12
3. Patenttivaatimuksen 2 mukainen laite, tunnettu siitä, että siihen lisäksi kuuluu välineet, jotka reagoivat valittuihin uusiin tilasignaaleihin sen mainitun tiedon sivukehyksen korvaamiseksi, joka liittyy mainittuihin talletettuihin tilasignaaleihin, uudella tiedon sivukehyksellä.
4. Patenttivaatimuksen 2 mukainen laite, tunnettu siitä, että mainitun tilainformaation ensimmäinen bitti kohdistuu mainitun siihen liittyvän tiedon sivukehyksen käyttöön ja mainitun tilainformaation toinen bitti kohdistuu mainitun siihen liittyvän tiedon sivukehyksen muuttamiseen,
5. Patenttivaatimuksen 1 mukainen laite, missä mainitulla osoi-telaitteella (63) muodostettua osoitetta on käytetty osoittamaan ennalta määrättyä yhtä mainitun taulukon syötöistä, mainitun ennalle määrätyn syötön ollessa korvaava määrittelijäkent-tä, tunnettu välineistä tallettamaan mainittu korvaus-kenttä mainittuun määrittelijään päämuistissa.
6. Menetelmä tietojenkäsittelyjärjestelmässä, missä päämuisti pitää tietolohkoja sivujen muodossa, ja missä on pidettynä määrittelijä päämuistissa kutakin päämuistissa läsnäolevaa sivua varten, mainitun määrittelijän sisältäessä tilainformaation, joka kuvaa siihen liittyvän sivun ajankohtaisen ryhmätilan; joka menetelmä on tarkoitettu toteuttamaan tietynlainen käsky määrittämään mikä sivu on korvattava silloin kun, mainitun järjestelmän käytön aikana, tulee tarpeen syöttää uusi sivu päämuistiin, mainitun käskyn sisältäessä ainutlaatuisen toimi-koodin ja osoitteen yhden mainituista määrittelijöistä hakemiseksi; tunnettu: taulukon pitämisestä mainitussa päämuistissa, mikä taulukko sisältää kutakin erilaista ajankohtaista ryhmätilaa varten, jotka ryhmätilat voivat olla sisällytetyt määrittelijään, uuden tilainformaation, joka kuvaa uuden ryhmätilan sivulle, joka on 90805 13 tarkoitettu varaamaan sama muistipaikka kuin sivu, jota edustaa mainittu ajankohtainen ryhmätila; mainitun tietynlaisen käskyn saaminen; yhden mainituista määrittelijöistä hakeminen mainitussa tietynlaisessa käskyssä olevan toimikoodin ja osoitteen ohjauksen alaisena osoitetussa määrittelijässä pidetyn tilainformaation jäljittämiseksi; mainitun jäljitetyn tilainformaation soveltaminen osoitteena mainitulle taulukolle vastaavan uuden tilainformaation lukemiseksi päämuistista; ja reagoiminen mainittuun jäljitettyyn uuteen tilainformaatioon osoittamaan, että korvaussivu on yksilöity ja aloittamaan toimenpiteen aikaansaamaan mainitussa päämuistissa pidetyn sivun vastaamaan mainittua uutta tilainformaatiota.
7. Patenttivaatimuksen 6 mukainen menetelmä, tunnettu siitä, että siihen lisäksi kuuluu vaihe mainittujen tilasignaa-lien korvaamiseksi mainitulla käskytaulukon syötöllä mainitussa määrittelijässä.
8. Patenttivaatimuksen 6 mukainen menetelmä, tunnettu siitä, että siihen lisäksi kuuluu vaihe sellaisen määrittelijän jäljittämiseksi, mitä ei ole tutkittu korvaamista varten pisim-pänä ajanjaksona, kun jäljitetty sivumäärittelijä ei ole sopiva korvattavaksi. 14
FI872396A 1986-05-30 1987-05-29 Menetelmä ja laite sivukehyksen korvaamiseksi tietojenkäsittelyjärjestelmässä FI90805C (fi)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US86914686 1986-05-30
US06/869,146 US4833603A (en) 1986-05-30 1986-05-30 Apparatus and method for implementation of a page frame replacement algorithm in a data processing system having virtual memory addressing

Publications (4)

Publication Number Publication Date
FI872396A0 FI872396A0 (fi) 1987-05-29
FI872396A FI872396A (fi) 1987-12-01
FI90805B true FI90805B (fi) 1993-12-15
FI90805C FI90805C (fi) 1994-03-25

Family

ID=25353012

Family Applications (1)

Application Number Title Priority Date Filing Date
FI872396A FI90805C (fi) 1986-05-30 1987-05-29 Menetelmä ja laite sivukehyksen korvaamiseksi tietojenkäsittelyjärjestelmässä

Country Status (19)

Country Link
US (1) US4833603A (fi)
EP (1) EP0250876B1 (fi)
KR (1) KR930009092B1 (fi)
CN (1) CN1010715B (fi)
AR (1) AR244897A1 (fi)
AT (1) ATE100613T1 (fi)
AU (1) AU597666B2 (fi)
BR (1) BR8702715A (fi)
CA (1) CA1284390C (fi)
DE (1) DE3788824T2 (fi)
DK (1) DK276887A (fi)
ES (1) ES2049721T3 (fi)
FI (1) FI90805C (fi)
IL (1) IL82681A0 (fi)
IN (1) IN167131B (fi)
MX (1) MX171149B (fi)
NO (1) NO174311C (fi)
PH (1) PH25271A (fi)
YU (1) YU99187A (fi)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2778786B2 (ja) * 1990-03-02 1998-07-23 富士通株式会社 データ更新・復元処理方式
US5386538A (en) * 1991-04-30 1995-01-31 Texas Instruments Incorporated Data cache access for signal processing systems
US5740448A (en) * 1995-07-07 1998-04-14 Sun Microsystems, Inc. Method and apparatus for exclusive access to shared data structures through index referenced buffers
US6763424B2 (en) 2001-01-19 2004-07-13 Sandisk Corporation Partial block data programming and reading operations in a non-volatile memory
US6782464B2 (en) 2001-07-17 2004-08-24 International Business Machines Corporation Mapping a logical address to a plurality on non-logical addresses
US7242682B1 (en) 2002-10-09 2007-07-10 Storage Technology Corporation Hardware frame modifier apparatus and method for storage virtualization

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1548401A (en) * 1975-10-08 1979-07-11 Plessey Co Ltd Data processing memory space allocation and deallocation arrangements
US4084230A (en) * 1976-11-29 1978-04-11 International Business Machines Corporation Hybrid semiconductor memory with on-chip associative page addressing, page replacement and control
US4638426A (en) * 1982-12-30 1987-01-20 International Business Machines Corporation Virtual memory address translation mechanism with controlled data persistence

Also Published As

Publication number Publication date
EP0250876A2 (en) 1988-01-07
NO872263D0 (no) 1987-05-29
CN1010715B (zh) 1990-12-05
CA1284390C (en) 1991-05-21
ES2049721T3 (es) 1994-05-01
KR930009092B1 (ko) 1993-09-22
BR8702715A (pt) 1988-03-01
EP0250876B1 (en) 1994-01-19
NO174311C (no) 1994-04-13
AU7369387A (en) 1987-12-03
KR870011534A (ko) 1987-12-24
FI90805C (fi) 1994-03-25
YU99187A (en) 1990-06-30
FI872396A0 (fi) 1987-05-29
PH25271A (en) 1991-03-27
IN167131B (fi) 1990-09-01
DE3788824T2 (de) 1994-07-14
AR244897A1 (es) 1993-11-30
DK276887A (da) 1987-12-01
IL82681A0 (en) 1987-11-30
NO872263L (no) 1987-12-01
CN87104487A (zh) 1988-02-17
AU597666B2 (en) 1990-06-07
ATE100613T1 (de) 1994-02-15
NO174311B (no) 1994-01-03
US4833603A (en) 1989-05-23
MX171149B (es) 1993-10-05
DE3788824D1 (de) 1994-03-03
EP0250876A3 (en) 1990-04-25
FI872396A (fi) 1987-12-01
DK276887D0 (da) 1987-05-29

Similar Documents

Publication Publication Date Title
KR0122529B1 (ko) 슈퍼스칼라 프로세서 시스템에서 복수의 명령어를 단일 사이클 동안 디스패치하기 위한 방법 및 장치
US5553305A (en) System for synchronizing execution by a processing element of threads within a process using a state indicator
US6112285A (en) Method, system and computer program product for virtual memory support for managing translation look aside buffers with multiple page size support
US9244883B2 (en) Reconfigurable processor and method of reconfiguring the same
US4080651A (en) Memory control processor
EP0072179A2 (en) Clearing invalid addresses in cache memory
US20070130237A1 (en) Transient cache storage
US4126893A (en) Interrupt request controller for data processing system
JPH11505653A (ja) 単一アドレス空間で保護ドメインと共に用いるためのオペレーティングシステム
JP2006513493A (ja) フリーバッファプールを使用することによるメモリの管理
US7093100B2 (en) Translation look aside buffer (TLB) with increased translational capacity for multi-threaded computer processes
US5978900A (en) Renaming numeric and segment registers using common general register pool
FI90805B (fi) Menetelmä ja laite sivukehyksen korvaamiseksi tietojenkäsittelyjärjestelmässä
US20050097258A1 (en) Systems and methods for accessing thread private data
JPS63132355A (ja) メモリ制御装置
CA2009717C (en) Multiprocessing system having a single translation lookaside buffer with reduced processor overhead
US5450587A (en) Expanded memory addressing scheme
EP0495167A2 (en) Multiple asynchronous request handling
JP3456727B2 (ja) データ処理装置
Wilkes The use of a writable control memory in a multiprogramming environment
JPS6152505B2 (fi)
EP0349757A2 (en) Apparatus and method for enhanced virtual to real address translation for accessing a cache memory unit
JPS61112260A (ja) 多重階層記憶システムにおけるスワツプ制御装置
KR20180117463A (ko) 데이터 처리 장치 및 데이터 처리 방법
JPS601657B2 (ja) アドレス変換方法

Legal Events

Date Code Title Description
BB Publication of examined application
MM Patent lapsed
MM Patent lapsed

Owner name: HONEYWELL BULL INC.