300 Commits (e47f57a12ac85a2929f5db79e843400b7d68f1ce)
 

Author SHA1 Message Date
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
WangRunji 31bc92aec6 ThreadLock. Dining philosophers problem. Fix thread::spawn.
7 years ago
WangRunji 25dde04795 Tiny changes
7 years ago
WangRunji 71e49e3959 MutexSupport framework
7 years ago
WangRunji eaaace0d48 Print log target
7 years ago
WangRunji 2ad61cae65 Impl std-like thread interface.
7 years ago
WangRunji dcdbcfbce8 Impl spin & no-interrupt lock. Enable interrupt during syscall.
7 years ago
WangRunji a9117b305e Add diagram for trap doc
7 years ago
WangRunji aa478a20c2 Add final presentation pdf
7 years ago
WangRunji 216c759357 Add final report & log
7 years ago
WangRunji 1c80b95fe4 Add IDE driver. No longer link img.
7 years ago
WangRunji 90c14cc8fa List ucore_os_lab port status
7 years ago
WangRunji a74bb50b88 Impl StrideScheduler, pass test `priority`
7 years ago
WangRunji 9418d5de70 Impl RRScheduler
7 years ago
WangRunji dc74d37697 Use switch() to simplify sys_wait. Add #[inline(never)] to switch().
7 years ago
WangRunji 64b3716c92 HUGE: Impl switch() like ucore/xv6.
7 years ago
WangRunji 25d459f389 Use virtual address to access VGA
7 years ago
WangRunji 8f306edd85 Fix sys_wait. Pass `exit` & `sleep`.
7 years ago
WangRunji db8cd7b786 Use `LOG` env to set log level
7 years ago
WangRunji 58c8fc86d1 Fix 'make run'
7 years ago