| 
						
					 | 
					
						
						
							
						
						f17b3834f2
					 | 
					
						
						
							
							makefile: add license: Apache 2.0
						
						
						
						
						
						
					 | 
					
						2021-11-22 06:11:17 +08:00 | 
					
					
						
						
						
							
							
							
							
							
							
						
					 | 
				
			
				
					| 
						
					 | 
					
						
						
							
						
						3c94af8b04
					 | 
					
						
						
							
							smp: thread_Start accepts NULL argument struct
						
						
						
						
						
						
					 | 
					
						2021-11-14 20:31:07 +08:00 | 
					
					
						
						
						
							
							
							
							
							
							
						
					 | 
				
			
				
					| 
						
					 | 
					
						
						
							
						
						f510da321e
					 | 
					
						
						
							
							driver/serial: input
						
						
						
						
						
						
					 | 
					
						2021-11-14 20:31:07 +08:00 | 
					
					
						
						
						
							
							
							
							
							
							
						
					 | 
				
			
				
					| 
						
					 | 
					
						
						
							
						
						a5fa453be2
					 | 
					
						
						
							
							driver/pic: one argument for IRQ handlers
						
						
						
						
						
						
					 | 
					
						2021-11-14 20:03:25 +08:00 | 
					
					
						
						
						
							
							
							
							
							
							
						
					 | 
				
			
				
					| 
						
					 | 
					
						
						
							
						
						219bf76535
					 | 
					
						
						
							
							smp: channel (WIP)
						
						
						
						
						
						
					 | 
					
						2021-11-14 19:25:18 +08:00 | 
					
					
						
						
						
							
							
							
							
							
							
						
					 | 
				
			
				
					| 
						
					 | 
					
						
						
							
						
						97e834b8af
					 | 
					
						
						
							
							util/queue: rename queue to queue_Queue
						
						
						
						
						
						
					 | 
					
						2021-11-14 18:19:32 +08:00 | 
					
					
						
						
						
							
							
							
							
							
							
						
					 | 
				
			
				
					| 
						
					 | 
					
						
						
							
						
						c4b4dbeb18
					 | 
					
						
						
							
							interrupt: LoadGDT() with KERNEL_GDT_SIZE instead of calculating it
						
						
						
						
						
						
					 | 
					
						2021-11-14 18:19:10 +08:00 | 
					
					
						
						
						
							
							
							
							
							
							
						
					 | 
				
			
				
					| 
						
					 | 
					
						
						
							
						
						7e9cc76ec5
					 | 
					
						
						
							
							smp: cleanup Switch()
						
						
						
						
						
						
					 | 
					
						2021-11-14 17:40:09 +08:00 | 
					
					
						
						
						
							
							
							
							
							
							
						
					 | 
				
			
				
					| 
						
					 | 
					
						
						
							
						
						54f8aa54c1
					 | 
					
						
						
							
							interrupt, smp: fix GDT code/data segment order, fix GDT size
						
						
						
						
						
						
					 | 
					
						2021-11-14 17:31:11 +08:00 | 
					
					
						
						
						
							
							
							
							
							
							
						
					 | 
				
			
				
					| 
						
					 | 
					
						
						
							
						
						db6959a932
					 | 
					
						
						
							
							makefile: run QEMU with reboot/shutdown disabled
						
						
						
						
						
						
					 | 
					
						2021-11-14 17:30:33 +08:00 | 
					
					
						
						
						
							
							
							
							
							
							
						
					 | 
				
			
				
					| 
						
					 | 
					
						
						
							
						
						ec808e5e2e
					 | 
					
						
						
							
							runtime, interrupt: print to screen on errors, print CR2 on panic
						
						
						
						
						
						
						
						CR2 is the last accessed address set on page exceptions 
						
						
					 | 
					
						2021-11-11 16:18:47 +08:00 | 
					
					
						
						
						
							
							
							
							
							
							
						
					 | 
				
			
				
					| 
						
					 | 
					
						
						
							
						
						c0c2c12493
					 | 
					
						
						
							
							smp: properly recycle thread stack frames
						
						
						
						
						
						
					 | 
					
						2021-11-11 16:02:09 +08:00 | 
					
					
						
						
						
							
							
							
							
							
							
						
					 | 
				
			
				
					| 
						
					 | 
					
						
						
							
						
						20bc9f4a64
					 | 
					
						
						
							
							smp: proper cleanup on (non-main) thread exit
						
						
						
						
						
						
					 | 
					
						2021-11-11 15:44:59 +08:00 | 
					
					
						
						
						
							
							
							
							
							
							
						
					 | 
				
			
				
					| 
						
					 | 
					
						
						
							
						
						240e01d69c
					 | 
					
						
						
							
							smp: return value for Condiction_Wait
						
						
						
						
						
						
					 | 
					
						2021-11-11 15:26:57 +08:00 | 
					
					
						
						
						
							
							
							
							
							
							
						
					 | 
				
			
				
					| 
						
					 | 
					
						
						
							
						
						c476663ff9
					 | 
					
						
						
							
							vterm: remove vterm.c
						
						
						
						
						
						
					 | 
					
						2021-11-11 15:22:52 +08:00 | 
					
					
						
						
						
							
							
							
							
							
							
						
					 | 
				
			
				
					| 
						
					 | 
					
						
						
							
						
						19114bcaef
					 | 
					
						
						
							
							smp: set scheduler interval from 8 to 4 ticks
						
						
						
						
						
						
					 | 
					
						2021-11-11 02:27:32 +08:00 | 
					
					
						
						
						
							
							
							
							
							
							
						
					 | 
				
			
				
					| 
						
					 | 
					
						
						
							
						
						6434fe4b63
					 | 
					
						
						
							
							driver/input, kernel: use a Condition for input
						
						
						
						
						
						
					 | 
					
						2021-11-11 02:17:02 +08:00 | 
					
					
						
						
						
							
							
							
							
							
							
						
					 | 
				
			
				
					| 
						
					 | 
					
						
						
							
						
						3aafc2a032
					 | 
					
						
						
							
							smp: fixes to idle thread & condition
						
						
						
						
						
						
					 | 
					
						2021-11-11 02:16:39 +08:00 | 
					
					
						
						
						
							
							
							
							
							
							
						
					 | 
				
			
				
					| 
						
					 | 
					
						
						
							
						
						2fd9209b85
					 | 
					
						
						
							
							smp: Add Condition, separate SleepUntil from LastTick
						
						
						
						
						
						
					 | 
					
						2021-11-11 01:51:00 +08:00 | 
					
					
						
						
						
							
							
							
							
							
							
						
					 | 
				
			
				
					| 
						
					 | 
					
						
						
							
						
						9eeb9c8632
					 | 
					
						
						
							
							smp: move thread_Yield to Assembly
						
						
						
						
						
						
					 | 
					
						2021-11-11 01:49:27 +08:00 | 
					
					
						
						
						
							
							
							
							
							
							
						
					 | 
				
			
				
					| 
						
					 | 
					
						
						
							
						
						a8ed090450
					 | 
					
						
						
							
							smp: move the ticking from C to Assembly
						
						
						
						
						
						
					 | 
					
						2021-11-08 12:56:33 +08:00 | 
					
					
						
						
						
							
							
							
							
							
							
						
					 | 
				
			
				
					| 
						
					 | 
					
						
						
							
						
						c4eeb5e481
					 | 
					
						
						
							
							smp: fixup threading
						
						
						
						
						
						
					 | 
					
						2021-11-08 01:34:06 +08:00 | 
					
					
						
						
						
							
							
							
							
							
							
						
					 | 
				
			
				
					| 
						
					 | 
					
						
						
							
						
						17ae4cf630
					 | 
					
						
						
							
							kernel: add a test function for smp thread
						
						
						
						
						
						
					 | 
					
						2021-11-08 01:33:50 +08:00 | 
					
					
						
						
						
							
							
							
							
							
							
						
					 | 
				
			
				
					| 
						
					 | 
					
						
						
							
						
						9f86e52164
					 | 
					
						
						
							
							runtime: disable interrupts on Printf
						
						
						
						
						
						
						
						Printf uses vsnprintf and a global buffer prone to race conditions. 
						
						
					 | 
					
						2021-11-08 01:33:18 +08:00 | 
					
					
						
						
						
							
							
							
							
							
							
						
					 | 
				
			
				
					| 
						
					 | 
					
						
						
							
						
						ebbe907bb7
					 | 
					
						
						
							
							util/tree: fix FirstNode
						
						
						
						
						
						
					 | 
					
						2021-11-08 01:32:30 +08:00 | 
					
					
						
						
						
							
							
							
							
							
							
						
					 | 
				
			
				
					| 
						
					 | 
					
						
						
							
						
						e38a61a61a
					 | 
					
						
						
							
							memory: remove logging in kMalloc/kFree
						
						
						
						
						
						
					 | 
					
						2021-11-08 00:39:25 +08:00 | 
					
					
						
						
						
							
							
							
							
							
							
						
					 | 
				
			
				
					| 
						
					 | 
					
						
						
							
						
						297c20bbfc
					 | 
					
						
						
							
							smp: multithreading (WIP)
						
						
						
						
						
						
					 | 
					
						2021-11-08 00:07:58 +08:00 | 
					
					
						
						
						
							
							
							
							
							
							
						
					 | 
				
			
				
					| 
						
					 | 
					
						
						
							
						
						5cf68dca6a
					 | 
					
						
						
							
							util/tree: fix First/LastNode on empty tree
						
						
						
						
						
						
					 | 
					
						2021-11-07 23:59:06 +08:00 | 
					
					
						
						
						
							
							
							
							
							
							
						
					 | 
				
			
				
					| 
						
					 | 
					
						
						
							
						
						3d43ab3d61
					 | 
					
						
						
							
							driver/rtc: RTC ticker at 1024Hz
						
						
						
						
						
						
					 | 
					
						2021-11-07 23:07:47 +08:00 | 
					
					
						
						
						
							
							
							
							
							
							
						
					 | 
				
			
				
					| 
						
					 | 
					
						
						
							
						
						312703104d
					 | 
					
						
						
							
							driver/pic: IRQHandlerRaw jumped handler
						
						
						
						
						
						
					 | 
					
						2021-11-07 23:05:29 +08:00 | 
					
					
						
						
						
							
							
							
							
							
							
						
					 | 
				
			
				
					| 
						
					 | 
					
						
						
							
						
						193b29400a
					 | 
					
						
						
							
							memory: use 64 GDT entries
						
						
						
						
						
						
					 | 
					
						2021-11-07 18:45:52 +08:00 | 
					
					
						
						
						
							
							
							
							
							
							
						
					 | 
				
			
				
					| 
						
					 | 
					
						
						
							
						
						9f757efa5e
					 | 
					
						
						
							
							interrupt: move ReloadSegments before enabling interrupt
						
						
						
						
						
						
					 | 
					
						2021-11-07 17:55:43 +08:00 | 
					
					
						
						
						
							
							
							
							
							
							
						
					 | 
				
			
				
					| 
						
					 | 
					
						
						
							
						
						3b9fc2f4d0
					 | 
					
						
						
							
							interrupt: remove global IDTR/GDTR
						
						
						
						
						
						
						
						LIDT/LGDT is now called with addresses in stack 
						
						
					 | 
					
						2021-11-07 17:48:41 +08:00 | 
					
					
						
						
						
							
							
							
							
							
							
						
					 | 
				
			
				
					| 
						
					 | 
					
						
						
							
						
						7f7a985ed6
					 | 
					
						
						
							
							makefile: reasonable way of adding compile options
						
						
						
						
						
						
					 | 
					
						2021-11-07 01:38:41 +08:00 | 
					
					
						
						
						
							
							
							
							
							
							
						
					 | 
				
			
				
					| 
						
					 | 
					
						
						
							
						
						e5ba03599b
					 | 
					
						
						
							
							util: tree-based associative container
						
						
						
						
						
						
					 | 
					
						2021-11-07 01:33:42 +08:00 | 
					
					
						
						
						
							
							
							
							
							
							
						
					 | 
				
			
				
					| 
						
					 | 
					
						
						
							
						
						6832a76265
					 | 
					
						
						
							
							util: vector (dynamic array) container
						
						
						
						
						
						
					 | 
					
						2021-11-07 01:29:42 +08:00 | 
					
					
						
						
						
							
							
							
							
							
							
						
					 | 
				
			
				
					| 
						
					 | 
					
						
						
							
						
						bd347df5d5
					 | 
					
						
						
							
							driver/random: linear congruential
						
						
						
						
						
						
					 | 
					
						2021-11-07 01:29:07 +08:00 | 
					
					
						
						
						
							
							
							
							
							
							
						
					 | 
				
			
				
					| 
						
					 | 
					
						
						
							
						
						763c34c8de
					 | 
					
						
						
							
							memory: use libc malloc/free in testing
						
						
						
						
						
						
					 | 
					
						2021-11-07 01:24:40 +08:00 | 
					
					
						
						
						
							
							
							
							
							
							
						
					 | 
				
			
				
					| 
						
					 | 
					
						
						
							
						
						4460661bfd
					 | 
					
						
						
							
							main: refactor to keep the EFI headers from polluting the main namespace
						
						
						
						
						
						
					 | 
					
						2021-11-06 23:40:50 +08:00 | 
					
					
						
						
						
							
							
							
							
							
							
						
					 | 
				
			
				
					| 
						
					 | 
					
						
						
							
						
						e2a2679f6d
					 | 
					
						
						
							
							main: remove the keystroke wait on startup
						
						
						
						
						
						
					 | 
					
						2021-11-05 20:48:09 +08:00 | 
					
					
						
						
						
							
							
							
							
							
							
						
					 | 
				
			
				
					| 
						
					 | 
					
						
						
							
						
						d3c91c0048
					 | 
					
						
						
							
							driver/serial: disable interrupt when writing to serial
						
						
						
						
						
						
					 | 
					
						2021-11-05 15:11:58 +08:00 | 
					
					
						
						
						
							
							
							
							
							
							
						
					 | 
				
			
				
					| 
						
					 | 
					
						
						
							
						
						ab6737f904
					 | 
					
						
						
							
							makefile, runtime: add RUNTIME_QUIET build flag
						
						
						
						
						
						
					 | 
					
						2021-11-05 14:47:48 +08:00 | 
					
					
						
						
						
							
							
							
							
							
							
						
					 | 
				
			
				
					| 
						
					 | 
					
						
						
							
						
						f1df3846e4
					 | 
					
						
						
							
							main: invalidate screen on welcome message
						
						
						
						
						
						
					 | 
					
						2021-11-05 14:46:18 +08:00 | 
					
					
						
						
						
							
							
							
							
							
							
						
					 | 
				
			
				
					| 
						
					 | 
					
						
						
							
						
						518483ecc7
					 | 
					
						
						
							
							makefile: add a serial port for QEMU
						
						
						
						
						
						
					 | 
					
						2021-11-05 14:45:49 +08:00 | 
					
					
						
						
						
							
							
							
							
							
							
						
					 | 
				
			
				
					| 
						
					 | 
					
						
						
							
						
						00e6a6bf01
					 | 
					
						
						
							
							filesystem/fat: stub function definitions for linking
						
						
						
						
						
						
					 | 
					
						2021-11-05 14:30:30 +08:00 | 
					
					
						
						
						
							
							
							
							
							
							
						
					 | 
				
			
				
					| 
						
					 | 
					
						
						
							
						
						ad0bab89be
					 | 
					
						
						
							
							main, runtime: init serial at EFI boot stage, use serial as output
						
						
						
						
						
						
					 | 
					
						2021-11-05 14:29:48 +08:00 | 
					
					
						
						
						
							
							
							
							
							
							
						
					 | 
				
			
				
					| 
						
					 | 
					
						
						
							
						
						84a2f11284
					 | 
					
						
						
							
							driver/serial: Serial write interface
						
						
						
						
						
						
					 | 
					
						2021-11-05 14:21:04 +08:00 | 
					
					
						
						
						
							
							
							
							
							
							
						
					 | 
				
			
				
					| 
						
					 | 
					
						
						
							
						
						4fd4f46f01
					 | 
					
						
						
							
							driver/ps2: remove irq_ from names
						
						
						
						
						
						
					 | 
					
						2021-11-05 14:21:04 +08:00 | 
					
					
						
						
						
							
							
							
							
							
							
						
					 | 
				
			
				
					| 
						
					 | 
					
						
						
							
						
						98f92a9958
					 | 
					
						
						
							
							makefile: move pdlibc to extlib, add C++ stub standard headers
						
						
						
						
						
						
						
						It now kind of compiles with x86_64-elf gcc (does not link though) 
						
						
					 | 
					
						2021-11-04 20:15:58 +08:00 | 
					
					
						
						
						
							
							
							
							
							
							
						
					 | 
				
			
				
					| 
						
					 | 
					
						
						
							
						
						964893b14a
					 | 
					
						
						
							
							filesystem/fat: WIP
						
						
						
						
						
						
					 | 
					
						2021-11-04 18:05:19 +08:00 | 
					
					
						
						
						
							
							
							
							
							
							
						
					 |