Elfshaker долбоору ELF файлдары үчүн версияны башкаруу системасын иштеп чыгууда.

Elfshaker долбоорунун биринчи чыгарылышы, ELF аткарылуучу файлдарына өзгөртүүлөрдү көзөмөлдөө үчүн оптималдаштырылган бинардык версияны башкаруу системасы. Система экилик патчтарды файлдардын ортосунда сактайт, керектүү версияны ачкыч менен алууга мүмкүндүк берет, бул “git bisect” операциясын кыйла тездетет жана колдонулган диск мейкиндигин кыйла азайтат. Долбоордун коду Apache-2.0 лицензиясы боюнча таратылат.

Программа экилик өзгөрүүлөрдү сактоонун жогорку эффективдүүлүгү менен айырмаланат, мисалы, бир долбоордун өсүү процессинде алынган көптөгөн окшош бинардык файлдарда. Атап айтканда, Clang компиляторунун эки миң реконструкциясынын натыйжалары (ар бир кайра куруу ар бир тапшырмадан кийин өзгөрүүнү чагылдырат) 100 Мб өлчөмүндөгү бир пачка файлында сакталышы мүмкүн, бул өзүнчө сакталганда талап кылынгандан 4000 эсе аз. .

Берилген файлдан кандайдыр бир абалды чыгаруу 2-4 секундду талап кылат (git bisecting LLVM кодунан 60 эсе тез), бул сизге булактан кайра түзбөстөн же мурда курулган ар бир версиянын көчүрмөсүн сактабастан долбоордун аткарылуучуларынын керектүү версиясын тез чыгарып алууга мүмкүндүк берет. аткарылуучу.

Source: opennet.ru

Комментарий кошуу