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)
<br><br><div class="gmail_quote">On Jan 6, 2008 12:41 PM, TomᚠBrambora <<a href="mailto:tomas.brambora@gmail.com">tomas.brambora@gmail.com</a>> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
0xCFB4 je adresa ve virtualni pameti.<br>Mam v kodu user procesu dejme tomu<br>putc_syscall_struct str;<br>a volam SYSCALL(kod_syscallu, (void*)&str)).<br><br>Proces mame namapovany na nejvyse 132 stranek pocinaje 0x0. Takze CFB4
<br>je daleko za nim, coz by u staticke struktury byt nemelo, jestli se<br>nepletu..<br>Na strane kernelu dostaneme v registru stejny pointer, ktery jsme do<br>nej v user procesu strcili (zkouseli jsme to s MAGIC hodnotou). Takze
<br>ta struktura je fakt alokovana na te divne adrese 0xCFB4 (a dalsi<br>struktury jsou v okoli tehle adresy)...<br><div><div></div><div class="Wj3C7c"><br><br></div></div></blockquote></div>