├── .gdbinit ├── .gitignore ├── CMakeLists.txt ├── LICENSE ├── Makefile ├── README.md ├── gradelib.py ├── include ├── defs.h ├── list.h ├── memlayout.h └── riscv.h ├── judge.py ├── kernel ├── CMakeLists.txt ├── asm │ ├── CMakeLists.txt │ └── boot.S ├── boot │ ├── CMakeLists.txt │ ├── kernelvec.S │ └── start.c ├── common │ ├── CMakeLists.txt │ ├── answer_locks.h │ ├── answer_printk.h │ ├── kernelvec.S │ ├── lock.c │ ├── lock.h │ ├── printk.c │ ├── printk.h │ ├── string.c │ ├── string.h │ ├── uart.c │ └── uart.h ├── kernel.ld └── main.c └── scripts ├── build.sh ├── docker_build.sh ├── local_sync.sh └── remote_sync.sh /.gdbinit: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ACMClassCourses/acmOS-riscv/HEAD/.gdbinit -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ACMClassCourses/acmOS-riscv/HEAD/.gitignore -------------------------------------------------------------------------------- /CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ACMClassCourses/acmOS-riscv/HEAD/CMakeLists.txt -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ACMClassCourses/acmOS-riscv/HEAD/LICENSE -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ACMClassCourses/acmOS-riscv/HEAD/Makefile -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ACMClassCourses/acmOS-riscv/HEAD/README.md -------------------------------------------------------------------------------- /gradelib.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ACMClassCourses/acmOS-riscv/HEAD/gradelib.py -------------------------------------------------------------------------------- /include/defs.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ACMClassCourses/acmOS-riscv/HEAD/include/defs.h -------------------------------------------------------------------------------- /include/list.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ACMClassCourses/acmOS-riscv/HEAD/include/list.h -------------------------------------------------------------------------------- /include/memlayout.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ACMClassCourses/acmOS-riscv/HEAD/include/memlayout.h -------------------------------------------------------------------------------- /include/riscv.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ACMClassCourses/acmOS-riscv/HEAD/include/riscv.h -------------------------------------------------------------------------------- /judge.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ACMClassCourses/acmOS-riscv/HEAD/judge.py -------------------------------------------------------------------------------- /kernel/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | cmake_minimum_required(VERSION 3.14) 2 | 3 | add_library(${PROJECT_NAME}-arch OBJECT main.c) 4 | -------------------------------------------------------------------------------- /kernel/asm/CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ACMClassCourses/acmOS-riscv/HEAD/kernel/asm/CMakeLists.txt -------------------------------------------------------------------------------- /kernel/asm/boot.S: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ACMClassCourses/acmOS-riscv/HEAD/kernel/asm/boot.S -------------------------------------------------------------------------------- /kernel/boot/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | cmake_minimum_required(VERSION 3.14) 2 | 3 | add_library(${PROJECT_NAME}-boot OBJECT start.c kernelvec.S) 4 | -------------------------------------------------------------------------------- /kernel/boot/kernelvec.S: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ACMClassCourses/acmOS-riscv/HEAD/kernel/boot/kernelvec.S -------------------------------------------------------------------------------- /kernel/boot/start.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ACMClassCourses/acmOS-riscv/HEAD/kernel/boot/start.c -------------------------------------------------------------------------------- /kernel/common/CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ACMClassCourses/acmOS-riscv/HEAD/kernel/common/CMakeLists.txt -------------------------------------------------------------------------------- /kernel/common/answer_locks.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ACMClassCourses/acmOS-riscv/HEAD/kernel/common/answer_locks.h -------------------------------------------------------------------------------- /kernel/common/answer_printk.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ACMClassCourses/acmOS-riscv/HEAD/kernel/common/answer_printk.h -------------------------------------------------------------------------------- /kernel/common/kernelvec.S: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /kernel/common/lock.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ACMClassCourses/acmOS-riscv/HEAD/kernel/common/lock.c -------------------------------------------------------------------------------- /kernel/common/lock.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ACMClassCourses/acmOS-riscv/HEAD/kernel/common/lock.h -------------------------------------------------------------------------------- /kernel/common/printk.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ACMClassCourses/acmOS-riscv/HEAD/kernel/common/printk.c -------------------------------------------------------------------------------- /kernel/common/printk.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ACMClassCourses/acmOS-riscv/HEAD/kernel/common/printk.h -------------------------------------------------------------------------------- /kernel/common/string.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ACMClassCourses/acmOS-riscv/HEAD/kernel/common/string.c -------------------------------------------------------------------------------- /kernel/common/string.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ACMClassCourses/acmOS-riscv/HEAD/kernel/common/string.h -------------------------------------------------------------------------------- /kernel/common/uart.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ACMClassCourses/acmOS-riscv/HEAD/kernel/common/uart.c -------------------------------------------------------------------------------- /kernel/common/uart.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ACMClassCourses/acmOS-riscv/HEAD/kernel/common/uart.h -------------------------------------------------------------------------------- /kernel/kernel.ld: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ACMClassCourses/acmOS-riscv/HEAD/kernel/kernel.ld -------------------------------------------------------------------------------- /kernel/main.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ACMClassCourses/acmOS-riscv/HEAD/kernel/main.c -------------------------------------------------------------------------------- /scripts/build.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ACMClassCourses/acmOS-riscv/HEAD/scripts/build.sh -------------------------------------------------------------------------------- /scripts/docker_build.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ACMClassCourses/acmOS-riscv/HEAD/scripts/docker_build.sh -------------------------------------------------------------------------------- /scripts/local_sync.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ACMClassCourses/acmOS-riscv/HEAD/scripts/local_sync.sh -------------------------------------------------------------------------------- /scripts/remote_sync.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ACMClassCourses/acmOS-riscv/HEAD/scripts/remote_sync.sh --------------------------------------------------------------------------------