Sprawdzanie modeli SPIN

Sprawdzanie modeli SPIN

Informacja
Opracowany przez Gerard Holzmann
Pierwsza wersja 1989
Ostatnia wersja 6.5.2 (6 grudnia 2019 r)
Kaucja github.com/nimble-code/Spin
Napisane w VS
System operacyjny Linux , Microsoft Windows i macOS
Licencja 3-klauzule BSD ( d )
Stronie internetowej spinroot.com

SPIN to ogólne narzędzie do sprawdzania poprawności konkurencyjnych modeli oprogramowania w rygorystyczny i ogólnie zautomatyzowany sposób. Został napisany na początku 1980 roku przez Gerarda J. Holzmanna i innych członków grupy Unix z Computing Sciences Research Center w Bell Labs . Oprogramowanie jest dostępne bezpłatnie od 1991 roku i nadal ewoluuje, aby nadążać za nowymi osiągnięciami w tej dziedzinie.

Opis

Systemy, by sprawdzić opisane są w języku Promela (skrót Pro cesu mnie twój The nguage) języka, który wspomaga modelowanie rozproszonych algorytmów asynchronicznych, opisanych jako non-deterministycznych automatów (spin oznacza «Single Promela Tłumaczka»). Właściwości, które mają być sprawdzane, są wyrażane w postaci formuł liniowej logiki czasowej (LTL), które są negowane, a następnie konwertowane na automaty Büchi . Oprócz funkcji sprawdzania modeli , SPIN może również działać jako symulator, podążając dowolną możliwą ścieżką wykonania w systemie i przedstawiając użytkownikowi wynikowy ślad wykonania.

W przeciwieństwie do wielu programów do sprawdzania modeli, SPIN nie wykonuje samego sprawdzenia modelu, ale zamiast tego generuje źródła w języku C dla określonego narzędzia do sprawdzania modelu, odpowiedniego dla problemu. Technika ta oszczędza pamięć i poprawia wydajność, jednocześnie umożliwiając bezpośrednie wstawianie fragmentów kodu C do modelu. SPIN oferuje również dużą liczbę opcji, które dodatkowo przyspieszają proces weryfikacji i oszczędzają pamięć, takie jak:

Historyczny

Od około 1995 roku corocznie organizowane są warsztaty SPIN dla użytkowników SPIN, badaczy i ogólnie zainteresowanych weryfikacją modeli . 26 th Warsztaty odbyły się w Pekinie w 2019 roku .

W 2001 roku Stowarzyszenie na rzecz Maszyn Komputerowych przyznało firmie SPIN nagrodę ACM Software System Award .

Zobacz też

Bibliografia

  1. „  http://spinroot.com/spin/Doc/roots.html  ”
  2. Wersja 6.5.2  " ,6 grudnia 2019 r(dostęp 7 grudnia 2019 )
  3. „26th International SPIN Symposium on Model Checking of Software” .
  4. "Nagroda za system oprogramowania: ACM CITES NARZĘDZIE DO WYKRYWANIA" BŁĘDÓW "W OPROGRAMOWANIU DO NAGRODY PRESTIŻOWEJ. Badacz Bell Labs opracował „SPIN”, aby zwiększyć niezawodność komputerów ” , komunikat prasowy ACM.

Dokumentacja

Linki zewnętrzne