📄 thread-state.h
字号:
/* i386 thread state. Copyright 1999, 2000, 2001, 2002 Johan Rydberg, jrydberg@rtmk.org.This program is free software; you can redistribute it and/or modifyit under the terms of the GNU General Public License as published bythe Free Software Foundation; either version 2 of the License, or(at your option) any later version.This program is distributed in the hope that it will be useful,but WITHOUT ANY WARRANTY; without even the implied warranty ofMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See theGNU General Public License for more details.You should have received a copy of the GNU General Public Licensealong with this program; if not, write to the Free SoftwareFoundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */#ifndef __rtmk_i386_thread_state_h#define __rtmk_i386_thread_state_h 1#define THREAD_STATE_FLAVOR_I386_CPU 1#define THREAD_STATE_FLAVOR_I386_LDT 2/* This structure corresponds to the state of user registers as saved upon kernel entry. It lives in the pcb. It is also pushed onto the stack for exceptions in the kernel. */struct thread_state_i386_cpu{ unsigned int gs; unsigned int fs; unsigned int es; unsigned int ds; unsigned int edi; unsigned int esi; unsigned int ebp; unsigned int cr2; /* kernel esp stored by pusha - we save cr2 here later */ unsigned int ebx; unsigned int edx; unsigned int ecx; unsigned int eax; unsigned int trapno; unsigned int err; unsigned int eip; unsigned int cs; unsigned int efl; unsigned int uesp; unsigned int ss; struct { unsigned int v86_es; /* virtual 8086 segment registers */ unsigned int v86_ds; unsigned int v86_fs; unsigned int v86_gs; } v86_segs;};typedef struct thread_state_i386_cpu thread_state_i386_cpu_t;struct thread_state_i386_ldt { unsigned int offset; unsigned int size; };typedef struct thread_state_i386_ldt thread_state_i386_ldt_t;#endif /* thread-state.h */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -