From f122a0d92fa5746f1aafd2acd382a7f545870ad7 Mon Sep 17 00:00:00 2001 From: Zhiyuan Shao Date: Sun, 19 Dec 2021 22:57:33 +0800 Subject: [PATCH] Update chapter3_traps.md --- chapter3_traps.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chapter3_traps.md b/chapter3_traps.md index fa2486e..1137919 100644 --- a/chapter3_traps.md +++ b/chapter3_traps.md @@ -655,7 +655,7 @@ s_start函数在kernel/kernel.c文件中定义: 该函数的动作也非常简单:首先将地址映射模式置为(34行)直映射模式(Bare mode),接下来调用(37行)load_user_program()函数,将应用(也就是最开始的命令行中的./obj/app_helloworld)载入内存,封装成一个最简单的“进程(process)”,最终调用switch_to()函数,将这个简单得不能再简单的进程投入运行。 -以上过程中,load_user_program()函数的作用是将我们的给定应用(user/app_helloworld.c)所对应的可执行ELF文件(即./obj/app_helloworld文件),这个过程我们将在3.1.5中详细讨论。另一个函数是switch_to(),为了理解这个函数的行为,需要先对lab1中“进程”的定义有一定的了解(kernel/process.h): +以上过程中,load_user_program()函数的作用是将我们的给定应用(user/app_helloworld.c)所对应的可执行ELF文件(即./obj/app_helloworld文件)载入spike虚拟内存,这个过程我们将在3.1.5中详细讨论。另一个函数是switch_to(),为了理解这个函数的行为,需要先对lab1中“进程”的定义有一定的了解(kernel/process.h): ```c 19 typedef struct process {