Archive

Posts Tagged ‘amd64’

Сегментная адресация в x64.

March 25th, 2010

В x64 сегментная адресация работает совсем не так, как в привычном x86. Прикладные программисты, живущие в плоском мире, могли бы этого не заметить, но, к счастью или несчастью, «уши» этих отличий торчат и в user mode.

Read more…

, ,

Как работает «раскрутчик» стека в x64.

October 27th, 2008

В комментариях к предыдущем посте про исключения верно заметили, что exception chain в TEB используется только в x86 коде. И x64, и ia64 exception chain не используют вообще. Как же, в таком случае, выполняется «раскрутка» стека при обработке исключения?

Read more…

, ,

За последние две-три недели узнал много нового…

March 27th, 2008

За последние две-три недели узнал много нового про архитектуру amd64. Во-первых, я наткнулся сначала на документ, а затем на аналогичный раздел в MSDN, где толково описаны не только соглашения о вызовах (этого добра везде навалом), но и дано детальное описание того, как должен выглядеть стек функции, как происходит раскрутка стека, что такое и зачем нужны пролог и эпилог функции. Полезный документ, особенно если нужно разобраться как работает stack unwinder.

Read more…

, , ,