Java Pathfinder Inspector

Přes léto 2016 jsem se účastnil programu Google Summer of Code, během nějž jsem aktualizoval a značně vylepšil aplikaci zvanou Java Pathfinder Inspector.

Java Pathfinder (JPF) is framework pro formální kontrolu programů napsaných v Javě. Jeho jádro sestává z virtuálního stroje pro bajtkód, který sám běží v Javě; to umožní, aby JPF instrumentoval kód a nahradil kritické instrukce svými vlastními variantami. JPF je velmi rozšiřitelný a existuje mnoh modulů pro různé druhy verifikace jako například modul pro symbolickou exekuci. JPF Inspector je jedním takovým modulem a soustředí se na možnost ladění.

JPF Inspector je nástroj pro pozorování a kontrolu běhu programu spuštěného na virtuálním stroji Java Pathfinder. Podporuje breakpoiny, krokování (dopředu i dozadu), a to na několika úrovních granularity, a umožňuje uživateli pozastavit program a prozkoumat jeho současný stav (vlákna, zásobníky, proměnné, objekty na haldě). Oproti standartním debuggerům jako GDB také umožňuje explicitní plánování vláken.

Toto je první softwarový projekt, za který jsem dostal skutečné peníze.

Je naprogramovaný v Javě.

Na tomto projektu jsem pracoval ve věku 23 let, v roce 2016.

Odkazy:

Vybrané nejdůležitější změny, které jsem provedl na projektu (úplný seznam):

  • Rozšiřitelnost: vlastní příkazy, alias, podmínky pro přerušení
  • Mód pro příkazovou řádku
  • Průzkumník, zobrazovač zdrojového kódu, rychlé příkazy
  • 10 nových příkazů a 9 nových podmínek pro přerušení
  • Velmi podrobná dokumentace

Napsat komentář