WangRunji
|
60c2a77ac1
|
Unify IO in arch
|
6 years ago |
WangRunji
|
f1407dff7b
|
Note the reason of double fault in x86_64 release mode.
|
6 years ago |
WangRunji
|
1cb50c00ba
|
Fit for SFS
|
6 years ago |
WangRunji
|
6b0556e135
|
Add Cargo.lock
|
6 years ago |
WangRunji
|
0c9679b710
|
Fix fork and syscall return value.
|
6 years ago |
WangRunji
|
27daa6d491
|
Fix user trap
|
6 years ago |
WangRunji
|
69bc5caa81
|
Fix syscall return value, args. Pass `hello`.
|
6 years ago |
WangRunji
|
76f5af7d30
|
Merge `rust_main`. Change the way to pass multiboot info address.
|
6 years ago |
WangRunji
|
c768ec3e1e
|
Recover fs for RV32. Add user-riscv.img
Now load user programs from SFS data linked at kernel.
|
6 years ago |
WangRunji
|
019770c92d
|
Modify build path
|
6 years ago |
WangRunji
|
3286fed36c
|
Recover syscall for RV32
|
6 years ago |
WangRunji
|
1ad3ed738e
|
Can run user program in RV32
|
6 years ago |
WangRunji
|
c0138c4c35
|
Fix linking user program binaries
|
6 years ago |
WangRunji
|
ee80a3eeb7
|
Fix compile user for RV32
|
6 years ago |
WangRunji
|
935bcb3e15
|
Change user sub-project structure
|
6 years ago |
WangRunji
|
f819a702c7
|
User programs Rust workspace. Compile OK for x86_64.
|
6 years ago |
WangRunji
|
4faa8a65ae
|
Move kernel to a new directory
|
6 years ago |
WangRunji
|
02586cdb98
|
Move x86_64 specific external crate to arch mod
|
6 years ago |
WangRunji
|
89bcd5f660
|
Fix kernel thread
|
6 years ago |
WangRunji
|
e3a80a1223
|
Better some logging
|
6 years ago |
WangRunji
|
9001ac1f3d
|
Fix enter second kernel thread. But page fault now.
|
6 years ago |
WangRunji
|
b1a3695dfb
|
Prettify log output
|
6 years ago |
WangRunji
|
4914d22f44
|
Update doc & README
|
6 years ago |
WangRunji
|
f055ba7b23
|
Move kernel base to 0x80020000
|
6 years ago |
WangRunji
|
7b4cc6d772
|
Fix `log` crate
|
6 years ago |
WangRunji
|
96d8af8034
|
Use CowExt for RV32
|
6 years ago |
WangRunji
|
7d856fe009
|
Fix memory::cow LLVM error for RV32
|
6 years ago |
WangRunji
|
5530549a54
|
Recover `process` `thread` `sync` mod for RV32. Pass compile.
|
6 years ago |
WangRunji
|
0b5c9c0c68
|
Print log level
|
6 years ago |
WangRunji
|
42213081f5
|
Fix atomic_swap in core
|
6 years ago |
WangRunji
|
7151c67c2a
|
Improve LocalKey
|
6 years ago |
WangRunji
|
8ff40ea1dd
|
LocalKey / TLS support
|
6 years ago |
WangRunji
|
7c7dbc9ded
|
Add CR3 to Context (x86_64)
|
6 years ago |
WangRunji
|
548951abda
|
Forget the kernel MemorySet (x86_64)
|
6 years ago |
WangRunji
|
e12c4c1ddb
|
Set global bit for kernel region (x86_64)
|
6 years ago |
WangRunji
|
7f659950cb
|
Finish memory init
|
6 years ago |
WangRunji
|
95ab3a2f3b
|
Allocate kernel stack from heap, remove stack allocator, remove guard page.
|
6 years ago |
WangRunji
|
81ff6f13e5
|
Fix recursive mapping, finish kernel remap.
|
6 years ago |
WangRunji
|
677c1bd565
|
Impl page table for RV32. TODO: Fix recursive mapping.
|
6 years ago |
WangRunji
|
6b819d62e4
|
Fix core::sync::atomic::atomic_store
It seems to generate an incorrect instruction (swap the dst and val in SW)
|
6 years ago |
WangRunji
|
f7d75696bc
|
Move more to x86_64 arch
|
6 years ago |
WangRunji
|
d3ed84ba61
|
Fix compile
|
6 years ago |
WangRunji
|
aecb85d5e7
|
Move MemorySet out to memory crate
|
6 years ago |
WangRunji
|
5c14673fe0
|
Setup a simple page table, enable paging.
|
6 years ago |
WangRunji
|
b26fee1990
|
Make more mods common for both x86_64 & riscv32.
|
6 years ago |
WangRunji
|
87b7ea523b
|
Experimental patch for core::sync::atomic on RISCV32I
|
6 years ago |
WangRunji
|
a09be9cc40
|
Add doc for trap
|
6 years ago |
WangRunji
|
ee242b44b2
|
Timer interrupt
|
6 years ago |
WangRunji
|
aeb7fce0e6
|
SBI: Support RISCV64
|
6 years ago |
WangRunji
|
02b94db859
|
Fix crate `riscv` version
|
6 years ago |