Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								e97585daf9
								
							
						 | 
						
							
							
								
								Kernel: Process FixedWidthAllocators come now in 4 sizes
							
							
							
							
							
						 | 
						
							2023-06-04 01:26:43 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								924fc2118c
								
							
						 | 
						
							
							
								
								Kernel: Allocators are now stored in UniqPtr
							
							
							
							
							
							
							
							This allows proper memory management, we had some memory leak 
							
						 | 
						
							2023-06-04 01:25:57 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								51f4c0c750
								
							
						 | 
						
							
							
								
								Kernel: make load_elf() its own function
							
							
							
							
							
						 | 
						
							2023-06-04 01:24:11 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								37b93da650
								
							
						 | 
						
							
							
								
								Kernel: PhysicalRange maps its nodes to kernel vaddr space
							
							
							
							
							
							
							
							This keeps the lower half of address space cleaner 
							
						 | 
						
							2023-06-04 01:20:47 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								35e739dcdd
								
							
						 | 
						
							
							
								
								Kernel: reorder process exit steps
							
							
							
							
							
						 | 
						
							2023-06-04 01:19:04 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								8352392b38
								
							
						 | 
						
							
							
								
								Kernel: You can specify first vaddr for getting free pages
							
							
							
							
							
						 | 
						
							2023-06-04 01:15:48 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								dc1aff58ed
								
							
						 | 
						
							
							
								
								Kernel: PAGE_FLAG_MASK is now only 0xF
							
							
							
							
							
							
							
							We don't care currenly about anything but the last few bits 
							
						 | 
						
							2023-06-03 20:08:13 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								9f75d9cfe5
								
							
						 | 
						
							
							
								
								Kernel: PageTable now has debug_dump
							
							
							
							
							
							
							
							This dumps all the mapped pages and their flags 
							
						 | 
						
							2023-06-03 20:08:13 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								a42af7e973
								
							
						 | 
						
							
							
								
								Kernel: boot.S is back to 2 MiB pages
							
							
							
							
							
							
							
							bochs doesn't seem to support 1 GiB pages 
							
						 | 
						
							2023-06-03 18:53:36 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								a4cb5d8360
								
							
						 | 
						
							
							
								
								Kernel: Inode/Device detection is done with overridden bool functions
							
							
							
							
							
						 | 
						
							2023-06-03 13:28:15 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								da7f09cf82
								
							
						 | 
						
							
							
								
								Kernel: Heap will return 0 if no free page is available
							
							
							
							
							
						 | 
						
							2023-06-03 02:55:31 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								0166af472b
								
							
						 | 
						
							
							
								
								Kernel: DiskCache will try to shrink_to_fit after cache cleanup
							
							
							
							
							
						 | 
						
							2023-06-03 02:55:22 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								884d986bd6
								
							
						 | 
						
							
							
								
								Kernel: DiskCache won't crash when running out of kmalloc memory
							
							
							
							
							
						 | 
						
							2023-06-03 02:36:20 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								59b807189f
								
							
						 | 
						
							
							
								
								Kernel: add basic disk cache
							
							
							
							
							
							
							
							ATADevices now add disk cache to themselves 
							
						 | 
						
							2023-06-03 02:23:14 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								fb1c7015b1
								
							
						 | 
						
							
							
								
								Kernel: Shell 'memory' now prints heap memory usage
							
							
							
							
							
						 | 
						
							2023-06-03 02:22:18 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								9bd4d68f9c
								
							
						 | 
						
							
							
								
								Kernel: Shell ls and stat now properly show symlinks
							
							
							
							
							
						 | 
						
							2023-06-02 18:22:56 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								633cb4f282
								
							
						 | 
						
							
							
								
								Kernel: VFS now has max link depth of 100
							
							
							
							
							
						 | 
						
							2023-06-02 12:50:40 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								4d4d0e26a9
								
							
						 | 
						
							
							
								
								Kernel: Symlinks are now working
							
							
							
							
							
							
							
							We still have to implement loop or depth detection 
							
						 | 
						
							2023-06-02 11:43:46 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								0ffd2a5c1d
								
							
						 | 
						
							
							
								
								Kernel: Shell can now list symlinks
							
							
							
							
							
						 | 
						
							2023-06-01 00:25:53 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								232fdcb82c
								
							
						 | 
						
							
							
								
								Kernel: add basic support for symlinks
							
							
							
							
							
						 | 
						
							2023-06-01 00:24:45 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								0ccc23d544
								
							
						 | 
						
							
							
								
								Kernel: Shell opens standard files
							
							
							
							
							
						 | 
						
							2023-05-31 23:14:15 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								02f0239016
								
							
						 | 
						
							
							
								
								Kernel: Cleanup exec code
							
							
							
							
							
						 | 
						
							2023-05-31 22:36:05 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								ab61b49aca
								
							
						 | 
						
							
							
								
								Kernel: Add SYS_EXEC syscall
							
							
							
							
							
						 | 
						
							2023-05-31 20:57:33 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								4da1d6fd27
								
							
						 | 
						
							
							
								
								Kernel: Implement Process::exec()
							
							
							
							
							
						 | 
						
							2023-05-31 20:56:29 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								909e847369
								
							
						 | 
						
							
							
								
								Kernel: Move userspace entry functions to Process instead of Thread
							
							
							
							
							
						 | 
						
							2023-05-31 19:31:10 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								eafa09fecf
								
							
						 | 
						
							
							
								
								Kernel: boot.S maps GiB as single pdpte
							
							
							
							
							
						 | 
						
							2023-05-31 00:51:15 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								8175348284
								
							
						 | 
						
							
							
								
								Kernel: Fix comment
							
							
							
							
							
						 | 
						
							2023-05-31 00:51:15 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								b2832cb47a
								
							
						 | 
						
							
							
								
								Kernel: PageTable destructor works now
							
							
							
							
							
							
							
							we are successfully booting higher half kernel now :) 
							
						 | 
						
							2023-05-31 00:44:14 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								9f499991c8
								
							
						 | 
						
							
							
								
								Kernel: PageTable::create_userspace() now works
							
							
							
							
							
						 | 
						
							2023-05-31 00:44:14 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								9a416e8ae8
								
							
						 | 
						
							
							
								
								Kernel: kmalloc free error prints the pointer
							
							
							
							
							
						 | 
						
							2023-05-31 00:34:56 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								911922c6a3
								
							
						 | 
						
							
							
								
								Kernel: RSDP location is now done with virtual addresses
							
							
							
							
							
						 | 
						
							2023-05-31 00:34:21 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								1f2fd59ad5
								
							
						 | 
						
							
							
								
								Kernel: Physical range now calculates RAM with physical addresses
							
							
							
							
							
						 | 
						
							2023-05-31 00:33:44 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								708d401d2c
								
							
						 | 
						
							
							
								
								Kernel: Heap gets multiboot pointer with P2V
							
							
							
							
							
						 | 
						
							2023-05-30 23:57:44 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								ed0dcacab3
								
							
						 | 
						
							
							
								
								Kernel: Move V2P and P2V to Memory/Types.h
							
							
							
							
							
						 | 
						
							2023-05-30 23:57:03 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								e86050f343
								
							
						 | 
						
							
							
								
								Kernel: PageTable::map_range_at maps correctly the last page
							
							
							
							
							
						 | 
						
							2023-05-30 23:56:07 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								57f7da6ce1
								
							
						 | 
						
							
							
								
								Kernel: Booting with higher half kernel gets to Heap initialization
							
							
							
							
							
						 | 
						
							2023-05-30 22:21:12 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								93e6455171
								
							
						 | 
						
							
							
								
								Kernel: start work on higher half kernel
							
							
							
							
							
						 | 
						
							2023-05-30 08:00:17 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								265fe9c62e
								
							
						 | 
						
							
							
								
								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
							
						 | 
						
							
							
							
							
							
								
							
							
								3b9d60d7cb
								
							
						 | 
						
							
							
								
								Kernel: Remove unused includes of CriticalScope
							
							
							
							
							
						 | 
						
							2023-05-29 21:15:55 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								278b873e89
								
							
						 | 
						
							
							
								
								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
							
						 | 
						
							
							
							
							
							
								
							
							
								e640344d7a
								
							
						 | 
						
							
							
								
								Kernel: Rename MMU to PageTable
							
							
							
							
							
							
							
							This is more descriptive name for what it actually represents 
							
						 | 
						
							2023-05-29 21:06:09 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								7151bb86a8
								
							
						 | 
						
							
							
								
								Kernel/LibC: opening standard files is done in libc
							
							
							
							
							
						 | 
						
							2023-05-29 20:21:19 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								3d95cf02f3
								
							
						 | 
						
							
							
								
								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
							
						 | 
						
							
							
							
							
							
								
							
							
								dd3f34cb2c
								
							
						 | 
						
							
							
								
								Kernel: Make RecursiveSpinLock thread safe
							
							
							
							
							
							
							
							also SpinLock is now implemented with gcc builtins 
							
						 | 
						
							2023-05-29 19:38:09 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								0c316ebfb2
								
							
						 | 
						
							
							
								
								Kernel: Add SYS_SLEEP
							
							
							
							
							
						 | 
						
							2023-05-28 22:34:48 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								282bf24f65
								
							
						 | 
						
							
							
								
								Kernel: fork() now copies allocations through FixedWidthAllocator
							
							
							
							
							
						 | 
						
							2023-05-28 21:34:35 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								f964f6be8d
								
							
						 | 
						
							
							
								
								Kernel: Move page macros to Types.h
							
							
							
							
							
						 | 
						
							2023-05-28 21:03:08 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								0202ccec5f
								
							
						 | 
						
							
							
								
								Kernel: ISR will now crash userspace process instead of panicing kernel
							
							
							
							
							
						 | 
						
							2023-05-28 20:53:10 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								636c308993
								
							
						 | 
						
							
							
								
								Kernel: fork() now copies allocation done through GeneralAllocator
							
							
							
							
							
						 | 
						
							2023-05-28 20:37:39 +03:00 | 
						
					
				
					
						
							
							
								 
								Bananymous
							
						 | 
						
							
							
							
							
							
								
							
							
								6fdbe6f9c2
								
							
						 | 
						
							
							
								
								Kernel: Add bareboness fork() function
							
							
							
							
							
						 | 
						
							2023-05-28 18:08:49 +03:00 |