www.elektronik.si Seznam forumov www.elektronik.si
Forum o elektrotehniki in računalništvu
 
 PomočPomoč  IščiIšči  Seznam članovSeznam članov  SkupineSkupine  StatisticsStatistika  AlbumAlbum  DatotekeFilemanager DokumentacijaDocDB LinksPovezave   Registriraj seRegistriraj se 
  PravilaPravila  LinksBolha  PriponkePriponke  KoledarKoledar  ZapiskiZapiski Tvoj profilTvoj profil Prijava za pregled zasebnih sporočilPrijava za pregled zasebnih sporočil PrijavaPrijava 

LWMEM aka Lightweight memory manager

 
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> Programiranje embedded sistemov
Poglej prejšnjo temo :: Poglej naslednjo temo  
Avtor Sporočilo
tilz0R
Član
Član



Pridružen-a: Čet 31 Maj 2012 15:39
Prispevkov: 898
Aktiv.: 6.24
Kraj: Črnomelj

PrispevekObjavljeno: Pon Apr 29, 2019 9:59 pm    Naslov sporočila:  LWMEM aka Lightweight memory manager Odgovori s citatom

Kombinacija jeze in predvsem dolgčasa je botrovala, da sem se odločil spisat svojo knjižnico za standard C lib dinamično alokacijo.

Jezijo me namreč (naštetih nekaj izmed mnogih):

  • Zadeva ni portabilna med prevajalniki
  • Sploh pri GCC-ju je (vsaj pri embedded) potrebno poskrbeti za _sbrk in takšne zadeve
  • Vsak prevajalnik ima drugačno implementacijo (kdo ve katera je boljša?)
  • Komplikacije med prevajalniki pri embedded, če bi rad dal malloc na zunanji pomnilnik


Napisal sem svojo knjižnico, imenovano LWMEM, ki implementira malloc/calloc/realloc/free funkcije.
Za le-te je na voljo source koda.
Prednost knjižnice je (vsaj zame) to, da moraš na začetku sam klicati lwmem_assignmem, s katerim določiš regije pomnilnika, kjer manager deluje. Tako imaš lahko interni RAM, če pa ga zmanjka, pa lahko manager skoči na zunanji RAM (kot backup).

Koda je na voljo na Githubu: https://github.com/MaJerle/lwmem
Dokumentacija pa na moji strani: https://majerle.eu/documentation/lwmem/html/index.html
Prenos na voljo na Github releases: https://github.com/MaJerle/lwmem/releases

_________________
Knowledge sharing is caring.
majerle.eu | stm32f4-discovery.net
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Obišči avtorjevo spletno stran
Pokaži sporočila:   
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> Programiranje embedded sistemov Časovni pas GMT + 2 uri, srednjeevropski - poletni čas
Stran 1 od 1

 
Pojdi na:  
Ne, ne moreš dodajati novih tem v tem forumu
Ne, ne moreš odgovarjati na teme v tem forumu
Ne, ne moreš urejati svojih prispevkov v tem forumu
Ne, ne moreš brisati svojih prispevkov v tem forumu
Ne ne moreš glasovati v anketi v tem forumu
Ne, ne moreš pripeti datotek v tem forumu
Ne, ne moreš povleči datotek v tem forumu

Uptime: 48 dni


Powered by phpBB © 2001, 2005 phpBB Group