[OSy] Staticke struktury se alokuji na divnem miste v pameti

Andrej Kruták andree182 at gmail.com
Sun Jan 6 12:46:24 CET 2008


ta struktura sa (afaik) uklada na stack vlakna, nie je mozne ze by ste ten
SP mali tam (~0xcfb4)? Ak je ta adresa mimo adries, ktore su vo virt. pamati
procesu namapovane, preco vam to nezomrie pri pristupe na tu adresu na
(napr.) tlb exception? (kedze sa tam ta nieco muselo zapisat/citat, ked sa
tam vlakno hralo so stackom)

On Jan 6, 2008 12:41 PM, Tomáš Brambora <tomas.brambora at gmail.com> wrote:

> 0xCFB4 je adresa ve virtualni pameti.
> Mam v kodu user procesu dejme tomu
> putc_syscall_struct str;
> a volam SYSCALL(kod_syscallu, (void*)&str)).
>
> Proces mame namapovany na nejvyse 132 stranek pocinaje 0x0. Takze CFB4
> je daleko za nim, coz by u staticke struktury byt nemelo, jestli se
> nepletu..
> Na strane kernelu dostaneme v registru stejny pointer, ktery jsme do
> nej v user procesu strcili (zkouseli jsme to s MAGIC hodnotou). Takze
> ta struktura je fakt alokovana na te divne adrese 0xCFB4 (a dalsi
> struktury jsou v okoli tehle adresy)...
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://d3s.mff.cuni.cz/pipermail/nswi004/attachments/20080106/fab78894/attachment.html>


More information about the NSWI004 mailing list