*参照元 [#ef1986de]
#backlinks

*説明 [#s110ef41]
-パス: [[linux-2.6.33/]]
-パス: [[linux-2.6.33/arch/x86/include/asm/ptrace.h]]

-FIXME: これは何?
--説明
-pt_regs の x86_64 版


**参考 [#af57dee5]


*実装 [#zaf31af9]
 #ifdef __i386__
 /* this struct defines the way the registers are stored on the
    stack during a system call. */
 (略) 
 #else /* __i386__ */
 
 #ifndef __KERNEL__
 
 struct pt_regs {
 	unsigned long r15;
 	unsigned long r14;
 	unsigned long r13;
 	unsigned long r12;
 	unsigned long rbp;
 	unsigned long rbx;
 /* arguments: non interrupts/non tracing syscalls only save upto here*/
 	unsigned long r11;
 	unsigned long r10;
 	unsigned long r9;
 	unsigned long r8;
 	unsigned long rax;
 	unsigned long rcx;
 	unsigned long rdx;
 	unsigned long rsi;
 	unsigned long rdi;
 	unsigned long orig_rax;
 /* end of arguments */
 /* cpu exception frame or undefined */
 	unsigned long rip;
 	unsigned long cs;
 	unsigned long eflags;
 	unsigned long rsp;
 	unsigned long ss;
 /* top of stack page */
 };
 
 #else /* __KERNEL__ */
 
 struct pt_regs {
 	unsigned long r15;
 	unsigned long r14;
 	unsigned long r13;
 	unsigned long r12;
 	unsigned long bp;
 	unsigned long bx;
 /* arguments: non interrupts/non tracing syscalls only save upto here*/
 	unsigned long r11;
 	unsigned long r10;
 	unsigned long r9;
 	unsigned long r8;
 	unsigned long ax;
 	unsigned long cx;
 	unsigned long dx;
 	unsigned long si;
 	unsigned long di;
 	unsigned long orig_ax;
 /* end of arguments */
 /* cpu exception frame or undefined */
 	unsigned long ip;
 	unsigned long cs;
 	unsigned long flags;
 	unsigned long sp;
 	unsigned long ss;
 /* top of stack page */
 };
 
 #endif /* __KERNEL__ */
 #endif /* !__i386__ */


*コメント [#ia7e7b9c]



トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS