Twórcy Zypp ostatecznie zdecydowali się na zintegrowanie algorytmu SAT ze swoją aplikacją. Oparto go na popularnym solverze minisatZobacz: minisat.se.. Implementacja zastosowana w openSUSE 11.0 składa się z dwóch głównych, lecz niezależnych elementów:
słownik informacji o pakietach oraz zależnościach. Opracowany został nowy format solv do przechowywania jego struktury, a także słownika zależności i relacji między pakietami. Odczyt i łączenie plików solv jest bardzo szybkie i liczone jest w milisekundach. mechanizm obliczania spełnialności formuł logicznych do obliczania zależności. Złożoność problemu zależności jest niewielka w porównaniu do innych zastosowań SAT. Dodatkowo, nie wymaga stosowania złożonych algorytmów i może generować sensowne sugestie poprzez obliczenie dowodu pokazującego, dlaczego dana formuła jest nierozwiązywalna.
Po kilku miesiącach prac benchmarki pokazały, że w czwartej wersji biblioteki Zypp poprawa wydajności jest znacząca.
Przypisy
Linki zewnętrzne Zypper w Linupedia.org Zypper – openSUSE’s command line software manager w Blip.tv
Kategoria:Linux Kategoria:Novell Kategoria:Menadżery pakietów