1
0
mirror of https://github.com/rcore-os/rCore.git synced 2024-11-21 23:56:18 +04:00

aarch64/doc: update boot.md & table of contents

This commit is contained in:
equation314 2018-12-27 18:36:27 +08:00
parent 2d1d94ee57
commit 5abf7691e6
5 changed files with 27 additions and 6 deletions

View File

@ -48,7 +48,18 @@ SECTIONS {
## boot.S
CPU 启动代码位于 `kernel/src/arch/aarch64/boot/boot.S`,主要流程如下:
CPU 启动代码位于 `kernel/src/arch/aarch64/boot/boot.S`,负责初始化一些系统寄存器,并将当前异常级别(exception level)切换到 EL1。
AArch64 有 4 个异常级别,相当于 x86 的特权级,分别为:
* EL0: Applications.
* EL1: OS kernel and associated functions that are typically described as privileged.
* EL2: Hypervisor.
* EL3: Secure monitor.
在 RustOS 中,内核将运行在 EL1 上,用户程序将运行在 EL0 上。
`boot.S` 的主要流程如下:
1. 获取核的编号,目前只使用 0 号核,其余核将被闲置:
@ -66,7 +77,7 @@ CPU 启动代码位于 `kernel/src/arch/aarch64/boot/boot.S`,主要流程如
b halt
```
2. 读取当前异常级别(Exception level)
2. 读取当前异常级别:
```armasm
# read the current exception level into x0 (ref: C5.2.1)

View File

@ -1 +1,11 @@
# 驱动
# 设备驱动
## Mini UART
## Timer
## Mailbox
## Framebuffer
## Console

View File

@ -0,0 +1 @@
# 中断

View File

@ -1 +0,0 @@
# 外围设备

View File

@ -11,7 +11,7 @@
* [概述](overview.md)
* [环境配置](environment.md)
* [启动](boot.md)
* [外围设备](peripherals.md)
* [中断](interrupt.md)
* [内存管理](memory.md)
* [上下文切换](context.md)
* [驱动](drivers.md)
* [设备驱动](drivers.md)