eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingJak działa debugger? ramki stosuRe: Jak działa debugger? ramki stosu
  • Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!news.cyf-kr.edu.pl!news.nask
    .pl!news.nask.org.pl!news.internetia.pl!not-for-mail
    From: Edek <e...@g...com>
    Newsgroups: pl.comp.programming
    Subject: Re: Jak działa debugger? ramki stosu
    Date: Fri, 3 May 2013 06:47:26 +0000 (UTC)
    Organization: Netia S.A.
    Lines: 31
    Message-ID: <klvmhu$v4c$5@mx1.internetia.pl>
    References: <klrrio$821$1@node2.news.atman.pl> <klru8v$anf$1@node2.news.atman.pl>
    <b...@g...com>
    <a...@g...com>
    NNTP-Posting-Host: 159-205-138-229.adsl.inetia.pl
    Mime-Version: 1.0
    Content-Type: text/plain; charset=UTF-8
    Content-Transfer-Encoding: 8bit
    X-Trace: mx1.internetia.pl 1367563646 31884 159.205.138.229 (3 May 2013 06:47:26 GMT)
    X-Complaints-To: a...@i...pl
    NNTP-Posting-Date: Fri, 3 May 2013 06:47:26 +0000 (UTC)
    X-Tech-Contact: u...@i...pl
    User-Agent: Pan/0.139 (Sexual Chocolate; GIT bf56508 git://git.gnome.org/pan2)
    X-Server-Info: http://www.internetia.pl/
    Xref: news-archive.icm.edu.pl pl.comp.programming:203062
    [ ukryj nagłówki ]

    Dnia Thu, 02 May 2013 15:22:47 -0700 po głębokim namyśle M.M. rzekł:

    > W dniu czwartek, 2 maja 2013 19:26:53 UTC+2 użytkownik firr kenobi
    > napisał:
    >
    >> to gorzej z disasemblowaniem go w tyl
    > Kazda instrukcja (wraz ze swoimi argumentami) musialaby zajmowac taka
    > sama ilosc bitow. Gdy N poprzednich bitow zawiera liczbe X, to nie wiemy
    > czy to jest opcode poprzedniej instrukcji, czy argument "jeszcze
    > poprzedniej" instrukcji :)

    To jeszcze nic. Mając dowolną labelkę może być wiele dróg, jakimi
    program do nich doszedł.

    Ale prawdopodobnie proces jest możliwy, tyle nie ze 100% skutecznością.
    Języki są kompilowane w dość przewidywalny i schematyczny sposób,
    dałoby się zrekonstruować zmienne i graf bloków kodu co już byłoby
    przydatnym narzędziem. Potem dałoby radę wyeleminować z grafu te
    bloki, które logicznie można odrzucić na podstawie stanu zmiennych
    i rejestrów - udowadniając, że program nie mógł do nich dojść.
    Można dorzucić zachowany stos poniżej SP, aktualny stos, możliwe
    wcześniejsze stosy i przebieg pomiędzy funkcjami, a to co wymieniałem
    dotyczy jednak bloku kodu jedenj funkcji, dałoby radę też użyć
    rejestrów, które są już "dead", lae zachowały ostatnie użycie,
    byle nie float - i ma się pikne narzędzie.

    Pomimo tego uważam, że to wysiłek poświęcony złej sprawie.

    --
    Edek

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: