FI120422B - Menetelmä ja laitteita muutoslokin kompressoimiseksi käyttäen flash-transaktioita - Google Patents
Menetelmä ja laitteita muutoslokin kompressoimiseksi käyttäen flash-transaktioita Download PDFInfo
- Publication number
- FI120422B FI120422B FI20070520A FI20070520A FI120422B FI 120422 B FI120422 B FI 120422B FI 20070520 A FI20070520 A FI 20070520A FI 20070520 A FI20070520 A FI 20070520A FI 120422 B FI120422 B FI 120422B
- Authority
- FI
- Finland
- Prior art keywords
- flash
- buffer
- flash memory
- compression result
- volatile
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/085—Retrieval of network configuration; Tracking network configuration history
- H04L41/0853—Retrieval of network configuration; Tracking network configuration history by actively collecting configuration information or by backing up configuration information
- H04L41/0856—Retrieval of network configuration; Tracking network configuration history by actively collecting configuration information or by backing up configuration information by backing up or archiving configuration information
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/08—Address circuits; Decoders; Word-line control circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
- G11C16/102—External programming circuits, e.g. EPROM programmers; In-circuit programming or reprogramming; EPROM emulators
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C8/00—Arrangements for selecting an address in a digital store
- G11C8/12—Group selection circuits, e.g. for memory block selection, chip selection, array selection
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/60—Router architectures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1471—Saving, restoring, recovering or retrying involving logging of persistent data for recovery
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Debugging And Monitoring (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Reduction Or Emphasis Of Bandwidth Of Signals (AREA)
- Pharmaceuticals Containing Other Organic And Inorganic Compounds (AREA)
- Micro-Organisms Or Cultivation Processes Thereof (AREA)
Description
Menetelmä ja laitteita muutoslokin kompressoimiseksi käyttäen flash-trans· aktioita - Förfarande och arrangemang för att komprimera förändringslogen genom att använda flash-transaktioner
5 TEKNINEN ALA
Keksintö liittyy yleisesti tärkeiden digitaalisten tietojen muistiin tallentamiseen tavalla, joka mahdollistaa tietojen palauttamisen myöhemmin odottamattoman toimintahäiriön sattuessa. Erityisesti keksintö liittyy reitittimen usein muuttuvien kon-figuraatiotietojen tallentamiseen käyttäen haihtumatonta flash-muistia ja tietojen 10 pakkausta.
KEKSINNÖN TAUSTAA
Reitittimen on tallennettava vastaanottamansa reititinkonfiguraation muutokset aina silloin tällöin, kun uusia yhteyksiä muodostetaan ja vanhoja jää pois käytöstä. Konfiguraatiotiedot ovat oleellisia reitittimen oikean toiminnan kannalta, ja ne on 15 tallennettava sellaisessa muodossa, että ne voidaan myöhemmin palauttaa myös silloin, kun tapahtuu odottamaton virhe, joka korruptoi tai hävittää tiedot haihtuvasta käytönaikaisesta muistista. Tiedostoa, joka sisältää kerätyt tiedot reititinkonfiguraation muutoksista, kutsutaan usein delta-lokitiedostoksi (engl. delta log).
Jotkin tekniikan tason mukaiset reitittimet käyttävät flash-muistia haihtumattomana 20 tallennuspaikkana, jonne delta-lokitiedot tallennetaan pakatussa muodossa. Delta-lokitietojen tallentamiseen käytetyssä algoritmissa täytyy ottaa huomioon, että tietoja kerätään jatkuvasti ja että virhe voi tapahtua milloin tahansa, joten datan ei pidä antaa kerääntyä pelkästään haihtuvaan muistiin liian pitkään ennen seuraavaa kopiointia haihtumattomaan flash-muistiin. Toisaalta flash-muistin tunnettu raken-25 ne ja toiminta sopivat huonosti jatkuvaan bitti-bitiltä-tallennukseen ja suosivat flash-muistin käsittelyä suurempina yksikköinä, ns. tietueina.
Kuvio 1 esittää erästä tunnettua tapaa käyttää flash-muistia delta-lokitietojen tallentamiseen tekniikan tason mukaisesti. Käyttöön on osoitettu kaksi erillistä flash-muistin osaa, joita tässä nimitetään flash-puskuriksi 101 ja flash-tiedostoksi 102. 30 Konfiguraatiotiedot tallennetaan ensin flash-puskuriin 101, ja ne siirretään flash-tiedostoon 102 vasta, kun riittävän suuri määrä dataa on kerätty niin, että flash-puskuri 101 on oleellisesti täynnä.
2
Vaiheessa 111 molemmat flash-muistin osat ovat tyhjiä. Kirjoitusosoitin, jota on kuvattu pienellä nuolella, näyttää kussakin flash-muistin osassa sen sijaintipaikan, josta seuraavan kirjoitusoperaation tulee alkaa. Vaiheessa 112 konfiguraatiotietoja 103 kirjoitetaan flash-puskuriin, jolloin kirjoitusosoitin siirtyy seuraavaan vapaa-5 seen paikkaan puskurissa. Kirjoitusosoittimen entinen sijainti on esitetty suluissa olevalla nuolella. Mitään ei tapahdu flash-tiedostossa vielä. Vaihe 113 esittää samanlaista tapausta, kun seuraavia konfiguraatiotietoja 104 kirjoitetaan flash-puskuriin. Vasta vaiheessa 114, kun flash-puskuri täyttyy, jotakin kirjoitetaan myös flash-tiedostoon: flash-puskuriin kerääntynyt sisältö pakataan käyttäen jotakin so-10 pivaa tietojenpakkausalgoritmia, ja pakkauksen tulos 105 kirjoitetaan flash-tiedostoon. Kirjoitusosoitin flash-tiedostossa etenee osoittamaan seuraavaa vapaata paikkaa. Vaiheessa 115 flash-puskuri tyhjennetään, ja alkaa uusi kierros konfigu-raatiotietojen keräämistä flash-puskuriin. Kun tietoja seuraavan kerran pakataan, uusi pakkaustulos seuraa edellistä flash-tiedostossa.
15 Kuvion 1 mukaisen järjestelyn haittapuolena on flash-muistitilan suhteellisen suuri tarve.
KEKSINNÖN YHTEENVETO
Keksinnön tavoitteena on esittää menetelmä ja laitteet delta-lokitietojen tallentamiseksi vähäisillä muistiin, erityisesti flash-muistiin, kohdistuvilla tilavaatimuksilla. 20 Keksinnön eräänä toisena tavoitteena on, että menetelmä ja laitteet delta-lokitietojen tallentamiseksi ovat yksinkertaiset ja luotettavat ja soveltuvat moniin erilaisiin reititintoteutuksiin.
Keksinnön tavoitteet saavutetaan ylläpitämällä puskuria uusille konfiguraatiotie-doille haihtuvassa muistissa, pakkaamalla puskurin sisältö aina uusien tietojen li-25 säämisen jälkeen ja käyttämällä flash-transaktioita joko ylikirjoittamaan edelliset pakkaustulokset flash-muistissa tai kirjoittamaan uusi pakkaustulos uuteen tietueeseen riippuen sen pituudesta.
Keksinnön mukaiselle menetelmälle ovat tunnusomaisia vaiheet, jotka on esitetty menetelmään kohdistuvan itsenäisen patenttivaatimuksen tunnusmerkkiosassa.
30 Keksinnön mukaiselle reititinlaitteelle ovat tunnusomaisia ominaisuudet, jotka on esitetty reititinlaitteeseen kohdistuvan itsenäisen patenttivaatimuksen tunnusmerkkiosassa.
3
Keksinnön mukaiselle tietokoneohjelmatuotteelle ovat tunnusomaisia ominaisuudet, jotka on esitetty tietokoneohjelmatuotteeseen kohdistuvan itsenäisen patenttivaatimuksen tunnusmerkkiosassa.
Kun uusia tietoja kirjoitetaan flash-muistiin, ne voivat joko korvata olemassa ole-5 van tietueen (so. olemassa oleva tietue voidaan päivittää) tai ne voidaan sijoittaa täysin koskemattomaan tietueeseen. Tässä ehdotetaan, että valinta näiden kahden mahdollisuuden välillä tehdään perustuen pakatun delta-lokipuskurin senhetkiseen pituuteen. Mikäli pakkaustulos on paljon lyhyempi kuin tietue, se vain päivittää olemassa olevan, välittömästi aiemmin kirjoitetun tietueen. Konfiguraatiotieto-10 jen jatkuva kerääminen merkitsee, että vähä vähältä pakkaustulos pitenee, kunnes se on riittävän pitkä täyttääkseen nykyisen tietueen ja mahdollisesti osittain vuo-taakseen yli seuraavaan tietueeseen flash-muistissa. Siinä vaiheessa täyttynyt tietue "jäädytetään", puskuri tyhjennetään ja prosessi alkaa alusta uudelleen, ja uusi kirjoituskohta flash-muistissa valitaan joko tietueesta, johon tietoja on valunut yli 15 jäädytetystä tietueesta, tai flash-muistin seuraavasta loogisesta tietueesta. Jos valitaan tietue, johon tietoja on valunut yli jäädytetystä tietueesta, kirjoituskohta asetetaan välittömästi tietueen käytetyn tilan jälkeen.
Tässä patenttihakemuksessa esimerkkinä esitettyjen suoritusmuotojen ei pidä tulkita asettavan rajoituksia oheisten patenttivaatimusten sovellettavuudelle. Verbiä 20 "käsittää" on käytetty tässä patenttihakemuksessa avoimena rajoitteena, joka ei sulje pois myös tässä mainitsemattomia ominaisuuksia. Epäitsenäisissä patenttivaatimuksissa mainittuja ominaisuuksia voidaan vapaasti yhdistellä, ellei nimenomaan toisin ole mainittu.
Keksinnölle tunnusomaisina pidetyt uudet ominaisuudet on esitetty yksityiskohtai-25 sesti oheisissa patenttivaatimuksissa. Keksintöä itseään, sen rakennetta ja toimintaperiaatetta, sekä sen lisätavoitteita ja -etuja on kuitenkin selostettu seuraavassa eräiden tiettyjen suoritusmuotojen avulla ja viitaten oheisiin piirustuksiin.
PIIRUSTUSTEN LYHYT KUVAUS
Kuvio 1 esittää erästä tunnettua tapaa käyttää flash-muistia delta-lokitietojen tal-30 lentämiseen, kuvio 2 esittää keksinnön erään suoritusmuodon mukaista periaatetta, kuvio 3 esittää keksinnön erään suoritusmuodon mukaista menetelmää, 4 kuvio 4 esittää erästä tapaa käyttää muisteja delta-lokitietojen tallentamiseen keksinnön erään suoritusmuodon mukaisesti, kuvio 5 esittää keksinnön erään suoritusmuodon mukaista menetelmää tilakaaviona, ja 5 kuvio 6 esittää keksinnön erään suoritusmuodon mukaista re ititi n la itetta.
KEKSINNÖN JA SEN EDULLISTEN SUORITUSMUOTOJEN YKSITYISKOHTAINEN SELITYS
Kuvio 2 havainnollistaa, miten yhdistetään haihtuvan puskurin ja flash-muistin käyttö keksinnön erään suoritusmuodon mukaisesti. Uusien konfiguraatiotietojen 10 saapuessa ne kirjoitetaan ensin haihtuvaan puskuriin lohkon 201 mukaisesti. Rei-tittimessä uudet konfiguraatiotiedot esiintyvät protokollan määritteleminä merkkijonoista koostuvina komentoina, mahdollisesti täydennettynä muilla tekstimuotoisilla tiedoilla. Haihtuva puskuri on oleellisesti suurempi kuin flash-muistin tietueen koko; puskuri saattaa olla ainakin kymmenen kertaa tietueen kokoinen.
15 Lohkossa 202 käytetään pakkausalgoritmia haihtuvan puskurin koko sisällön pakkaamiseen. Puskurin todellinen sisältö sekä pakkausalgoritmin tehokkuus ratkaisevat, kuinka monta bittiä pakkaustuloksessa lopulta on. Jos puskuri oli vasta täyttämisen alussa, so. se sisälsi vain jonkin yksittäisen konfigrointitiedon ennen pakkaamista, pakkaustulos voi olla jopa pitempi kuin alkuperäinen konfigurointitieto. 20 Kuitenkin jo kahdella puskuriin kerääntyneellä konfiguraatiotiedolla pakkaussuhde (pakkaustuloksen pituuden ja pakkaamattoman konfigurointitiedon määrän suhde) on edullisempi, ja se on sitä parempi, mitä enemmän konfiguraatiotietoja on kerääntynyt puskuriin.
Oletetaan, että on olemassa jokin ennalta asetettu raja tai kynnysarvo, johon pak-25 kaustuloksen pituutta verrataan. Raja tai kynnysarvo on hieman suurempi kuin flash-muistin tietueen koko, joten kun pakkaustuloksen pituus saavuttaa rajan tai kynnysarvon, se täyttää hieman enemmän kuin yhden täyden tietueen flash-muis-tissa. Jos pakkaustulos oli pienempi tavuissa mitattuna kuin raja tai kynnysarvo, sillä ylikirjoitetaan (so. päivitetään) välittömästi aiemmin tallennettu pakkaustulos 30 flash-muistissa lohkon 203 mukaisesti, ja se jää sinne odottamaan tullakseen puolestaan seuraavan pakkaustuloksen ylikirjoittamaksi. Jos pakkaustulos oli riittävän suuri täyttääkseen vähintään yhden täyden tietueen, se tallennetaan flash-muistiin (so. se ylikirjoittaa välittömästi aiemman pakkaustuloksen, mutta "jäädytetään" sen jälkeen, eikä sitä enää ylikirjoiteta), ja haihtuva puskuri tyhjennetään lohkon 204 5 mukaisesti. Seuraavalla kerralla uuden konfiguraatiotiedon lisäämisen ja pakkauksen jälkeen kirjoitusoperaatio kohdistuu uuteen sijaintiin flash-muistissa.
Kuvio 3 esittää keksinnön erään suoritusmuodon mukaista menetelmää systemaattisemmin tilakaavion muodossa. Vaiheessa 301 vastaanotetaan uusi konfigu-5 raatiotieto. Vaiheessa 302 se kirjoitetaan haihtuvaan puskuriin alkaen sijaintipaikasta, jonka puskurin kirjoitusosoitin osoittaa vapaaksi. Kirjoituksen jälkeen puskurin kirjoitusosoitin etenee vaiheessa 303 osoittamaan seuraavaa jäljellä olevaa vapaata sijaintipaikkaa haihtuvassa puskurissa.
Vaiheessa 304 haihtuvan puskurin koko sisältö pakataan. Pakkauksen tulos kirjoi-10 tetaan flash-muistiin vaiheessa 305, tarkemmin sanottuna flash-muistin tietueeseen, johon flash-muistin kirjoitusosoitin osoittaa. Kirjoittaminen flash-muistin tietueeseen suoritetaan edullisimmin flash-muistitransaktiona, jollaista on selitetty saman hakijan patenttihakemuksessa WO 01/31458, joka on liitetty tähän viittaamalla siihen. Transaktio on joukko operaatioita, joiden täytyy kaikkien onnistua tai 15 kaikkien epäonnistua. Reitittimen konfiguraatiotietojen muuttaminen on tyypillinen tapahtuma, jolla on transaktion luonne, sillä mikäli reitityssovellus ei onnistu varmistamaan, että uusi konfiguraatio on turvallisesti tallennettu haihtumattomaan muistiin, sen ei pidä ottaa sitä käyttöön lainkaan. Jos reitityssovellus toimisi pelkästään haihtuvaan muistiin tallennettujen konfiguraatiotietojen mukaisesti ja haih-20 tumaton flash-muisti sisältäisi jotakin muuta, ikävästi ajoittuva toimintahäiriö voisi johtaa siihen, että palautuminen tapahtuisi erilaiseen toimintaan kuin mitä todellisuudessa suoritettiin ennen häiriötä.
On huomattava, että flash-muistin luonteen vuoksi tietueen päivittäminen ei tarkasti ottaen tarkoita, että tiedot tallennettaisiin uudestaan täsmälleen samaan muisti-25 paikkaan. Kuten edellä mainitussa toisessa patenttihakemuksessa esitetään, tietueen päivittämiseen liittyy suhteellisen suuri määrä vaiheita, joiden aikana päivitetyt tiedot kirjoitetaan uuteen muistipaikkaan ja vanha muistipaikka merkitään likaiseksi. Flash-muistin apurutiini järjestää muistipaikkojen käyttöä niin, että "likaiset" muistipaikat palautuvat käyttöön jonkin ajan päästä. Koska apuoperaatiot kuitenkin 30 ovat läpinäkyviä flash-muistia käyttävälle sovellukselle, on tavallista puhua flash-muistin tietueista loogisina muistipaikkoina ja jättää huomiotta kaikkinainen riippuvuus fyysisesti olemassa olevista muistipaikoista.
Transaktiotyyppiset rutiinit flash-muistin käytössä varmistavat automaattisesti, ettei tiedoista tallenneta mitään tarpeettomia kopioita. Tarpeettomien kopioiden puuttu 6 minen auttaa pitämään laitteistovaatimukset (asennetun flash-muistin määrä) hyvin kohtuullisella tasolla.
Vaiheessa 306 tarkistetaan, saavuttiko flash-muistiin kirjoitetun datan määrä tietyn rajan. Ellei, menetelmä palaa vaiheeseen 301 ilman muutoksia flash-muistin kirjoi-5 tusosoittimeen. Näin ollen, seuraavan kerran kun pakkaustulos kirjoitetaan flash-muistiin, se ylikirjoittaa (so. päivittää) välittömästi aiemmin kirjoitetun tietueen.
Mikäli flash-muistiin kirjoitetun datan määrä tavuissa oli saavuttanut rajan vaiheessa 306, menetelmä etenee vaiheeseen 307, jossa flash-muistin kirjoitusosoitin siirretään osoittamaan uutta tietuetta (samassa tiedostossa kuin aiempi tietue). Vai-10 heessa 308 haihtuva puskuri tyhjennetään ja puskurin kirjoitusosoitin asetetaan osoittamaan juuri tyhjennetyn puskurin alkuun. Sen jälkeen palataan vaiheeseen 301.
Ei ole välttämätöntä suorittaa näitä menetelmävaiheita tarkalleen tässä järjestyksessä, kunhan vain sama toimintaperiaate säilyy. Olisi esimerkiksi mahdollista 15 vaihtaa vaihe 303 vaiheiden 302 ja 304 välistä edeltämään vaihetta 301. Tällöin olisi tarpeetonta erikseen asettaa puskurin kirjoitusosoitin alkuun vaiheessa 308, koska puskurin kirjoitusosoittimen asettaminen välittömästi puskurin tyhjentämisen jälkeen, vaihe 308, osoittamaan seuraavaan vapaaseen paikkaan saisi automaattisesti sen osoittamaan alkuun.
20 Kuvio 4 havainnollistaa haihtuvan puskurin 401 ja flash-tiedoston 402 käyttöä keksinnön erään suoritusmuodon mukaisesti. Flash-tiedosto 402 on jaettu tietueisiin, joista esimerkkinä on esitetty tietue 403. Kirjoitusosoittimia on esitetty pienillä nuolilla samalla tapaa kuin kuviossa 1.
Vaiheessa 421 sekä haihtuva puskuri 401 että flash-tiedosto 402 ovat tyhjät. Vai-25 heessa 422 haihtuvaan puskuriin kirjoitetaan konfiguraatiotieto 404. Tällöin puskurin kirjoitusosoitin etenee seuraavaan vapaaseen paikkaan. Haihtuvan puskurin koko sisältö pakataan ja pakkaustulos 405 kirjoitetaan flash-tiedoston ensimmäiseen tietueeseen. Pakkaustulos oli lyhyempi kuin ennalta määrätty raja, mistä syystä flash-muistin kirjoitusosoitinta ei siirretä. Jos verrataan kuvioon 3, vaihe 422 30 kuviossa 4 päätyy paluuseen vaiheesta 306 vaiheeseen 301.
Vaiheet 423 ja 424 ovat samanlaisia kuin vaihe 422; uusin konfiguraatiotieto (406 vaiheessa 423 ja 408 vaiheessa 424) ketjutetaan aiempiin olemassa oleviin konfi-guraatiotietoihin haihtuvassa puskurissa, ja kullakin kerralla uusi pakkaustulos (407 vaiheessa 423 ja 409 vaiheessa 424) päivittää ensimmäisen tietueen flash- 7 tiedostossa. Vaiheessa 425, kun on lisätty konfiguraatiotieto 410, pakkaustuloksen pituus saavuttaa rajan. Tässä se tapahtuu yhtä aikaa haihtuvan puskurin täyttymisen kanssa, mutta niin ei tarvitse välttämättä olla; luultavammin pakkaustuloksen pituus saavuttaa rajan jo aiemmin, ennen kuin haihtuva puskuri täyttyy. Keksinnön 5 tälle suoritusmuodolle on tyypillistä, että raja on sidottu pakkaustuloksen pituuteen, eikä haihtuvan puskurin täyttöasteeseen tai jäljellä olevaan tyhjään tilaan ennen pakkausta.
Rajaehdon Hipaissut pakkaustulos 411 on viimeinen, joka ylikirjoittaa (päivittää) flash-tiedoston ensimmäisen tietueen. Kuvion 3 vaiheen 307 mukaisesti flash-10 muistin kirjoitusosoitin siirretään vaiheessa 425 osoittamaan flash-tiedoston toista tietuetta. Tässä oletetaan, että pakkaustulos oli hieman tietuetta pitempi, ja yli jäävä osa, joka ei mahdu ensimmäiseen tietueeseen, menee seuraavaan tietueeseen, minkä jälkeen flash-muistin kirjoitusosoitin asetetaan osoittamaan ensimmäiseen vapaaseen paikkaan toisessa tietueessa. Vaihtoehtona olisi asettaa 15 flash-muistin kirjoitusosoitin osoittamaan täysin uuteen tietueeseen. Vaiheessa 426 haihtuva puskuri tyhjennetään ja puskurin kirjoitusosoitin asetetaan haihtuvan puskurin alkuun (kuten kuvion 3 vaiheessa 308). Vaiheessa 427 seuraavaksi saapuva konfiguraatiotieto 412 aloittaa saman prosessin kuin vaiheessa 422 sillä erolla, että uusin pakkaustulos 413 menee nyt toiseen tietueeseen, jonka ensimmäi-20 nen osa on jo jäädytetty eikä siten muutu myöhemmissä päivityksissä.
Keksinnön erään suoritusmuodon mukaan flash-muistiin ei tallenneta pelkästään puhdasta pakkausalgoritmin tulosta. Kuvion 4 oikeassa alareunassa nähdään, miten kukin pakkaustulos voi koostua otsakeosasta ja runko-osasta, joista otsakeosa sisältää tietoa runko-osasta. Pakkaustuloksessa 411 on otsakeosa 431 ja runko-25 osa 432, ja pakkaustuloksessa 413 on otsakeosa 433 ja runko-osa 434. Eräs hyödyllinen tieto, jonka otsakeosa voi kertoa, on pakkaustuloksen pituus tavuina. Myöhemmin, kun flash-tiedoston sisältö käydään läpi, on tehokkaampaa, jos skan-nausalgoritmi voi hypätä runko-osien yli, kun se tietää niiden pituudet. Otsakeosan käyttö pakkaustuloksessa ei kuitenkaan ole välttämätöntä, koska esim. pakkaustu-30 loksen pituus voidaan saada selville muutenkin tutkimalla itse pakattuja tavuja.
Flash-tiedostojen skannaus voi tulla ajankohtaiseksi virran päällekytkemisen yhteydessä, mikä nähdään kuvion 5 tilakaaviosta. Tilakaavio on korkean tason esitys konfiguraatiotietojen käsittelystä reitittimessä keksinnön erään suoritusmuodon mukaisesti. Virran päällekytkemisen jälkeen tallennetut flash-tiedostot skannataan 35 tilassa 501 oikean sijainnin löytämiseksi flash-muistin kirjoitusosoittimelle ja tarvittavien reititystietojen regeneroinnin mahdollistamiseksi tallennetuista pakatuista 8 delta-lokitiedostojen osista. Kun virta on kytketty päälle onnistuneesti, järjestelmä siirtyy odotustilaan 502. Jos odotustilan aikana saapuu uusia konfiguraatiotietoja, se Hipaisee kirjoitustransaktion tilan 503 mukaisesti. Liittyykö kirjoitustransaktioon vain vanhemman flash-tietueen päivitys vai liittyykö siihen valmiiksi tulleen tietu-5 een jäädytys ja uuden käyttöönotto, riippuu pakkaustuloksen pituudesta, kuten selitettiin kattavasti edellä liittyen kuvioihin 2, 3 ja 4.
Jossain vaiheessa flash-muistista flash-tiedostolle varattu tila täyttyy, mikä Hipaisee tiedoston regeneroinnin tilan 504 mukaisesti. Toinen kriteeri, joka kuvion 5 mukaisesti mahdollisesti aiheuttaa siirtymän odotustilasta 502 tiedoston regene- 10 rointitilaan 504, on aikavalvonnan laukeaminen eli aikaliipaisu. Mikäli on kulunut tietty aika ilman, että on täytynyt prosessoida mitään uusia konfiguraatiotietoja, voi olla edullista regeneroida konfiguraatiotiedosto. Konfiguraatio koostuu pakatusta peruskonfiguraatiosta ja delta-lokiin kirjatuista muutoksista. Regeneroinnissa yhdistetään muutokset peruskonfiguraatioon ja poistetaan tarpeettomat komennot.
15 Koko konfiguraation regenerointi dumppaamalla tiedostoon todellinen käytössä oleva konfiguraatio ja pakkaamalla regeneroitu tulos yhtenä kappaleena tilassa 505 mahdollistaa vielä suuremmat säästöt haihtumattoman muistitilan tarpeessa. Regeneroitu ja uudelleen pakattu tiedosto tallennetaan tilassa 506 ennen paluuta odotustilaan 502.
20 Kuvio 6 esittää kaavamaisesti keksinnön erään suoritusmuodon mukaista reititin-laitetta. Ohjausprosessori tai ohjausprosessorit 601 suorittavat varsinaista reititys-ohjelmaa ristikytkentämatriisin 602 ohjaamiseksi, jossa ristikytkentämatriisissa paketteja kytketään syöttö/tulostuslohkon 603 kautta kulkeville yhteyksille ja yhteyksiltä. Ohjelma on tallennettu tietokoneluettavina käskyinä ohjelmamuistiin 604.
25 Ajonaikainen (haihtuva) datamuisti 605 sisältää mm. edellä mainitun haihtuvan puskurin. Flash-tiedosto tietueineen sijaitsee (haihtumattomassa) flash-muisti-lohkossa 606. Luettuaan asianmukaiset käskyt ohjelmamuistista 604 ohjauspro-sessori(t) 601 tietää/tietävät, miten suorittaa kuvioiden 2, 3, 4 ja 5 mukaiset vaiheet ja menetelmät.
Claims (9)
1. Förfarande för att lagra konfigureringsdata i en router, kännetecknat av att 20 vid förfarandet: - tillsätts varje mottagna konfigureringsdata tili nästa för stunden lediga ställe i en flyktig buffert, - innehället i den flyktiga bufferten komprimeras efter tillförseln av respektive mottagna konfigureringsdata, varvid ett kompressionsresultat genereras, 25. kompressionsresultatet lagras i ett ickeflyktigt flash-minne, - ifall kompressionsresultatet är kortare än ett givet gränsvärde, fär följande kompressionsresultat som skall lagras i flash-minnet överskriva kompressionsresultatet i flash-minnet, och - ifall kompressionsresultatet är längre än nämnda gränsvärde, sparas kompres-30 sionsresultatet i flash-minnet och nästa kompressionsresultat som skall lagras i flash-minnet styrs tili ett annat ställe i flash-minnet.
1. Menetelmä konfiguraatiotietojen tallentamiseksi reitittimeen, tunnettu siitä, että menetelmässä: - lisätään kukin vastaanotettu konfiguraatiotieto seuraavaan sillä hetkellä vapaa-5 seen paikkaan haihtuvassa puskurissa, - kunkin vastaanotetun konfiguraatiotiedon lisäämisen jälkeen pakataan haihtuvan puskurin sisältö, jolloin muodostuu pakkaustulos, - tallennetaan pakkaustulos haihtumattomaan flash-muistiin, -jos pakkaustulos on lyhyempi kuin tietty raja-arvo, sallitaan seuraavan flash-10 muistiin tallennettavan pakkaustuloksen ylikirjoittaa flash-muistissa oleva pakkaus-tulos, ja -jos pakkaustulos on pitempi kuin mainittu raja-arvo, säästetään flash-muistissa oleva pakkaustulos ja ohjataan seuraava flash-muistiin tallennettava pakkaustulos eri paikkaan flash-muistissa.
2. Förfarande enligt patentkrav 2, varvid: - konfigureringsdata mottas, 35. nämnda konfigureringsdata skrivs i en flyktigt buffert med början frän ett ställe som anges av buffertens skrivindikator, - buffertens skrivindikator flyttas att indikera den flyktiga buffertens följande ställe, som är ledigt efter inskrivningen av nämnda konfigureringsdata, - innehället i den flyktiga bufferten komprimeras, varvid ett kompressionsresultat uppstär, 5. kompressionsresultatet skrivs pa ett första logiskt minnesställe som indikeras av flash-minnets skrivindikator i ett ickeflyktigt flash-minne, - ifall kompressionsresultatets längd i bitgrupper är större än ett givet gränsvärde, flyttas flash-minnets skrivindikator att indikera nästa lediga ställe pä ett annat logiskt minnesställe i det ickeflyktiga flash-minnet, den flyktiga bufferten töms och 10 buffertens skrivindikator inrättas att indikera den flyktiga buffertens början, och - ifall kompressionsresultatets längd i bitgrupper inte är större än nämnda gränsvärde, hälls flash-minnets skrivindikator att indikera det första logiska minnesstället och innehället i den flyktiga bufferten sparas. 15 3. Förfarande enligt patentkrav 1 eller 2, varvid lagringen av kompressions resultatet i flash-minnet innehaller lagring av ett huvudfält och ett kroppfält i flash-minnet, av vilka fält nämnda huvudfält innehäller data om kompressionsresultatets längd i bitgrupper. 20 4. Förfarande enligt nägot av föregäende patentkrav, varvid: - man observerar att det utrymme som reserverats för delta-loggfilens poster i flash-minnet häller pä att fyllas, och - som svar pä en dylik observation regenereras en hei konfigureringsfil, varvid onödiga konfigureringsförändringar avlägsnas, den regenererade konfigurerings- 25 filen komprimeras i ett stycke och ett dylikt kompressionsresultat lagras.
2. Patenttivaatimuksen 1 mukainen menetelmä, jossa: - vastaanotetaan konfiguraatiotieto, - kirjoitetaan mainittu konfiguraatiotieto haihtuvaan puskuriin alkaen puskurin kirjoi-tusosoittimen osoittamasta paikasta, - siirretään puskurin kirjoitusosoitinta osoittamaan haihtuvan puskurin seuraavaan 20 paikkaan, joka on vapaana mainitun konfiguraatiotiedon kirjoittamisen jälkeen, - pakataan haihtuvan puskurin sisältö, jolloin muodostuu pakkaustulos, - kirjoitetaan pakkaustulos flash-muistin kirjoitusosoittimen osoittamaan ensimmäiseen loogiseen muistipaikkaan haihtumattomassa flash-muistissa, -jos pakkaustuloksen pituus tavuina on suurempi kuin tietty raja-arvo, siirretään 25 flash-muistin kirjoitusosoitinta osoittamaan seuraavaan vapaaseen paikkaan haih-tumattoman flash-muistin toisessa loogisessa muistipaikassa, tyhjennetään haihtuva puskuri ja asetetaan puskurin kirjoitusosoitin osoittamaan haihtuvan puskurin alkuun, ja - jos pakkaustuloksen pituus tavuina ei ole suurempi kuin mainittu raja-arvo, pide-30 tään flash-muistin kirjoitusosoitin osoittamassa ensimmäiseen loogiseen muistipaikkaan ja säilytetään haihtuvan puskurin sisältö.
3. Patenttivaatimuksen 1 tai 2 mukainen menetelmä, jossa pakkaustuloksen tallentaminen flash-muistiin sisältää otsakekentän ja runkokentän tallentamisen flash-muistiin, joista kentistä mainittu otsakekenttä sisältää tiedon pakkaustuloksen 35 pituudesta tavuina.
4. Jonkin edeltävän patenttivaatimuksen mukainen menetelmä, jossa: - havaitaan, että flash-muistista delta-lokitiedoston tietueille varattu tila on täyttymässä, ja - vasteena tällaiseen havaintoon regeneroidaan kokonainen konfiguraatiotiedosto, 5 jolloin poistetaan tarpeettomat konfiguraatiomuutokset, pakataan regeneroitu konfiguraatiotiedosto yhtenä kappaleena ja tallennetaan tällaisen pakkauksen tulos.
5. Förfarande enligt nägot av föregäende patentkrav, varvid: - man observerar att en given tidsgräns har överskridits efter det att nya poster av delta-loggfilen senast lagrats i flash-minnet, och 30. som svar pä en sädan observation regenereras en hei konfigureringsfil, varvid onödiga konfigureringsförändringar avlägsnas, den regenererade konfigurerings-filen komprimeras i ett stycke och ett dylikt kompressionsresultat lagras.
5. Jonkin edeltävän patenttivaatimuksen mukainen menetelmä, jossa: - havaitaan, että tietty aikaraja on ylitetty siitä, kun viimeksi tallennettiin flash-muis-tiin delta-lokitiedoston uusia tietueita, ja 10. vasteena tällaiseen havaintoon regeneroidaan kokonainen konfiguraatiotiedosto, jolloin poistetaan tarpeettomat konfiguraatiomuutokset, pakataan regeneroitu konfiguraatiotiedosto yhtenä kappaleena ja tallennetaan tällaisen pakkauksen tulos.
6. Förfarande enligt nägot av föregäende patentkrav, väri lagringen av kom-35 pressionsresultatet i ett ickeflyktigt flash-minne utförs som en uppdaterings- transaktion riktad mot flash-minnets post.
6. Jonkin edeltävän patenttivaatimuksen mukainen menetelmä, jossa pakkaus-tuloksen tallennus haihtumattomaan flash-muistiin suoritetaan flash-muistin tietu- 15 eeseen suunnattuna päivitystransaktiona.
7. Routeranording, innefattande: - en processor, - ett flyktigt minne och - ett ickeflyktigt flash-minne, 5 kännetecknad av att processorn är anordnad att: - tillsätta varje mottagna konfigureringsdata till följande för stunden lediga ställe i en buffert som ingär i nämnda flyktiga minne, - komprimera buffertinnehället efter tillsatsen av respektive mottagna konfigureringsdata, varvid ett kompressionsresultat genereras, 10. lagra kompressionsresultatet i nämnda ickeflyktiga flash-minne, - tilläta följande kompressionsresultat som skall lagras i flash-minnet att överskriva kompressionsresultatet i flash-minnet, ifall kompressionsresultatet är kortare än ett givet gränsvärde, och - spara kompressionsresultatet i flash-minnet och styra följande kompressionsre-15 suitat som skall lagras i flash-minnet till ett annat ställe i flash-minnet, ifall kompressionsresultatet är längre än nämnda gränsvärde.
7. Reititinlaite, johon kuuluu: - prosessori, - haihtuva muisti ja - haihtumaton flash-muisti, 20 tunnettu siitä, että prosessori on järjestetty: - lisäämään kukin vastaanotettu konfiguraatiotieto seuraavaan sillä hetkellä vapaaseen paikkaan mainitun haihtuvan muistin sisältämässä puskurissa, - pakkaamaan puskurin sisältö kunkin vastaanotetun konfiguraatiotiedon lisäämisen jälkeen, jolloin muodostuu pakkaustulos, 25. tallentamaan pakkaustulos mainittuun haihtumattomaan flash-muistiin, -jos pakkaustulos on lyhyempi kuin tietty raja-arvo, sallimaan seuraavan flash-muistiin tallennettavan pakkaustuloksen ylikirjoittaa flash-muistissa oleva pakkaus-tulos, ja - jos pakkaustulos on pitempi kuin mainittu raja-arvo, säästämään flash-muistissa 30 oleva pakkaustulos ja ohjaamaan seuraava flash-muistiin tallennettava pakkaustulos eri paikkaan flash-muistissa.
8. Routeranordning enligt patentkrav 7, varvid storleken hos bufferten som ingär i nämnda flyktiga minne är mer än tio ganger sä stor som nämnda flash- 20 minnets post.
8. Patenttivaatimuksen 7 mukainen reititinlaite, jossa mainitun haihtuvan muistin sisältämän puskurin koko on enemmän kuin kymmenen kertaa suurempi kuin mainitun flash-muistin tietueen koko.
9. Tietokoneohjelmatuote, tunnettu siitä, että se koostuu ohjelmallisista käskyistä, jotka, kun ne suoritetaan tietokoneella, saavat tietokoneen suorittamaan vaiheet, joissa: - lisätään kukin vastaanotettu konfiguraatiotieto seuraavaan sillä hetkellä vapaa-5 seen paikkaan haihtuvassa puskurissa, - pakataan haihtuvan puskurin sisältö kunkin vastaanotetun konfiguraatiotiedon lisäämisen jälkeen, jolloin muodostuu pakkaustulos, - tallennetaan pakkaustulos haihtumattomaan flash-muistiin, -jos pakkaustulos on lyhyempi kuin tietty raja-arvo, sallitaan seuraavan flash-10 muistiin tallennettavan pakkaustuloksen ylikirjoittaa flash-muistissa oleva pakkaus-tulos, ja -jos pakkaustulos on pitempi kuin mainittu raja-arvo, säästetään flash-muistissa oleva pakkaustulos ja ohjataan seuraava flash-muistiin tallennettava pakkaustulos eri paikkaan flash-muistissa. 15
9. Dataprogramprodukt, kännetecknad av att den bestär av programkomman-don, som, da de utförs med en dator, fär datorn att utföra skeden, i vilka: - varje mottagna konfigureringsdata tillförs tili nästa för stunden lediga ställe i den 25 flyktiga bufferten, - innehället i den flyktiga bufferten komprimeras efter tillförseln av respektive mottagna konfigureringsdata, varvid ett kompressionsresultat genereras, - kompressionsresultatet lagras i ett ickeflyktigt flash-minne, - ifall kompressionsresultatet är kortare än ett givet gränsvärde, fär följande kom-30 pressionsresultat som skall lagras i flash-minnet överskriva kompressionsresultatet i flash-minnet, och - ifall kompressionsresultatet är längre än nämnda gränsvärde, sparas kompressionsresultatet i flash-minnet och följande kompressionsresultat som skall lagras i flash-minnet styrs tili ett annat ställe i flash-minnet.
Priority Applications (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FI20070520A FI120422B (fi) | 2007-07-02 | 2007-07-02 | Menetelmä ja laitteita muutoslokin kompressoimiseksi käyttäen flash-transaktioita |
EP08159167A EP2012465B1 (en) | 2007-07-02 | 2008-06-27 | Method and devices for compressing delta log using flash transactions |
DE602008000571T DE602008000571D1 (de) | 2007-07-02 | 2008-06-27 | Verfahren und Vorrichtungen zur Delta-Protokollkomprimierung mittels Flash-Transaktionen |
AT08159167T ATE456220T1 (de) | 2007-07-02 | 2008-06-27 | Verfahren und vorrichtungen zur delta- protokollkomprimierung mittels flash- transaktionen |
US12/164,133 US8095711B2 (en) | 2007-07-02 | 2008-06-30 | Method and devices for compressing delta log using flash transactions |
CN2008101319659A CN101369969B (zh) | 2007-07-02 | 2008-07-02 | 使用闪速事务处理压缩Delta日志的方法和设备 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FI20070520 | 2007-07-02 | ||
FI20070520A FI120422B (fi) | 2007-07-02 | 2007-07-02 | Menetelmä ja laitteita muutoslokin kompressoimiseksi käyttäen flash-transaktioita |
Publications (3)
Publication Number | Publication Date |
---|---|
FI20070520A0 FI20070520A0 (fi) | 2007-07-02 |
FI20070520A FI20070520A (fi) | 2009-01-03 |
FI120422B true FI120422B (fi) | 2009-10-15 |
Family
ID=38331538
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
FI20070520A FI120422B (fi) | 2007-07-02 | 2007-07-02 | Menetelmä ja laitteita muutoslokin kompressoimiseksi käyttäen flash-transaktioita |
Country Status (6)
Country | Link |
---|---|
US (1) | US8095711B2 (fi) |
EP (1) | EP2012465B1 (fi) |
CN (1) | CN101369969B (fi) |
AT (1) | ATE456220T1 (fi) |
DE (1) | DE602008000571D1 (fi) |
FI (1) | FI120422B (fi) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090217382A1 (en) * | 2008-02-25 | 2009-08-27 | Alcatel-Lucent | Method and procedure to automatically detect router security configuration changes and optionally apply corrections based on a target configuration |
US8321626B2 (en) | 2010-03-31 | 2012-11-27 | Gainspan Corporation | Management of configuration data using persistent memories requiring block-wise erase before rewriting |
US20150032945A1 (en) * | 2012-01-29 | 2015-01-29 | Thomson Licensing | Method for flash compressed instruction caching for limited ram/flash device architectures |
US20150256343A1 (en) * | 2012-08-13 | 2015-09-10 | Richard F. Graveman | Securely Generating and Storing Passwords in a Computer System |
US9183091B2 (en) | 2012-09-27 | 2015-11-10 | Intel Corporation | Configuration information backup in memory systems |
CN105824716B (zh) * | 2016-03-15 | 2019-04-23 | 四川效率源信息安全技术股份有限公司 | 一种重新生成ldr文件的方法 |
US11303296B2 (en) * | 2018-06-26 | 2022-04-12 | International Business Machines Corporation | Hardware accelerated compression of instrumentation data |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5586285A (en) * | 1993-02-19 | 1996-12-17 | Intel Corporation | Method and circuitry for increasing reserve memory in a solid state memory disk |
US5860124A (en) | 1996-09-30 | 1999-01-12 | Intel Corporation | Method for performing a continuous over-write of a file in nonvolatile memory |
US6202090B1 (en) | 1997-12-11 | 2001-03-13 | Cisco Technology, Inc. | Apparatus and method for downloading core file in a network device |
FI109620B (fi) | 1999-10-26 | 2002-09-13 | Tellabs Oy | Menetelmä ja järjestely atomaaristen päivitysten toteuttamiseksi loogista flashmuistilaitetta käyttäen |
US20030191876A1 (en) * | 2000-02-03 | 2003-10-09 | Fallon James J. | Data storewidth accelerator |
US7689678B2 (en) * | 2002-04-26 | 2010-03-30 | Extreme Networks | Method and apparatus for restoring the configuration of a network device |
US6941219B2 (en) * | 2003-09-30 | 2005-09-06 | Detroit Diesel Corporation | Method for recreating valid calibration data for an engine control module |
KR100548427B1 (ko) * | 2004-03-03 | 2006-02-02 | 엘지전자 주식회사 | 플래시 메모리 파일 시스템의 데이터 관리방법 |
JP4937902B2 (ja) | 2004-03-17 | 2012-05-23 | アルカテル−ルーセント ユーエスエー インコーポレーテッド | オペレーティングシステム環境でのプロセス状態情報の管理 |
US8977859B2 (en) * | 2004-05-04 | 2015-03-10 | Elsevier, Inc. | Systems and methods for data compression and decompression |
US7606954B2 (en) * | 2005-09-29 | 2009-10-20 | Intel Corporation | Data storage using compression |
US7676282B2 (en) * | 2005-12-02 | 2010-03-09 | International Business Machines Corporation | Compression of servo control logging entries |
US20080228998A1 (en) * | 2007-03-16 | 2008-09-18 | Spansion Llc | Memory storage via an internal compression algorithm |
-
2007
- 2007-07-02 FI FI20070520A patent/FI120422B/fi not_active IP Right Cessation
-
2008
- 2008-06-27 EP EP08159167A patent/EP2012465B1/en active Active
- 2008-06-27 AT AT08159167T patent/ATE456220T1/de not_active IP Right Cessation
- 2008-06-27 DE DE602008000571T patent/DE602008000571D1/de active Active
- 2008-06-30 US US12/164,133 patent/US8095711B2/en active Active
- 2008-07-02 CN CN2008101319659A patent/CN101369969B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN101369969B (zh) | 2012-07-25 |
US20090013126A1 (en) | 2009-01-08 |
EP2012465B1 (en) | 2010-01-20 |
FI20070520A0 (fi) | 2007-07-02 |
US8095711B2 (en) | 2012-01-10 |
CN101369969A (zh) | 2009-02-18 |
DE602008000571D1 (de) | 2010-03-11 |
FI20070520A (fi) | 2009-01-03 |
ATE456220T1 (de) | 2010-02-15 |
EP2012465A1 (en) | 2009-01-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
FI120422B (fi) | Menetelmä ja laitteita muutoslokin kompressoimiseksi käyttäen flash-transaktioita | |
US9342444B2 (en) | Log-structured filed system with file branching | |
US8930617B2 (en) | Autonomic reclamation processing for tapes | |
EP2742428B1 (en) | Cache management including solid state device virtualization | |
JP5571691B2 (ja) | 記憶装置におけるマッピングアドレステーブルの維持 | |
CN1130641C (zh) | 具有永久性存储器的可恢复磁盘控制系统 | |
US9104629B2 (en) | Autonomic reclamation processing on sequential storage media | |
US20130139030A1 (en) | Storage controller, storage device, information processing system, and storage controlling method | |
US20140297918A1 (en) | Buffer cache apparatus, journaling file system and journaling method for incorporating journaling features within non-volatile buffer cache | |
CN102662856A (zh) | 一种固态硬盘及其存取方法 | |
US11841801B2 (en) | Metadata management in non-volatile memory devices using in-memory journal | |
US6687815B1 (en) | Method and apparatus for storing non-volatile configuration information | |
US9552300B2 (en) | Cache system using solid state drive | |
US20230044942A1 (en) | Conditional update, delayed lookup | |
US5860088A (en) | Method for extraction of a variable length record from fixed length sectors on a disk drive | |
CN116027981A (zh) | 数据存储器及其数据回收方法 | |
US5857213A (en) | Method for extraction of a variable length record from fixed length sectors on a disk drive and for reblocking remaining records in a disk track | |
JP2008269520A (ja) | 記録装置及び記録方法 | |
JP2019003288A (ja) | ジャーナルログ制御システム、ジャーナルログ制御方法およびジャーナルログ制御プログラム | |
CN111949212A (zh) | 基于自定义开放通道ssd的文件系统及文件管理方法 | |
KR101975058B1 (ko) | 데이터 가용성 지원 시스템 및 방법 | |
US11650759B2 (en) | Method and apparatus of managing a non-volatile memory using an in-memory journal | |
KR101404129B1 (ko) | 데이터 저장 시스템 및 데이터 관리 방법 | |
US8555020B2 (en) | Reclaiming space occupied by an expired variable record in a non-volatile record storage | |
CN117331494A (zh) | 一种基于NAND Flash的电能表数据存储管理方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FG | Patent granted |
Ref document number: 120422 Country of ref document: FI |
|
PC | Transfer of assignment of patent |
Owner name: CORIANT OY |
|
MM | Patent lapsed |