feat: 添加对内核引导协议的抽象 (#913)* 添加multiboot header* head.S传参增加bootloader类型* feat: 添加引导加载协议的抽象,并为multiboot2实现这个抽象.* 把framebuffer的映射地址改为从early ioremap和mmio pool分配* riscv64能运行
feat(log): 将内核日志统一为新的logger (#814)
feat(riscv): riscv下能够运行hello world用户程序 (#770)* feat(riscv): riscv下能够运行hello world用户程序
riscv: 把内核编译target改为riscv64gc & 获取time csr的频率 & 修正浮点保存与恢复的汇编的问题 (#699)* 1. 把内核编译target改为riscv64gc 2. fix: 修正浮点保存与恢复的汇编的问题 * riscv: 获取time csr的频率
riscv: 进程管理初始化 (#654)
在riscv上实现异常处理,能够进入异常处理程序 (#564)
`riscv`: 初始化irq (#560)完成riscv的irqchip初始化的代码。 这是该功能的第一个PR。由于还需要实现timer驱动才能测试,因此该功能将会通过2~3个PR来完成。
riscv: probe sbi extensions (#511)
x86_64: 使用Rust重写内核初始化代码 (#507)* x86_64: 使用Rust重写内核初始化代码
初始化riscv的内存管理模块,并且设置保留内存 (#506)
riscv: 完成UEFI初始化,能正确设置memblock的信息 (#501)* riscv: 完成UEFI初始化,能正确设置memblock的信息 * sbi增加reset功能 * 把虚拟CPU修改为sifive-u54,使qemu能更正确地模拟硬件行为 * 修复内存页面映射未设置“DIRTY”、”ACCESSED“、”GLOBAL“位,导致真机page fault的问题
riscv64: 映射uefi systemtable,并完善了riscv64页表填写的部分内容 (#498)* 从fdt的chosen段获取几个需要的字段 * merge patch-early-ioremap * feature: 增加early io remap的fixmap功能 允许在内存管理初始化之前,使用fixmap功能,映射一些物理内存,并记录. * r
riscv64: 映射uefi systemtable,并完善了riscv64页表填写的部分内容 (#498)* 从fdt的chosen段获取几个需要的字段 * merge patch-early-ioremap * feature: 增加early io remap的fixmap功能 允许在内存管理初始化之前,使用fixmap功能,映射一些物理内存,并记录. * riscv64: 映射uefi systemtable,并完善了riscv64页表填写的部分内容 * 更新仓库网址
show more ...
riscv: 解析dtb,获取可用内存空间并添加到memblock (#486)
riscv: 映射内核到指定的虚拟地址,使得kinfo能正常工作 (#468)* riscv: 映射内核到指定的虚拟地址,使得kinfo能正常工作
在riscv输出hello world (#466)增加了以下内容: - SBI驱动 - 把内核的rust工具链升级到2023-08-15版本 - 输出riscv的helloworld - 设置内核是PIC的