WangRunji
b7d6b2989d
Fix bugs. Pass test 'spin'
...
- Fix ACK IRQ on x86.
- Add process exit handler.
6 years ago
WangRunji
ed20aa45fd
Fix user process bug on RV32.
...
Set sstatus.SIE = 0 on the initial TrapFrame, to prevent interrupt on switching.
6 years ago
WangRunji
6fc23e1134
Ugly impl sys_wait(0)
6 years ago
WangRunji
74facd8e87
Use Vec to replace array in ProcessManager.
6 years ago
equation314
07aa9a0686
aarch64: implement IRQ & system timer, but don't work in qemu
6 years ago
WangRunji
182c595a20
Enable multi-core on RV32.
6 years ago
WangRunji
250f1385d3
Better debug print for TrapFrame on RV32
6 years ago
lcy1996
4f03eff015
Use SpinNoIrqLock to replace the spin::mutex
6 years ago
lcy1996
66b18772c6
Modified the expr3/report
6 years ago
lcy1996
89fb06d8dd
Modified the expr3/report
6 years ago
lcy1996
bdd60dd731
Modified the expr3/report
6 years ago
equation314
430bf508e2
aarch64: add some comments to crate bcm2837
6 years ago
Ben Pig Chu
d698440feb
fe report clarify
6 years ago
Ben Pig Chu
93ad064ae9
Merge branch 'OsTrain2018-g4' of https://github.com/oscourse-tsinghua/RustOS into OsTrain2018-g4
6 years ago
Ben Pig Chu
227c514092
fs report
6 years ago
chenqiuhao1997
f69db428c5
Update report.md
6 years ago
lcy1996
504401355f
Add expr3 report(not finiished.
6 years ago
equation314
8c19499112
aarch64: implement exception interface & synchronous exception handler
6 years ago
WangRunji
7229b49eb8
Use rust-lld for RV32. Remove riscv git submodule.
6 years ago
lcy1996
2c3de7b222
Merge branch 'OsTrain2018-g4' of github.com:oscourse-tsinghua/RustOS into lcy_issue1
6 years ago
lcy1996
edde416052
Finish swap for multi-user process
6 years ago
equation314
3386a793a5
aarch64: disable NEON
6 years ago
equation314
001254fd64
riscv32: change linker to rust-lld
6 years ago
equation314
ae5260db5c
aarch64: change linker to rust-lld
6 years ago
equation314
7746485861
aarch64: add target 'install' to Makefile
6 years ago
equation314
632baedabd
aarch64: can run on the real raspi3
6 years ago
equation314
2e094d08bc
common: add a logo
6 years ago
equation314
abf3418d24
aarch64: implement I/O by serial port
6 years ago
equation314
517a78d114
aarch64: implement mini UART for bcm2837
6 years ago
WangRunji
72dc3f62ad
Remove kernel stack from MemorySet.
6 years ago
equation314
faa5f01f31
aarch64: fix a bug of bcm2837::asm::dealy()
6 years ago
equation314
addf49ffdb
aarch64: add crate bcm2837, implement GPIO
6 years ago
WangRunji
438e290b6d
Fix PageTable::get_entry -> Option.
6 years ago
equation314
cc936ded35
aarch64: bootable in qemu
6 years ago
WangRunji
a42d6086c6
Simplify IDE code.
6 years ago
WangRunji
81196729e4
Fix RV32 atomic.
...
- Fix __atomic_compare_exchange_4().
- Add patch for core::sync::atomic.
- Revert kernel Mutex.
6 years ago
chenqiuhao
ede69959e4
debug for compare exchange
6 years ago
equation314
174e0da3b6
aarch64: basic framework
6 years ago
equation314
1140d32aaa
add arch=aarch64 & board=raspi3 to Makefile
6 years ago
equation314
70abc9ec2e
ignore .DS_Store
6 years ago
WangRunji
925a08f9ae
Add OSLab/exp3 report
6 years ago
WangRunji
95ab9caba1
Add impl of atomic_fetch_*
6 years ago
WangRunji
0680023e35
Recover wait/sleep
6 years ago
WangRunji
c734f79699
Drop context when process exit. Remove util mod.
6 years ago
WangRunji
85a1dca684
Use weak linkage to provide dependencies for process::thread.
6 years ago
WangRunji
80b161db98
Recover set_priority and fork
6 years ago
WangRunji
5db908b1c5
Separate ProcessManager to a mod.
6 years ago
WangRunji
f7eb09e856
Multicore processing WORKS! Basically ...
...
- Rewrite processor.rs
Refactor to `Processor` & `ProcessManager`
- Use Box<dyn> instead of generic.
- Wait/sleep/wakeup is not supported yet.
I'm considering to implement them with WaitQueue.
6 years ago
WangRunji
6741ba399b
Add arch::cpu::halt(). Halt when panic.
6 years ago
lcy1996
ec27ed8d2e
add comment
6 years ago