WangRunji
|
924c061d64
|
Merge branch 'x86-boot'
# Conflicts:
# crate/riscv
# kernel/Makefile
|
6 years ago |
dzy
|
5a0ce1e464
|
Refactored RISC-V page table identity mapping into a function.
|
6 years ago |
dzy
|
906019f7c6
|
Add little notes for BitAllocator
|
6 years ago |
WangRunji
|
caeff9ad97
|
Update packages and fit for new Rust nightly
|
6 years ago |
WangRunji
|
b88648ff44
|
Fit for newest Rust nightly. x86_64 ok, riscv32 broken.
|
6 years ago |
WangRunji
|
a2111a928f
|
Move thread mod to ucore-process crate
|
6 years ago |
WangRunji
|
776dc976c9
|
Fix for user
|
6 years ago |
WangRunji
|
06b39ed521
|
Impl remove any for StrideScheduler
|
6 years ago |
WangRunji
|
04b62ec79f
|
Use Vec instead of array in Scheduler
|
6 years ago |
WangRunji
|
c8a9eaf3e6
|
Split process mod to extern crate
|
6 years ago |
WangRunji
|
0c9679b710
|
Fix fork and syscall return value.
|
6 years ago |
WangRunji
|
27daa6d491
|
Fix user trap
|
6 years ago |
WangRunji
|
1ad3ed738e
|
Can run user program in RV32
|
6 years ago |
WangRunji
|
89bcd5f660
|
Fix kernel thread
|
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
|
7c7dbc9ded
|
Add CR3 to Context (x86_64)
|
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
|
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
|
ee242b44b2
|
Timer interrupt
|
6 years ago |
WangRunji
|
aeb7fce0e6
|
SBI: Support RISCV64
|
6 years ago |
WangRunji
|
02b94db859
|
Fix crate `riscv` version
|
6 years ago |
WangRunji
|
bf2ad7c6a5
|
Change target arch to RISCV32IMA. Recover some dependencies.
|
6 years ago |
WangRunji
|
a44231435f
|
Fork crate `riscv` as a submodule
|
7 years ago |
WangRunji
|
ced765fb5b
|
New crate `bbl`, port `sbi` mod.
|
7 years ago |
WangRunji
|
98be93e215
|
Fix Fifo & Clock SwapManager, pass test.
|
7 years ago |
WangRunji
|
a7a34835d5
|
Basic swap framework, temporarily disable SwapManagers
|
7 years ago |
WangRunji
|
e47f57a12a
|
Cow test pass in OS
|
7 years ago |
WangRunji
|
ade0f0110f
|
Use PageTable interface in OS
|
7 years ago |
WangRunji
|
f500086b9e
|
Copy-on-write for PageTable interface.
|
7 years ago |
WangRunji
|
978faf46c5
|
Split test for MockPageTable
|
7 years ago |
WangRunji
|
aa109498f1
|
Clear memory crate, redefine PageTable interface, reimplement MockPageTable.
|
7 years ago |
WangRunji
|
f3d62a5b8f
|
Replace `AreaFrameAllocator` by `BitAllocator`. Set opt-level=1 to avoid stack overflow.
|
7 years ago |
WangRunji
|
2762fded9c
|
New crate `bit-allocator`
|
7 years ago |
WangRunji
|
beffc302f0
|
Std based dining-philosophers-problem (mutex & condvar version)
|
7 years ago |
WangRunji
|
09098f0d2f
|
Add physical mod and reorganize.
|
7 years ago |
WangRunji
|
e2e9ead17c
|
Improve MockPageTable. Fix tests.
|
7 years ago |
WangRunji
|
733c102836
|
EnhancedClockSwapManager
|
7 years ago |
WangRunji
|
c0d83ef75b
|
Make tests safe, by using Arc & RefCell.
|
7 years ago |
WangRunji
|
e5e27db4ec
|
New page_table mod. Addr -> VirtAddr.
|
7 years ago |
WangRunji
|
8d304da4b4
|
MockSwapper
|
7 years ago |
WangRunji
|
470d5692fe
|
Pass test for FifoSwapManager. Change interface.
|
7 years ago |
WangRunji
|
be6ff50d7f
|
Test framework for FifoSwapManager. Not passed.
|
7 years ago |
WangRunji
|
a1e9ee36b2
|
Basic SwapManager & MockPageTable
|
7 years ago |
WangRunji
|
0420e85e4d
|
Simple VMA & MM struct at extern crate.
|
7 years ago |