context
xv6 OS中的用途是什么?每个寄存器的工作是什么context
?
struct context {
uint edi;
uint esi;
uint ebx;
uint ebp;
uint eip;
};
context
xv6 OS中的用途是什么?每个寄存器的工作是什么context
?
struct context {
uint edi;
uint esi;
uint ebx;
uint ebp;
uint eip;
};
context
是一组信息,允许您从由于上下文切换而停止的完全相同的点恢复任务的执行(即调度程序选择另一个任务来运行并暂停当前任务,因此它必须保存的执行信息当前任务并恢复下一个要运行的任务的任务)。
每个寄存器的目的是:
edi
: 目标索引,用于字符串操作esi
:源索引,用于字符串操作ebx
: 基本索引,用于数组ebp
:堆栈基指针,用于保存当前堆栈帧的地址eip
: 指令指针,指向要执行的指令这个结构是正在运行的进程的内核上下文。
用户模式上下文被保存到trapframe
结构中。