Posted By: Rat (prilis mnoho her) on 'CZprogram'
Title: Re: Call stacky
Date: Thu Mar 27 20:47:55 2003
>
> V Linuxu....co backtrace()/backtrace_symbols()/backtrace_symbolsfd() z
> execinfo.h ?
> Ale bacha ! Linux only (neni na jinych *NIXech) !
No... je... Akorat si to mozna musis napsat sam ;) Asi kazdy kernel (unixovy)
vola signaly tak, ze predtim na stack ulozi vsecky informace pro navrat, tzn.
ret do tvoji funkce, ebp a vsecky registry, kod pro execute sigreturn,
navratovou adresu na nej a pak teprv zavola tvoji funkci. Jde jen o to, kde
co presne je, coz je kernel-specific, zbytek je compiler-specific, ale ten se
z hlediska user-spacu na ruznych systemech (stejne architektury) nelisi.
> Dzemen
Krysa
rat@atrey.karlin.mff.cuni.cz Jsem Krysa
http://atrey.karlin.mff.cuni.cz/~rat/