869 Commits (68167efd45d86e6dd24c3aa1385785697fa6e1e7)
 

Author SHA1 Message Date
WangRunji 02b94db859 Fix crate `riscv` version
7 years ago
WangRunji da6dd763d7 Basic trap handler
7 years ago
WangRunji 4c1137a107 Make sure `kern_entry` at the beginning.
7 years ago
WangRunji af0e90ca1c Try to update travis
7 years ago
WangRunji 08777b1063 Add build guide.
7 years ago
WangRunji aa22fcabde Change target arch to RISCV32IMA. Recover some dependencies.
7 years ago
WangRunji bf2ad7c6a5 Change target arch to RISCV32IMA. Recover some dependencies.
7 years ago
WangRunji 37564cb9fd Change build target to `riscv32ia_unknown_none`
7 years ago
WangRunji f571db5076 Fix kernel address
7 years ago
WangRunji a44231435f Fork crate `riscv` as a submodule
7 years ago
WangRunji de7d9a1b71 Fix asm, can use pseudo ops.
7 years ago
WangRunji 1611bcb91f Update dockerfile
7 years ago
WangRunji ced765fb5b New crate `bbl`, port `sbi` mod.
7 years ago
WangRunji 211aeff841 Add bbl as bootloader
7 years ago
WangRunji 5ccd84e934 Add riscv-pk from ucore_os_lab
7 years ago
WangRunji c0193e69e6 Clear all code, make it compile for RISCV in docker.
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 cd020b97f9 Fix import
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 d2d9affddf Use multiboot2 to locate RSDT
7 years ago
WangRunji 0e2cccef9e Use uart_16550 crate
7 years ago
WangRunji da4db141d0 Use x86_64 GDT structs
7 years ago
WangRunji f707d7e757 Fit new rust nightly. Update dependencies.
7 years ago
WangRunji 932e2fc290 Move lapic to kernel virtual
7 years ago
WangRunji f4b9308f2c Use x86_64 paging! Remove original paging mod.
7 years ago
WangRunji 60ed3a2ed4 Fix SMP. Move cpu::init to asm.
7 years ago
WangRunji 4817f69acb Update x86_64 to 0.2.3. FIXME: SMP
7 years ago
WangRunji ce6c849f5b Update report
7 years ago
WangRunji dac818d5d7 Add docs for sync mod
7 years ago
WangRunji 646a88e4a6 Fix mpsc
7 years ago
WangRunji bf46193c01 Fix imports
7 years ago
WangRunji 1760d76581 Basic sync::mpsc. FIXME: deadlock.
7 years ago
WangRunji 0b0dac3c81 Complete `Semaphore` `Condvar`, dining-philosophers-problem using monitor
7 years ago
WangRunji 316d32496c Fix some warnings. Optimize imports.
7 years ago
WangRunji 7b57e64ff6 Auto deallocate frame
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 8d6663edb0 Fix and simplify SMP
7 years ago
WangRunji 2e9ffb84fa HUGE REFACTOR for memory mod: unified to `MemorySet`!
7 years ago
WangRunji b715cecf8d rsp -> Context.
7 years ago
WangRunji 37d2497de3 Semaphore (not tested)
7 years ago
WangRunji cb4f82b2a9 Extract Condvar from ThreadLock
7 years ago
WangRunji 5891613b22 Split sync mod
7 years ago
WangRunji beffc302f0 Std based dining-philosophers-problem (mutex & condvar version)
7 years ago
WangRunji 1fba1432a2 Add doc for sync::Mutex
7 years ago