EBA ist ein Prototyp-Fehlerfinder für C, der auf der Nebeneffektanalyse und Modellprüfung basiert.
Im Moment können Sie es verwenden, um im Linux-Kernel, z. B. Doppel-Lock-Fehler, zu finden:
git clone --depth=1 https://github.com/torvalds/linux.git
cd linux
make allyesconfig
scripts/eba-linux.sh drivers/net
Das Skript findet alle C-Quelldateien unter drivers/ , rufen Sie CPP auf und rufen Sie EBA an, um potenzielle Doppelschloss zu finden. Seien Sie geduldig, dies kann mehrere Stunden dauern.
Wenn EBA einen potenziellen Fehler in path/to/file.c findet, schreibt er die Fehlerspuren in _eba/path/to/file.warn :
find _eba/ -iname '*.warn'
Es kombiniert die Nebeneffektanalyse und Model-Checking. Weitere Informationen finden Sie auf der Website: http://www.iagoabal.eu/eba/
Ja, es geschieht wirklich: Weitere Informationen finden Sie auf der Website: http://www.iagoabal.eu/eba/
Siehe die Installationsanweisungen.
Wenn Sie die Tests ausführen möchten, müssen Sie Cram installieren, beispielsweise mit PIP :
sudo apt-get install python-pip
sudo pip install cram
Sie sollten EBA irgendwo in Ihren $ path platzieren:
cram test/*.t