Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								2df7f8a1e5
								
							
						 | 
						
							
							
								
								BuildSystem: add rule to build libstdc++
							
							
							
							
							
							
							
							We can now build libstdc++ and actually link with g++ 
							
						 | 
						
							2023-06-02 18:39:42 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								8645c4c653
								
							
						 | 
						
							
							
								
								Kernel: Shell ls and stat now properly show symlinks
							
							
							
							
							
						 | 
						
							2023-06-02 18:22:56 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								88e92eec9e
								
							
						 | 
						
							
							
								
								LibC: Add simple definition for realloc
							
							
							
							
							
							
							
							The syscall just crashes the kernel currently. I will implement
this when needed 
							
						 | 
						
							2023-06-02 17:56:13 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								a41b8e416f
								
							
						 | 
						
							
							
								
								LibC: add __cxa_at_exit() for libc
							
							
							
							
							
						 | 
						
							2023-06-02 17:50:55 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								8716c8baf4
								
							
						 | 
						
							
							
								
								LibC: remove select() declaration
							
							
							
							
							
							
							
							This already comes from sys/select.h 
							
						 | 
						
							2023-06-02 17:29:09 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								2d67a7153b
								
							
						 | 
						
							
							
								
								LibC: rename [[noreturn]] to __attribute__((__noreturn__))
							
							
							
							
							
							
							
							This compiles with C compiler 
							
						 | 
						
							2023-06-02 17:28:36 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								3fcc7c6768
								
							
						 | 
						
							
							
								
								LibC: stdlib.h doesn't seem to typedef wchar_t without __need_wchar_t
							
							
							
							
							
						 | 
						
							2023-06-02 17:27:31 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								5d2a062b36
								
							
						 | 
						
							
							
								
								LibC: fix INFINITY definition typo
							
							
							
							
							
						 | 
						
							2023-06-02 17:27:14 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								e517ff6b6d
								
							
						 | 
						
							
							
								
								LibC: fix DIR typedef for C code
							
							
							
							
							
						 | 
						
							2023-06-02 17:26:38 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								7296846a81
								
							
						 | 
						
							
							
								
								LibC: complex.h undefs I before defining it
							
							
							
							
							
						 | 
						
							2023-06-02 17:13:09 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								6abcb0de9b
								
							
						 | 
						
							
							
								
								LibC: mbstate_t is empty struct
							
							
							
							
							
						 | 
						
							2023-06-02 17:10:29 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								40f9d9d9bc
								
							
						 | 
						
							
							
								
								LibC: fix sig_atomic_t definition
							
							
							
							
							
						 | 
						
							2023-06-02 17:08:43 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								7aea8c45f7
								
							
						 | 
						
							
							
								
								Kernel: VFS now has max link depth of 100
							
							
							
							
							
						 | 
						
							2023-06-02 12:50:40 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								7bbdee6cc4
								
							
						 | 
						
							
							
								
								Kernel: Symlinks are now working
							
							
							
							
							
							
							
							We still have to implement loop or depth detection 
							
						 | 
						
							2023-06-02 11:43:46 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								efb3271588
								
							
						 | 
						
							
							
								
								BAN: Fix function call in Vector
							
							
							
							
							
						 | 
						
							2023-06-01 00:50:04 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								ff548bd898
								
							
						 | 
						
							
							
								
								Kernel: Shell can now list symlinks
							
							
							
							
							
						 | 
						
							2023-06-01 00:25:53 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								835d32814d
								
							
						 | 
						
							
							
								
								Kernel: add basic support for symlinks
							
							
							
							
							
						 | 
						
							2023-06-01 00:24:45 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								79d1f665f2
								
							
						 | 
						
							
							
								
								Kernel: Shell opens standard files
							
							
							
							
							
						 | 
						
							2023-05-31 23:14:15 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								9c818d3da0
								
							
						 | 
						
							
							
								
								BuildSystem: cmake creates /usr/bin
							
							
							
							
							
						 | 
						
							2023-05-31 23:13:53 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								a378e59432
								
							
						 | 
						
							
							
								
								BuildSystem: link libraries when they change
							
							
							
							
							
							
							
							This also fixed the need for manual linkin on firt build 
							
						 | 
						
							2023-05-31 23:01:40 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								a75a3f7a5f
								
							
						 | 
						
							
							
								
								Userspace: make test program link against libc on change
							
							
							
							
							
						 | 
						
							2023-05-31 22:36:47 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								0f412e570c
								
							
						 | 
						
							
							
								
								LibC: add execl
							
							
							
							
							
						 | 
						
							2023-05-31 22:36:26 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								1daa1f5611
								
							
						 | 
						
							
							
								
								Kernel: Cleanup exec code
							
							
							
							
							
						 | 
						
							2023-05-31 22:36:05 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								24a190d1f7
								
							
						 | 
						
							
							
								
								Kernel: Add SYS_EXEC syscall
							
							
							
							
							
						 | 
						
							2023-05-31 20:57:33 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								b48b239882
								
							
						 | 
						
							
							
								
								Kernel: Implement Process::exec()
							
							
							
							
							
						 | 
						
							2023-05-31 20:56:29 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								5fb69300ca
								
							
						 | 
						
							
							
								
								Kernel: Move userspace entry functions to Process instead of Thread
							
							
							
							
							
						 | 
						
							2023-05-31 19:31:10 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								dcb23f686f
								
							
						 | 
						
							
							
								
								Kernel: boot.S maps GiB as single pdpte
							
							
							
							
							
						 | 
						
							2023-05-31 00:51:15 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								650570e57d
								
							
						 | 
						
							
							
								
								Kernel: Fix comment
							
							
							
							
							
						 | 
						
							2023-05-31 00:51:15 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								1f5a36f074
								
							
						 | 
						
							
							
								
								Kernel: PageTable destructor works now
							
							
							
							
							
							
							
							we are successfully booting higher half kernel now :) 
							
						 | 
						
							2023-05-31 00:44:14 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								aeaf2cd3f1
								
							
						 | 
						
							
							
								
								Kernel: PageTable::create_userspace() now works
							
							
							
							
							
						 | 
						
							2023-05-31 00:44:14 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								959c0fc572
								
							
						 | 
						
							
							
								
								Kernel: kmalloc free error prints the pointer
							
							
							
							
							
						 | 
						
							2023-05-31 00:34:56 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								e3d3788f28
								
							
						 | 
						
							
							
								
								Kernel: RSDP location is now done with virtual addresses
							
							
							
							
							
						 | 
						
							2023-05-31 00:34:21 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								850b7f27a2
								
							
						 | 
						
							
							
								
								Kernel: Physical range now calculates RAM with physical addresses
							
							
							
							
							
						 | 
						
							2023-05-31 00:33:44 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								0939f23b04
								
							
						 | 
						
							
							
								
								Kernel: Heap gets multiboot pointer with P2V
							
							
							
							
							
						 | 
						
							2023-05-30 23:57:44 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								67886b0c5a
								
							
						 | 
						
							
							
								
								Kernel: Move V2P and P2V to Memory/Types.h
							
							
							
							
							
						 | 
						
							2023-05-30 23:57:03 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								56eb6fb4ce
								
							
						 | 
						
							
							
								
								Kernel: PageTable::map_range_at maps correctly the last page
							
							
							
							
							
						 | 
						
							2023-05-30 23:56:07 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								81cf389754
								
							
						 | 
						
							
							
								
								Kernel: Booting with higher half kernel gets to Heap initialization
							
							
							
							
							
						 | 
						
							2023-05-30 22:21:12 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								0907965dc5
								
							
						 | 
						
							
							
								
								Kernel: start work on higher half kernel
							
							
							
							
							
						 | 
						
							2023-05-30 08:00:17 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								79315d318c
								
							
						 | 
						
							
							
								
								Toolchain: lib gcc is wuild with mcmodel=large
							
							
							
							
							
						 | 
						
							2023-05-30 07:59:41 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								e8f820ef8d
								
							
						 | 
						
							
							
								
								LibC: Fix some headers to make gcc build again
							
							
							
							
							
						 | 
						
							2023-05-30 01:17:45 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								210d90ec79
								
							
						 | 
						
							
							
								
								Kernel: We now identity map full GiB in boot.S
							
							
							
							
							
							
							
							The paging structure is pre-built so no unnecessary calculations are done 
							
						 | 
						
							2023-05-30 00:08:52 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								8bea18a6f2
								
							
						 | 
						
							
							
								
								Kernel: Remove unused includes of CriticalScope
							
							
							
							
							
						 | 
						
							2023-05-29 21:15:55 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								861966eed6
								
							
						 | 
						
							
							
								
								Kernel: Remove unnecessary usages of PageTableScope
							
							
							
							
							
							
							
							This should be used as few times as possible since it calls 'cli' 
							
						 | 
						
							2023-05-29 21:11:29 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								5bb1f2a48c
								
							
						 | 
						
							
							
								
								Kernel: Rename MMU to PageTable
							
							
							
							
							
							
							
							This is more descriptive name for what it actually represents 
							
						 | 
						
							2023-05-29 21:06:09 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								fb17af4844
								
							
						 | 
						
							
							
								
								Kernel/LibC: opening standard files is done in libc
							
							
							
							
							
						 | 
						
							2023-05-29 20:21:19 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								9a8512887f
								
							
						 | 
						
							
							
								
								LibC: open() now just returns syscall(SYS_OPEN, ...)
							
							
							
							
							
							
							
							errno is handled in syscall() 
							
						 | 
						
							2023-05-29 20:19:17 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								b8ec8918b7
								
							
						 | 
						
							
							
								
								Kernel: We can't lock the MMU lock in load()
							
							
							
							
							
							
							
							It needs to be callable always by scheduler 
							
						 | 
						
							2023-05-29 19:39:35 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								ff83f967d8
								
							
						 | 
						
							
							
								
								Kernel: Make RecursiveSpinLock thread safe
							
							
							
							
							
							
							
							also SpinLock is now implemented with gcc builtins 
							
						 | 
						
							2023-05-29 19:38:09 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								998999a755
								
							
						 | 
						
							
							
								
								Kernel: Add SYS_SLEEP
							
							
							
							
							
						 | 
						
							2023-05-28 22:34:48 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								09666adc53
								
							
						 | 
						
							
							
								
								Kernel: fork() now copies allocations through FixedWidthAllocator
							
							
							
							
							
						 | 
						
							2023-05-28 21:34:35 +03:00 |