Skocz do: nawigacji, wyszukiwania

Insmacs3


Interpretacja rezultatów


Po zakończeniu analizy automatycznie otwierana jest zakładka Summary. Dla analizowanej przez nas aplikacji wygląda ona następująco:

Insp me cpu 2.png

Błędy znalezione w trakcie analizy zostają wyświetlone na liście. Są one również grupowane są według typu błędu oraz linii kodu, która go powoduje. Obok listy znajduje się Filtr, który umożliwia szybkie wyszukiwanie błędów (świetnie nadaje się w przypadku dużych aplikacji składających się z kilku plików źródłowych). W dolnej części zakładki znajduje się sekcja Code Location, w której przedstawiona jest linijka kodu powodująca błąd. W sekcji tej znajduje się również informacja o ilości błędów dla wybranej z listy pozycji oraz o aktualnie przeglądanym błędzie.

  1. Wybieramy problem z listy (w naszym przypadku mamy do czynienia tylko z wyciekiem pamięci)
  2. W sekcji Code Location pojawia się informacja o ilości błędów dla wybranej pozycji z listy (1 of 3). Mamy do czynienia z trzema wyciekami pamięci
  3. Klikamy przycisk All dzięki czemu wszystkie błędy zostają wyświetlone na jednej liście
  4. Dwukrotnie klikamy na pierwszy błąd, otwierając tym samym zakładkę Sources, która przestawia kod źródłowy z linijką kodu powodującą błąd
    Insp me cpu 3.png

Widzimy, że w przypadku analizowanej aplikacji jest to funkcja Utworz. Przechodząc do zakładki Dissasembly, mamy możliwość podejrzenia kodu asemblerowego programu z zaznaczoną linią kodu, która powoduje błąd

  1. Z prawej strony zakładki znajduje się sekcja Call Stack przedstawiająca stos wywołań funkcji. Klikamy na funkcję, która wywołuje funkcję Utworz , czyli funkcję main
    Insp me cpu 4.png
  2. Widzimy, że pierwszy wyciek pamięci powoduje niezwolniona pamięć przydzielona do wskaźnika mIn
  3. W przypadku pozostałych błędów postępujemy analogicznie



< Wstecz

Dalej >