Microsoft hat in bibleteek iepene ûnder de MIT-lisinsje
It wichtichste skaaimerk fan mimalloc is syn kompakte ymplemintaasje (minder dan 3500 rigels koade) en heul hege prestaasjes. YN
Om evaluearje prestaasjes, in set fan besteande
Hege prestaasje wurdt berikt benammen troch it brûken fan frije list shading. Ynstee fan ien grutte list, mimalloc brûkt in rige fan lytsere listen, elk dêrfan is bûn oan in ûnthâld side. Dizze oanpak ferleget fragmintaasje en fergruttet de lokaasje fan gegevens yn it ûnthâld. In ûnthâldside is in groepearre set fan blokken fan ferlykbere grutte. Op 64-bit systemen is de sidegrutte typysk 64 KB. As der gjin besette blokken oerbleaun binne op 'e side, wurdt it folslein befrijd en wurdt it ûnthâld weromjûn nei it bestjoeringssysteem, wat de ûnthâldkosten en fragmintaasje yn langrinnende programma's ferminderet.
De bibleteek kin wurde opnaam yn it keppelingsstadium of laden foar in al gearstald programma ("LD_PRELOAD=/usr/bin/libmimalloc.so myprogram"). De biblioteek biedt ek
It is mooglik om de bibleteek yn in feilige modus te bouwen, wêryn spesjale siden foar ûnthâldkontrôle (wacht-siden) wurde ferfongen by de blokgrinzen, en randomisaasje fan blokferdieling en fersifering fan listen fan befrijde blokken wurde brûkt. Sokke maatregels meitsje it mooglik om te blokkearjen meast foarkommende techniken foar it eksploitearjen fan heap-basearre buffer oerstreamingen. As jo de feilige modus ynskeakelje, nimt de prestaasjes ôf mei likernôch 3%.
Under de skaaimerken fan mimalloc wurdt ek opmurken dat it is net gefoelich foar problemen mei bloating fanwege grutte fragmintaasje. Yn it slimste senario nimt ûnthâldferbrûk ta mei 0.2% foar metadata en kin 16.7% berikke foar ferspraat ûnthâld. Om konflikten te foarkommen by tagong ta boarnen, brûkt mimalloc allinich atomêre operaasjes.
Boarne: opennet.ru