1
0
mirror of https://github.com/rcore-os/rCore.git synced 2024-11-23 16:36:18 +04:00
Commit Graph

59 Commits

Author SHA1 Message Date
equation314
5a83d6a20f aarch64: add user program SFS image 2018-12-01 20:12:54 +08:00
equation314
13be52133d aarch64: move kernel stack top to 0x100000 2018-11-20 18:32:26 +08:00
equation314
f398945ad3 aarch64: hard link user program 2018-11-20 18:29:51 +08:00
equation314
5610d0bdb0 aarch64: context switch is runnable! 2018-11-07 22:07:59 +08:00
equation314
67b920cc16 aarch64: format paging.rs 2018-11-07 13:09:50 +08:00
koumingyang
a0b948fb53 add basic alloc 2018-11-07 12:00:57 +08:00
koumingyang
a13f39149b add basic alloc 2018-11-07 10:44:24 +08:00
equation314
9fc13c8ebb aarch64: implement syscall 2018-11-07 01:05:55 +08:00
equation314
a91534e34d aarch64: implement context switch, but not tested 2018-11-06 21:44:12 +08:00
equation314
3e1d8c5827 aarch64: implement ARM generic timer, can work in qemu 2018-11-04 18:15:26 +08:00
equation314
07aa9a0686 aarch64: implement IRQ & system timer, but don't work in qemu 2018-10-31 16:10:22 +08:00
equation314
8c19499112 aarch64: implement exception interface & synchronous exception handler 2018-10-30 20:44:54 +08:00
equation314
3386a793a5 aarch64: disable NEON 2018-10-29 23:05:16 +08:00
equation314
632baedabd aarch64: can run on the real raspi3 2018-10-29 18:53:14 +08:00
equation314
2e094d08bc common: add a logo 2018-10-29 13:41:25 +08:00
equation314
abf3418d24 aarch64: implement I/O by serial port 2018-10-29 13:38:27 +08:00
equation314
addf49ffdb aarch64: add crate bcm2837, implement GPIO 2018-10-27 02:45:47 +08:00
equation314
cc936ded35 aarch64: bootable in qemu 2018-10-26 22:02:24 +08:00
equation314
174e0da3b6 aarch64: basic framework 2018-10-26 11:22:22 +08:00
WangRunji
924c061d64 Merge branch 'x86-boot'
# Conflicts:
#	crate/riscv
#	kernel/Makefile
2018-09-19 20:18:14 +08:00
WangRunji
7a9b746c68 x86_64 back to normal.
* Fix kernel stack P4E
* User programs: disk0 -> disk1
* IDE IRQ appears ??
2018-09-18 17:49:12 +08:00
WangRunji
7f00001fd1 Move to higher half 2018-09-18 17:04:55 +08:00
dzy
5a0ce1e464 Refactored RISC-V page table identity mapping into a function. 2018-09-14 21:44:25 +08:00
WangRunji
0a9c294814 Fix x86_64 startup. TODO: higher half.
* Remove legacy boot, MP, ACPI.
* Disable SMP.
* Modify startup: boot -> arch::init -> kmain.
* Fix FrameAllocator on x86_64.
* Remove kernel remap.
* Alloc kernel heap at bss.
2018-09-09 02:35:32 +08:00
WangRunji
0437e5cb17 Make it compile for bootimage toolchain
* Revert to nightly-2018-08-27 due to its bug on macOS
* Not build C code
2018-09-07 12:44:40 +08:00
WangRunji
caeff9ad97 Update packages and fit for new Rust nightly 2018-09-04 13:19:23 +08:00
WangRunji
cbe7affc5d Merge riscv for QEMU & FPGA 2018-08-07 16:11:48 +08:00
WangRunji
ff8930a36c Make frame allocator smaller. Fix serial stupid bug. 2018-08-07 15:09:11 +08:00
WangRunji
3cf118ba67 Mul & div inst emulation 2018-08-07 14:53:35 +08:00
WangRunji
b99dc3d1cf Merge branch 'new-rv-toolchain' into board 2018-08-06 19:07:56 +08:00
WangRunji
640872d154 Use alloc API to fix stack overflow in release mode. 2018-08-06 19:04:18 +08:00
WangRunji
384f6a9c9c Change kernel heap to identity map 2018-08-06 18:07:42 +08:00
WangRunji
dc97b4b433 Fix atomic_compare_exchange 2018-08-06 18:03:21 +08:00
WangRunji
3d0d6e3d02 Merge branch 'new-rv-toolchain' into board
# Conflicts:
#	kernel/Makefile
#	kernel/src/arch/riscv32/boot/entry.asm
2018-08-05 18:52:13 +08:00
WangRunji
3d6fcb8d8c Fix x86_64. Not elegant. 2018-08-05 17:50:56 +08:00
WangRunji
10e3cea340 Only use Rust toolchain to build for rv32. Set arch to rv32i. x86_64 broken. 2018-08-05 00:24:36 +08:00
WangRunji
b88648ff44 Fit for newest Rust nightly. x86_64 ok, riscv32 broken. 2018-08-04 16:20:25 +08:00
WangRunji
7e5726845f Simple bootloader. Remove riscv-pk. 2018-08-03 19:27:38 +08:00
WangRunji
a2111a928f Move thread mod to ucore-process crate 2018-07-17 19:06:30 +08:00
WangRunji
776dc976c9 Fix for user 2018-07-17 12:07:21 +08:00
WangRunji
6022ec8efc Fix load user program out of range 2018-07-17 11:45:55 +08:00
WangRunji
52d3443e05 Recover idle process. Make shell wait for the user it spawned. 2018-07-17 10:47:05 +08:00
WangRunji
c8a9eaf3e6 Split process mod to extern crate 2018-07-17 01:56:28 +08:00
WangRunji
37a6df252f Refactor process mod 2018-07-17 00:23:02 +08:00
WangRunji
97b838981f Fix console 2018-07-16 22:02:03 +08:00
WangRunji
cf1a2d3450 Simple kernel shell 2018-07-16 17:31:29 +08:00
WangRunji
542a06d50e Set default log level to WARN 2018-07-16 17:28:15 +08:00
WangRunji
60c2a77ac1 Unify IO in arch 2018-07-16 09:48:58 +08:00
WangRunji
f1407dff7b Note the reason of double fault in x86_64 release mode. 2018-07-15 20:51:14 +08:00
WangRunji
1cb50c00ba Fit for SFS 2018-07-15 16:44:21 +08:00