5135fb0c0e 
								
							
								 
							
						 
						
							
							
								
								the shell that is able to fork-exec-wait  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								62b931d576 
								
							
								 
							
						 
						
							
							
								
								print hello on K210  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								aa5bd3041b 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'master' into arch-aarch64  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								364497e379 
								
							
								 
							
						 
						
							
							
								
								use the error code specified in ucore_os_lab instead of ucore_plus  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								a55f3b61e6 
								
							
								 
							
						 
						
							
							
								
								add Makefile option `graphic` & cargo feature `nographic`  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								a75e52691d 
								
							
								 
							
						 
						
							
							
								
								port to newer riscv crate supporting rv64  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								6e8c80d328 
								
							
								 
							
						 
						
							
							
								
								panicless default fs implement  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								09c2b6e7b7 
								
							
								 
							
						 
						
							
							
								
								aarch64/fb: add ANSI escape sequences parser  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								113a33e575 
								
							
								 
							
						 
						
							
							
								
								translate FsError to SysError  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								f8533442f2 
								
							
								 
							
						 
						
							
							
								
								return error code from syscall, not always -1  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								fa03f7b112 
								
							
								 
							
						 
						
							
							
								
								use the simple-filesystem crate with FsError  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								d4b6cc1082 
								
							
								 
							
						 
						
							
							
								
								compile rv64 pass on macOS  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								02bd2b2317 
								
							
								 
							
						 
						
							
							
								
								remove arch/riscv64 directory  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								6c717905d7 
								
							
								 
							
						 
						
							
							
								
								aarch64/fb: add foreground & background color  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								9dda78d2e3 
								
							
								 
							
						 
						
							
							
								
								aarch64/fb: improve the performance of ConsoleBuffer::new_line()  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								d737b1e7ba 
								
							
								 
							
						 
						
							
							
								
								maually remove warning, pt6  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								7b8359eeef 
								
							
								 
							
						 
						
							
							
								
								aarch64/fb: add 8x16 font  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								6eb49a0106 
								
							
								 
							
						 
						
							
							
								
								maually remove warning, pt5  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								7eb9f7abcf 
								
							
								 
							
						 
						
							
							
								
								maually remove warning, pt4  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								935c595083 
								
							
								 
							
						 
						
							
							
								
								maually remove warning, pt3  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								07b8a063ec 
								
							
								 
							
						 
						
							
							
								
								maually remove warning, pt2  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								b47c4758bf 
								
							
								 
							
						 
						
							
							
								
								aarch64/fb: add basic console driver  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								1ca2bde069 
								
							
								 
							
						 
						
							
							
								
								maually remove warning, pt1  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								f954c2fd6a 
								
							
								 
							
						 
						
							
							
								
								Completely get rid of cargo-generated target/  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								61a3beb8ba 
								
							
								 
							
						 
						
							
							
								
								Start porting for rv64  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								b5cc79d1b2 
								
							
								 
							
						 
						
							
							
								
								modify mmio() & set_mmio() in PageEntry  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								48cf25716f 
								
							
								 
							
						 
						
							
							
								
								aarch64/fb: flush data cache around mailbox accesses  
							
							... 
							
							
 
							
							can run on real raspi3 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								5987c2068b 
								
							
								 
							
						 
						
							
							
								
								aarch64/fb: remap framebuffer base address  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								6ba9e34f77 
								
							
								 
							
						 
						
							
							
								
								aarch64/fb: add framebuffer initialization  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								9b0b0064d0 
								
							
								 
							
						 
						
							
							
								
								Merge remote-tracking branch 'equation314/arch-aarch64' into dev  
							
							... 
							
							
 
							
							# Conflicts:
#	kernel/src/arch/aarch64/memory.rs
#	kernel/src/arch/aarch64/paging.rs
#	kernel/src/process/context.rs 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								d20d22b85b 
								
							
								 
							
						 
						
							
							
								
								add hint for user shell. detect cores through 'SMP' env.  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								fbf59396b2 
								
							
								 
							
						 
						
							
							
								
								use 'ucore_*.img' by default  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								d7511d8120 
								
							
								 
							
						 
						
							
							
								
								aarch64/fb: add mailbox property interfaces  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								6952f008e0 
								
							
								 
							
						 
						
							
							
								
								rename ContextImpl to Process  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								557f021c08 
								
							
								 
							
						 
						
							
							
								
								fix DelayHandler & MemoryAttr  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								704af94211 
								
							
								 
							
						 
						
							
							
								
								fix rv32 entry editing  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								f76a604b78 
								
							
								 
							
						 
						
							
							
								
								aarch64: add driver interfaces  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								81af2c82fd 
								
							
								 
							
						 
						
							
							
								
								aarch64: reduce some warnings, config system/generic timer in Makefile  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								5a165178cc 
								
							
								 
							
						 
						
							
							
								
								aarch64: implement IRQ register & serial IRQ  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								ff806d4465 
								
							
								 
							
						 
						
							
							
								
								move common codes to InactivePageTable trait  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								102866bcf9 
								
							
								 
							
						 
						
							
							
								
								introduce MemoryHandler and refactor MemorySet. temporary disable swap.  
							
							... 
							
							
 
							
							This is a manual rebase of LCY's code 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								96a76290b6 
								
							
								 
							
						 
						
							
							
								
								fix rv32 __mulsi3 add overflow  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								7b0ac1b84e 
								
							
								 
							
						 
						
							
							
								
								Script to allow rustc-only builds without cargo.  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								25ccdf6731 
								
							
								 
							
						 
						
							
							
								
								Update and cleanup makefile.  
							
							... 
							
							
 
							
							* Change few places from riscv64 to riscv32. Previously it was rv64
  because the code author does not have a 32bit toolchain and used a
  64bit one instead.
* Add new board type 'none', for running on qemu. 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								28d872064d 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'master' of  https://github.com/wangrunji0408/RustOS  into arch-aarch64  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								aa5e7a4e6f 
								
							
								 
							
						 
						
							
							
								
								remove #![feature(extern_crate_item_prelude)]  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								6879c66e58 
								
							
								 
							
						 
						
							
							
								
								aarch64: set TTBR1 = TTBR0 in InactivePageTable::edit(), swap is OK  
							
							... 
							
							
 
							
							TODO: flush icache in the right place 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								d5a6eb2020 
								
							
								 
							
						 
						
							
							
								
								user: fix build error  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								3f2beab52d 
								
									
								
							
								 
							
						 
						
							
							
								
								Merge branch 'master' into user-img  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								e7039945c1 
								
							
								 
							
						 
						
							
							
								
								move user img, remove useless files  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								acafe19e26 
								
							
								 
							
						 
						
							
							
								
								fix runtime error on aarch64  
							
							... 
							
							
 
							
							- InactivePageTable::activate should be separated for user & kernel (TTBR1/0)
- disable swappable for aarch64 (bug?)
- use polling getchar as serial interrupt is not implemented 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								66ac30d401 
								
							
								 
							
						 
						
							
							
								
								user: update make clean in kernel/  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								710b6d1a28 
								
							
								 
							
						 
						
							
							
								
								user: update Makefiles  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								e86229cb71 
								
							
								 
							
						 
						
							
							
								
								user: user rust programs are runnable  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								b5ced136f7 
								
							
								 
							
						 
						
							
							
								
								fix merge compile error  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								2afe8c731e 
								
							
								 
							
						 
						
							
							
								
								Merge remote-tracking branch 'equation314/arch-aarch64' into dev  
							
							... 
							
							
 
							
							# Conflicts:
#	crate/memory/src/memory_set.rs
#	kernel/Cargo.lock
#	kernel/src/arch/aarch64/interrupt/handler.rs
#	kernel/src/arch/aarch64/interrupt/mod.rs
#	kernel/src/arch/aarch64/memory.rs
#	kernel/src/arch/aarch64/mod.rs
#	kernel/src/arch/aarch64/paging.rs
#	kernel/src/consts.rs
#	kernel/src/fs.rs
#	kernel/src/lib.rs
#	kernel/src/memory.rs
#	kernel/src/process/context.rs
#	tools/riscv-pk/.gitignore
#	tools/riscv-pk/LICENSE
#	tools/riscv-pk/Makefile.in
#	tools/riscv-pk/README.md
#	tools/riscv-pk/aclocal.m4
#	tools/riscv-pk/bbl/bbl.ac
#	tools/riscv-pk/bbl/bbl.c
#	tools/riscv-pk/bbl/bbl.h
#	tools/riscv-pk/bbl/bbl.lds
#	tools/riscv-pk/bbl/bbl.mk.in
#	tools/riscv-pk/bbl/logo.c
#	tools/riscv-pk/bbl/payload.S
#	tools/riscv-pk/bbl/raw_logo.S
#	tools/riscv-pk/bbl/riscv_logo.txt
#	tools/riscv-pk/config.h.in
#	tools/riscv-pk/configure
#	tools/riscv-pk/configure.ac
#	tools/riscv-pk/dummy_payload/dummy_entry.S
#	tools/riscv-pk/dummy_payload/dummy_payload.lds
#	tools/riscv-pk/dummy_payload/dummy_payload.mk.in
#	tools/riscv-pk/machine/atomic.h
#	tools/riscv-pk/machine/bits.h
#	tools/riscv-pk/machine/disabled_hart_mask.h
#	tools/riscv-pk/machine/emulation.c
#	tools/riscv-pk/machine/emulation.h
#	tools/riscv-pk/machine/encoding.h
#	tools/riscv-pk/machine/fdt.c
#	tools/riscv-pk/machine/fdt.h
#	tools/riscv-pk/machine/finisher.c
#	tools/riscv-pk/machine/finisher.h
#	tools/riscv-pk/machine/flush_icache.c
#	tools/riscv-pk/machine/htif.c
#	tools/riscv-pk/machine/htif.h
#	tools/riscv-pk/machine/machine.ac
#	tools/riscv-pk/machine/machine.mk.in
#	tools/riscv-pk/machine/mcall.h
#	tools/riscv-pk/machine/mentry.S
#	tools/riscv-pk/machine/minit.c
#	tools/riscv-pk/machine/misaligned_ldst.c
#	tools/riscv-pk/machine/mtrap.c
#	tools/riscv-pk/machine/mtrap.h
#	tools/riscv-pk/machine/muldiv_emulation.c
#	tools/riscv-pk/machine/uart.c
#	tools/riscv-pk/machine/uart.h
#	tools/riscv-pk/machine/uart16550.c
#	tools/riscv-pk/machine/uart16550.h
#	tools/riscv-pk/machine/unprivileged_memory.h
#	tools/riscv-pk/machine/vm.h
#	tools/riscv-pk/scripts/config.guess
#	tools/riscv-pk/scripts/config.sub
#	tools/riscv-pk/scripts/install.sh
#	tools/riscv-pk/scripts/mk-install-dirs.sh
#	tools/riscv-pk/scripts/vcs-version.sh
#	tools/riscv-pk/util/snprintf.c
#	tools/riscv-pk/util/string.c
#	tools/riscv-pk/util/util.mk.in 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								7855b70bc0 
								
							
								 
							
						 
						
							
							
								
								aarch64: add origin raspberrypi config.txt  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								4f592336ff 
								
							
								 
							
						 
						
							
							
								
								aarch64: remove test functions  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								163e092c29 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'mmu' into arch-aarch64  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								75b039c924 
								
							
								 
							
						 
						
							
							
								
								aarch64/mmu: move crate aarch64 to remote  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								5a83d6a20f 
								
							
								 
							
						 
						
							
							
								
								aarch64: add user program SFS image  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								a59a7fbe9a 
								
							
								 
							
						 
						
							
							
								
								aarch64/mmu: simply handle page fault  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								d6a54496f0 
								
							
								 
							
						 
						
							
							
								
								arch64/mmu: invalidate all icaches in InactivePageTable::with()  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								0eb33b661f 
								
							
								 
							
						 
						
							
							
								
								aarch64/mmu: fix some bugs  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								fcf5074500 
								
							
								 
							
						 
						
							
							
								
								impl M-mode kernel for riscv32  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								2f8cfabbca 
								
							
								 
							
						 
						
							
							
								
								remove redundant nightly features  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								a74b893bd2 
								
							
								 
							
						 
						
							
							
								
								update Makefile  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								f882a085d6 
								
							
								 
							
						 
						
							
							
								
								user: link created SFS image in kernel  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								94bc8353f7 
								
							
								 
							
						 
						
							
							
								
								user: create SFS image in Makefile  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								02eb7d9125 
								
							
								 
							
						 
						
							
							
								
								update 'riscv-pk' to upstream submodule  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								6921e9018d 
								
							
								 
							
						 
						
							
							
								
								fix NoMMU entry point  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								18640b7537 
								
							
								 
							
						 
						
							
							
								
								impl NoMMU  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								52fe93188d 
								
							
								 
							
						 
						
							
							
								
								disable delay allocating frame, remove `memory_set_record`  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								2db453556d 
								
							
								 
							
						 
						
							
							
								
								try to fix interrupt & deadlock on RV32  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								d30c7e59ca 
								
							
								 
							
						 
						
							
							
								
								aarch64: minor modify  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								264600f145 
								
							
								 
							
						 
						
							
							
								
								aarch64/mmu: add io remap  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								a8b334123a 
								
							
								 
							
						 
						
							
							
								
								aarch64/mmu: add memory region attribute config  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								f9e47b2fd8 
								
							
								 
							
						 
						
							
							
								
								aarch64/mmu: refactor PageTableFlags  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								de6354ddd3 
								
							
								 
							
						 
						
							
							
								
								aarch64/mmu: use ASID to avoid flush TLB frequently in context switch  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								55087fc5a2 
								
							
								 
							
						 
						
							
							
								
								aarch64/mmu: use both TTBR0_EL1 & TTBR1_EL1  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								46f0e85230 
								
							
								 
							
						 
						
							
							
								
								add `ucore-i386-pic.img` user programs. reorganize imgs.  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								bb1c1abaa4 
								
							
								 
							
						 
						
							
							
								
								aarch64/mmu: can run on the real raspi3  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								a9de99d3a9 
								
							
								 
							
						 
						
							
							
								
								aarch64/mmu: remap kernel memory ranges at the end of memory::init()  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								99c5b3c3f8 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'arch-aarch64' into mmu  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								13be52133d 
								
							
								 
							
						 
						
							
							
								
								aarch64: move kernel stack top to 0x100000  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								f398945ad3 
								
							
								 
							
						 
						
							
							
								
								aarch64: hard link user program  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								9e8124abbb 
								
							
								 
							
						 
						
							
							
								
								aarch64/mmu: mmu enabled  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								b1bdac7d0f 
								
							
								 
							
						 
						
							
							
								
								fix merge for aarch64. now it works!  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								2daf8c188d 
								
							
								 
							
						 
						
							
							
								
								Merge remote-tracking branch 'equation314/arch-aarch64' into dev  
							
							... 
							
							
 
							
							# Conflicts:
#	.gitignore
#	kernel/Cargo.lock
#	kernel/Cargo.toml
#	kernel/Makefile
#	kernel/riscv32-blog_os.json
#	kernel/src/consts.rs
#	kernel/src/fs.rs
#	kernel/src/lib.rs
#	kernel/src/process/context.rs
#	kernel/src/process/mod.rs 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								56fcad245a 
								
							
								 
							
						 
						
							
							
								
								update kernel to 2018 edition  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								c4935a1477 
								
							
								 
							
						 
						
							
							
								
								use `pc-keyboard` crate and enable keyboard again for x86  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								76d2c6ec7b 
								
							
								 
							
						 
						
							
							
								
								Fix the bug of active_table_swap() wrongly force unlock in pg fault handler  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								b2fec2b16b 
								
							
								 
							
						 
						
							
							
								
								Fix a bug in context for smp  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								67035ac556 
								
							
								 
							
						 
						
							
							
								
								Fix a bug in pg fault handler caused by memory_set_record  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								00d0ea8a8b 
								
							
								 
							
						 
						
							
							
								
								Modified the code in pgfault  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								9d803e87d9 
								
							
								 
							
						 
						
							
							
								
								replace some unwrap() and comment the cow pgfault handler  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								df485d506e 
								
							
								 
							
						 
						
							
							
								
								simplify ProcessManager  
							
							... 
							
							
 
							
							- given that a proc can only be waited by its parent, wait_queue is no longer needed. 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								5478b9ba7b 
								
							
								 
							
						 
						
							
							
								
								no longer show normal page fault  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								ef75c8a072 
								
							
								 
							
						 
						
							
							
								
								fix unwrap panic. now user shell is working.  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								da399dca96 
								
							
								 
							
						 
						
							
							
								
								remove Process struct  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								205f90a264 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'dev' into g4-merge  
							
							... 
							
							
 
							
							# Conflicts:
#	crate/memory/src/cow.rs
#	crate/memory/src/memory_set.rs
#	crate/memory/src/paging/mod.rs
#	crate/memory/src/swap/mod.rs
#	crate/process/src/lib.rs
#	crate/process/src/process_manager.rs
#	crate/process/src/processor.rs
#	crate/process/src/thread.rs
#	crate/riscv
#	kernel/Cargo.lock
#	kernel/src/arch/riscv32/compiler_rt.rs
#	kernel/src/arch/riscv32/consts.rs
#	kernel/src/arch/riscv32/context.rs
#	kernel/src/arch/riscv32/interrupt.rs
#	kernel/src/arch/riscv32/memory.rs
#	kernel/src/arch/riscv32/mod.rs
#	kernel/src/arch/riscv32/paging.rs
#	kernel/src/arch/x86_64/driver/ide.rs
#	kernel/src/arch/x86_64/interrupt/handler.rs
#	kernel/src/arch/x86_64/mod.rs
#	kernel/src/console.rs
#	kernel/src/consts.rs
#	kernel/src/fs.rs
#	kernel/src/lib.rs
#	kernel/src/memory.rs
#	kernel/src/process/context.rs
#	kernel/src/process/mod.rs
#	kernel/src/syscall.rs
#	kernel/src/trap.rs 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								e06f6b8bc5 
								
							
								 
							
						 
						
							
							
								
								update Cargo.toml & Cargo.lock  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								d27ac65df3 
								
							
								 
							
						 
						
							
							
								
								fix load program slice error  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								5ce7d0a9c0 
								
							
								 
							
						 
						
							
							
								
								use user shell by default. fix kernel shell removing user thread.  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								21b0bdcbca 
								
							
								 
							
						 
						
							
							
								
								separate kernel shell to a mod, remove console mod  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								b3e5d1987e 
								
							
								 
							
						 
						
							
							
								
								update Cargo.lock  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								9b3294a5f2 
								
							
								 
							
						 
						
							
							
								
								fix clear bss when load user program. 'sh' works!  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								40b099ed79 
								
							
								 
							
						 
						
							
							
								
								clean riscv-pk in Makefile  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								44bf3fb07a 
								
							
								 
							
						 
						
							
							
								
								impl sys_exec  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								576ae1d911 
								
							
								 
							
						 
						
							
							
								
								add setup_page_table  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								f4305b382f 
								
							
								 
							
						 
						
							
							
								
								Add comment and report for expr4  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								ef213d60bb 
								
							
								 
							
						 
						
							
							
								
								mmu  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								eb00b2bfd3 
								
							
								 
							
						 
						
							
							
								
								merge conflict  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								a8da42d521 
								
							
								 
							
						 
						
							
							
								
								Add expr4 report and some trace for synctest  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								4d8d48cf4d 
								
							
								 
							
						 
						
							
							
								
								repair some bugs and move child control to processmanager  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								65cd42028c 
								
							
								 
							
						 
						
							
							
								
								Add illegal vma check in page fault hangler  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								c5499a62c5 
								
							
								 
							
						 
						
							
							
								
								Fix bug in swap in/out. Address ailign to 4K.  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								6652f8daf6 
								
							
								 
							
						 
						
							
							
								
								repair some bugs  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								8d6d3b7c37 
								
							
								 
							
						 
						
							
							
								
								debug for sleepkill  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								f97e8458b8 
								
							
								 
							
						 
						
							
							
								
								impl stdin & stdout as INode  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								5ee44588e0 
								
							
								 
							
						 
						
							
							
								
								Enlarge the physical and kernel heap memory. Fix the bug in map the kernel.  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								0b900b6f03 
								
							
								 
							
						 
						
							
							
								
								Code Transplanting: Blocking getchar  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								9adcea44d5 
								
							
								 
							
						 
						
							
							
								
								Code transplanting: Fix bugs. Pass test 'spin'  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								a589ae90f3 
								
							
								 
							
						 
						
							
							
								
								use SysError in syscalls  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								beb6533059 
								
							
								 
							
						 
						
							
							
								
								impl sys_getdirentry. 'ls' ok.  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								124a5e0d5d 
								
							
								 
							
						 
						
							
							
								
								impl sys_dup  
							
							... 
							
							
 
							
							- Fix exit_code: i32
- Convert Box<File> to Arc<Mutex<File>> in Context 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								16be828370 
								
							
								 
							
						 
						
							
							
								
								impl sys_fstat  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								128257c395 
								
							
								 
							
						 
						
							
							
								
								impl argc & argv for user process  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								5610d0bdb0 
								
							
								 
							
						 
						
							
							
								
								aarch64: context switch is runnable!  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								e27aea47e1 
								
							
								 
							
						 
						
							
							
								
								impl file syscalls, without test  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								200a574a1f 
								
							
								 
							
						 
						
							
							
								
								fix physical memory range on RV32  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								67b920cc16 
								
							
								 
							
						 
						
							
							
								
								aarch64: format paging.rs  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								a0b948fb53 
								
							
								 
							
						 
						
							
							
								
								add basic alloc  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								a13f39149b 
								
							
								 
							
						 
						
							
							
								
								add basic alloc  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								91bd411a8f 
								
							
								 
							
						 
						
							
							
								
								fit for multi-thread sfs  
							
							... 
							
							
 
							
							- use global root inode
- remove global IDE on x86 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								9fc13c8ebb 
								
							
								 
							
						 
						
							
							
								
								aarch64: implement syscall  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								a91534e34d 
								
							
								 
							
						 
						
							
							
								
								aarch64: implement context switch, but not tested  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								16fb733497 
								
							
								 
							
						 
						
							
							
								
								Blocking getchar  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								a145909998 
								
							
								 
							
						 
						
							
							
								
								Fix compile error after merge for the new processor.  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								fcdee71f9d 
								
							
								 
							
						 
						
							
							
								
								Merge confilt  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								c8ea2cb0cf 
								
							
								 
							
						 
						
							
							
								
								Fix bug and enable swap in/out and frame delayed allocating.  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								87506b000d 
								
							
								 
							
						 
						
							
							
								
								debug for process  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								3e1d8c5827 
								
							
								 
							
						 
						
							
							
								
								aarch64: implement ARM generic timer, can work in qemu  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								2002ddd5fa 
								
							
								 
							
						 
						
							
							
								
								move processor from wrj  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								b1425a53f9 
								
							
								 
							
						 
						
							
							
								
								finish frame delayed allocating  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								0a6b4fb8f2 
								
							
								 
							
						 
						
							
							
								
								Modify const. Update cargo.  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								ba4a24ba3b 
								
							
								 
							
						 
						
							
							
								
								Fix RV32 multi-core: Setup page table for other cores.  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								b7d6b2989d 
								
							
								 
							
						 
						
							
							
								
								Fix bugs. Pass test 'spin'  
							
							... 
							
							
 
							
							- Fix ACK IRQ on x86.
- Add process exit handler. 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								ed20aa45fd 
								
							
								 
							
						 
						
							
							
								
								Fix user process bug on RV32.  
							
							... 
							
							
 
							
							Set sstatus.SIE = 0 on the initial TrapFrame, to prevent interrupt on switching. 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								6fc23e1134 
								
							
								 
							
						 
						
							
							
								
								Ugly impl sys_wait(0)  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								74facd8e87 
								
							
								 
							
						 
						
							
							
								
								Use Vec to replace array in ProcessManager.  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								07aa9a0686 
								
							
								 
							
						 
						
							
							
								
								aarch64: implement IRQ & system timer, but don't work in qemu  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								182c595a20 
								
							
								 
							
						 
						
							
							
								
								Enable multi-core on RV32.  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								250f1385d3 
								
							
								 
							
						 
						
							
							
								
								Better debug print for TrapFrame on RV32  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								4f03eff015 
								
							
								 
							
						 
						
							
							
								
								Use SpinNoIrqLock to replace the spin::mutex  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								504401355f 
								
							
								 
							
						 
						
							
							
								
								Add expr3 report(not finiished.  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								8c19499112 
								
							
								 
							
						 
						
							
							
								
								aarch64: implement exception interface & synchronous exception handler  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								7229b49eb8 
								
							
								 
							
						 
						
							
							
								
								Use rust-lld for RV32. Remove riscv git submodule.  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								2c3de7b222 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'OsTrain2018-g4' of github.com:oscourse-tsinghua/RustOS into lcy_issue1  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								edde416052 
								
							
								 
							
						 
						
							
							
								
								Finish swap for multi-user process  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								3386a793a5 
								
							
								 
							
						 
						
							
							
								
								aarch64: disable NEON  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								001254fd64 
								
							
								 
							
						 
						
							
							
								
								riscv32: change linker to rust-lld  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								ae5260db5c 
								
							
								 
							
						 
						
							
							
								
								aarch64: change linker to rust-lld  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								7746485861 
								
							
								 
							
						 
						
							
							
								
								aarch64: add target 'install' to Makefile  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								632baedabd 
								
							
								 
							
						 
						
							
							
								
								aarch64: can run on the real raspi3  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								2e094d08bc 
								
							
								 
							
						 
						
							
							
								
								common: add a logo  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								abf3418d24 
								
							
								 
							
						 
						
							
							
								
								aarch64: implement I/O by serial port  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								72dc3f62ad 
								
							
								 
							
						 
						
							
							
								
								Remove kernel stack from MemorySet.  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								addf49ffdb 
								
							
								 
							
						 
						
							
							
								
								aarch64: add crate bcm2837, implement GPIO  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								438e290b6d 
								
							
								 
							
						 
						
							
							
								
								Fix PageTable::get_entry -> Option.  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								cc936ded35 
								
							
								 
							
						 
						
							
							
								
								aarch64: bootable in qemu  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								a42d6086c6 
								
							
								 
							
						 
						
							
							
								
								Simplify IDE code.  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								81196729e4 
								
							
								 
							
						 
						
							
							
								
								Fix RV32 atomic.  
							
							... 
							
							
 
							
							- Fix __atomic_compare_exchange_4().
- Add patch for core::sync::atomic.
- Revert kernel Mutex. 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								ede69959e4 
								
							
								 
							
						 
						
							
							
								
								debug for compare exchange  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								174e0da3b6 
								
							
								 
							
						 
						
							
							
								
								aarch64: basic framework  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								1140d32aaa 
								
							
								 
							
						 
						
							
							
								
								add arch=aarch64 & board=raspi3 to Makefile  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								95ab9caba1 
								
							
								 
							
						 
						
							
							
								
								Add impl of atomic_fetch_*  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								0680023e35 
								
							
								 
							
						 
						
							
							
								
								Recover wait/sleep  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								85a1dca684 
								
							
								 
							
						 
						
							
							
								
								Use weak linkage to provide dependencies for process::thread.  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								80b161db98 
								
							
								 
							
						 
						
							
							
								
								Recover set_priority and fork  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								5db908b1c5 
								
							
								 
							
						 
						
							
							
								
								Separate ProcessManager to a mod.  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								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. 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								6741ba399b 
								
							
								 
							
						 
						
							
							
								
								Add arch::cpu::halt(). Halt when panic.  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								5f34cc54d8 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'OsTrain2018-g4' of github.com:oscourse-tsinghua/RustOS into lcy_issue1  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								63349ade19 
								
							
								 
							
						 
						
							
							
								
								Finish add more comment for kernel and finish set user memory swappable.  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								9474ad7220 
								
							
								 
							
						 
						
							
							
								
								update atomic function and workaround the LLVM compiling bug(maybe)  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								5bc392f388 
								
							
								 
							
						 
						
							
							
								
								Enable RV32 IPI.  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								1b4edf3bb2 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'rv32-smp-porting' into dev  
							
							... 
							
							
 
							
							# Conflicts:
#	kernel/Makefile 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								72e92c07f9 
								
							
								 
							
						 
						
							
							
								
								Switch to RV64 GNU toolchain. Simplify compiler_rt.  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								f1771f8ef2 
								
							
								 
							
						 
						
							
							
								
								Finish x86 SMP startup. Support timer & IPI.  
							
							... 
							
							
 
							
							- Remove smp, apic mod.
  Instead, use new bootloader & apic crate.
- Disable PIC & PIT.
  Instead, use IOAPIC & APIC Timer. 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								f27fd37d82 
								
							
								 
							
						 
						
							
							
								
								replaced spin::Mutex with sync::SpinLock, now spinlock works well.  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								f7b7b1bcd6 
								
							
								 
							
						 
						
							
							
								
								added workaround for atomic ops  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								cfda03a0f2 
								
							
								 
							
						 
						
							
							
								
								trying to add atomic implementations in rv32, but still buggy  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								0a81014007 
								
							
								 
							
						 
						
							
							
								
								Add page handler for swap in/out in riscv32's pagefault  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								49cd04dce3 
								
							
								 
							
						 
						
							
							
								
								added rv32 smp booting, with slight modification to bbl  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								6cf0d6db23 
								
							
								 
							
						 
						
							
							
								
								fixed setting in riscv-pk to enable rv32ia, added smp option in Makefile  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								0a7ec18701 
								
							
								 
							
						 
						
							
							
								
								Add page fault handler to riscv 32.  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								96cdf37b15 
								
							
								 
							
						 
						
							
							
								
								Add some comment for paging and add proposal doc  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								cef2d792be 
								
							
								 
							
						 
						
							
							
								
								Add part of comments for riscv32 module  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								2157e4bbcf 
								
							
								 
							
						 
						
							
							
								
								Add comment for interrutp and trap code  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								91455d163d 
								
							
								 
							
						 
						
							
							
								
								Finish comment riscv context.  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								5b4aefdb0d 
								
							
								 
							
						 
						
							
							
								
								Add comment for riscv32 context  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								e4300d3515 
								
							
								 
							
						 
						
							
							
								
								Add more comment in kernel but not finished  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								4e0b510895 
								
							
								 
							
						 
						
							
							
								
								Finish comment for ristv boot.  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								cd1bd55729 
								
							
								 
							
						 
						
							
							
								
								Update README, travis, riscv crate.  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								924c061d64 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'x86-boot'  
							
							... 
							
							
 
							
							# Conflicts:
#	crate/riscv
#	kernel/Makefile 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								224905f12c 
								
							
								 
							
						 
						
							
							
								
								Update Makefile  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								7a9b746c68 
								
							
								 
							
						 
						
							
							
								
								x86_64 back to normal.  
							
							... 
							
							
 
							
							* Fix kernel stack P4E
* User programs: disk0 -> disk1
* IDE IRQ appears ?? 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								7f00001fd1 
								
							
								 
							
						 
						
							
							
								
								Move to higher half  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								5a0ce1e464 
								
							
								 
							
						 
						
							
							
								
								Refactored RISC-V page table identity mapping into a function.  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								11223957d1 
								
							
								 
							
						 
						
							
							
								
								Add `mkdir build` in makefile.  
							
							... 
							
							
 
							
							It this is missing, building with a clean repository will fail
because build/ does not exist. 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								0a9c294814 
								
							
								 
							
						 
						
							
							
								
								Fix x86_64 startup. TODO: higher half.  
							
							... 
							
							
 
							
							* Remove legacy boot, MP, ACPI.
* Disable SMP.
* Modify startup: boot -> arch::init -> kmain.
* Fix FrameAllocator on x86_64.
* Remove kernel remap.
* Alloc kernel heap at bss. 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								0437e5cb17 
								
							
								 
							
						 
						
							
							
								
								Make it compile for bootimage toolchain  
							
							... 
							
							
 
							
							* Revert to nightly-2018-08-27 due to its bug on macOS
* Not build C code 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								caeff9ad97 
								
							
								 
							
						 
						
							
							
								
								Update packages and fit for new Rust nightly  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								cbe7affc5d 
								
							
								 
							
						 
						
							
							
								
								Merge riscv for QEMU & FPGA  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								ff8930a36c 
								
							
								 
							
						 
						
							
							
								
								Make frame allocator smaller. Fix serial stupid bug.  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								3cf118ba67 
								
							
								 
							
						 
						
							
							
								
								Mul & div inst emulation  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								b99dc3d1cf 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'new-rv-toolchain' into board  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								640872d154 
								
							
								 
							
						 
						
							
							
								
								Use alloc API to fix stack overflow in release mode.  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								384f6a9c9c 
								
							
								 
							
						 
						
							
							
								
								Change kernel heap to identity map  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								dc97b4b433 
								
							
								 
							
						 
						
							
							
								
								Fix atomic_compare_exchange  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								3d0d6e3d02 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'new-rv-toolchain' into board  
							
							... 
							
							
 
							
							# Conflicts:
#	kernel/Makefile
#	kernel/src/arch/riscv32/boot/entry.asm 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								3d6fcb8d8c 
								
							
								 
							
						 
						
							
							
								
								Fix x86_64. Not elegant.  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								10e3cea340 
								
							
								 
							
						 
						
							
							
								
								Only use Rust toolchain to build for rv32. Set arch to rv32i. x86_64 broken.  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								296b6196f4 
								
							
								 
							
						 
						
							
							
								
								rv64 toolchain configure for riscv-pk  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								b88648ff44 
								
							
								 
							
						 
						
							
							
								
								Fit for newest Rust nightly. x86_64 ok, riscv32 broken.  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								7e5726845f 
								
							
								 
							
						 
						
							
							
								
								Simple bootloader. Remove riscv-pk.  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								a2111a928f 
								
							
								 
							
						 
						
							
							
								
								Move thread mod to ucore-process crate  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								fed7b38845 
								
							
								 
							
						 
						
							
							
								
								Try to fix travis for x86_64  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								776dc976c9 
								
							
								 
							
						 
						
							
							
								
								Fix for user  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								6022ec8efc 
								
							
								 
							
						 
						
							
							
								
								Fix load user program out of range  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								52d3443e05 
								
							
								 
							
						 
						
							
							
								
								Recover idle process. Make shell wait for the user it spawned.  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								c8a9eaf3e6 
								
							
								 
							
						 
						
							
							
								
								Split process mod to extern crate  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								37a6df252f 
								
							
								 
							
						 
						
							
							
								
								Refactor process mod  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								97b838981f 
								
							
								 
							
						 
						
							
							
								
								Fix console  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								cf1a2d3450 
								
							
								 
							
						 
						
							
							
								
								Simple kernel shell  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								542a06d50e 
								
							
								 
							
						 
						
							
							
								
								Set default log level to WARN  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								5647fb1273 
								
							
								 
							
						 
						
							
							
								
								Fix build guide  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								60c2a77ac1 
								
							
								 
							
						 
						
							
							
								
								Unify IO in arch  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								f1407dff7b 
								
							
								 
							
						 
						
							
							
								
								Note the reason of double fault in x86_64 release mode.  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								1cb50c00ba 
								
							
								 
							
						 
						
							
							
								
								Fit for SFS  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								6b0556e135 
								
							
								 
							
						 
						
							
							
								
								Add Cargo.lock  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								0c9679b710 
								
							
								 
							
						 
						
							
							
								
								Fix fork and syscall return value.  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								27daa6d491 
								
							
								 
							
						 
						
							
							
								
								Fix user trap  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								69bc5caa81 
								
							
								 
							
						 
						
							
							
								
								Fix syscall return value, args. Pass `hello`.  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								76f5af7d30 
								
							
								 
							
						 
						
							
							
								
								Merge `rust_main`. Change the way to pass multiboot info address.  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								c768ec3e1e 
								
							
								 
							
						 
						
							
							
								
								Recover fs for RV32. Add user-riscv.img  
							
							... 
							
							
 
							
							Now load user programs from SFS data linked at kernel. 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								019770c92d 
								
							
								 
							
						 
						
							
							
								
								Modify build path  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								3286fed36c 
								
							
								 
							
						 
						
							
							
								
								Recover syscall for RV32  
							
							
 
							
						 
						
							7 years ago  
				
					
						
							
							
								 
						
							
							
								1ad3ed738e 
								
							
								 
							
						 
						
							
							
								
								Can run user program in RV32  
							
							
 
							
						 
						
							7 years ago