Libarena

Libarena is een aangepaste geheugen-allocator-interface en implementatie.
Download nu

Libarena Rangschikking & Samenvatting

Advertentie

  • Rating:
  • Vergunning:
  • MIT/X Consortium Lic...
  • Prijs:
  • FREE
  • Naam uitgever:
  • William Ahern
  • Uitgever website:
  • http://25thandclement.com/~william/projects/zoned.html

Libarena Tags


Libarena Beschrijving

Libarena is een aangepaste geheugen Allocator-interface en implementatie. Libarena-bibliotheek is een aangepaste geheugen-toewijzingsinterface en -implementatie. Drie toewijzers worden verstrekt: Flat "LIFO" Arena Allocator, Object Pool Allocator en een Malloc (3) Wrapper. Deze kunnen direct worden gebruikt, of via hun geëxporteerde prototype-interfaces. Libarena is bedoeld om een basislijninterface te bieden, zodat Allocator's kunnen worden gestapeld en om een goed gedefinieerde interface voor bibliotheken en toepassingen te verschaffen. Het is niet de bedoeling om te beperken of te beperken wat aangepaste toewijzers daadwerkelijk kunnen bereiken. Bijvoorbeeld, het meegeleverde zwembad en arena-allocators omvatten een reeks stringhulpprogramma's die niet beschikbaar zijn in de generieke exporteerbare interface. Ze zijn echter gebouwd op de generieke interface (zie util.h). Bijna geen malloc (3) bibliotheek "vervangingen" ondersteunen een context-aanwijzerargument. Ze zijn nutteloos voor veel of de meeste van de taken waarbij het vermogen om een alternatief malloc (3) op te geven, bijvoorbeeld nuttig te zijn, b.v. één shot-dealloction van een taakstructuur en alle geassocieerde toewijzingen. Voor netwerkdaemons is deze functie nuttig; Alle toewijzingen voor een bepaalde sessie kunnen eenvoudig worden vrijgemaakt door het laagste-niveau toewijzingsobject te sluiten. De Arena Allocator gedraagt zich op vergelijkbare wijze aan GNU-hindernissen. Als toewijzingen worden bevrijd in omgekeerde volgorde dan de onderliggende buffers dienovereenkomstig worden vrijgelaten; Out-of-order-deallocaties zullen leiden tot fragmentatie. De Arena Allocator ondersteunt ook positiemarkering. De staat in elk willekeurig exemplaar kan worden opgeslagen en de allocator later in die staat gereset. Alle toewijzingen die na, na verloop van tijd de opgeslagen toestand hebben gedronken, zal zich gedust gedragen als ze expliciet werden gedeeld. De pool Allocator houdt een pool van sets met vaste formaat buffers. Elke buffergrootte kan willekeurig zijn. Toewijzingen die niet van de bestaande emmers kunnen worden voldaan, zullen resulteren in het creëren van een nieuwe emmer. Geheugen keerde terug naar het zwembad zal worden hergebruikt. Momenteel zal het zwembad nooit krimpen, alleen maar groeien. Na sluiting van de Arena of Pool Allocator-objecten worden alle gebruikte geheugen vrijgegeven teruggebracht op hun onderliggende toewijzing (ofwel die is gepasseerd met instantiatie, of standaard `arena_stdlib ', de standaard bibliotheek wrapper.what is nieuw in deze release: · De makeFiles zijn Niet langer recursief, dus dit zou moeten bouwen en installeren met behulp van GNU Make of BSD PMAKE.


Libarena Gerelateerde software