0ef318633c 
								
							 
						 
						
							
							
								
								BAN: ScopeGuard can now be disabled (it wont call the function)  
							
							
							
						 
						
							2023-03-28 01:15:13 +03:00  
				
					
						
							
							
								 
						
							
								2f8c9746e3 
								
							 
						 
						
							
							
								
								Kernel: Move ACPI to its own file  
							
							
							
						 
						
							2023-03-27 17:30:45 +03:00  
				
					
						
							
							
								 
						
							
								6d6bef1b04 
								
							 
						 
						
							
							
								
								BAN: move placement new declaration to Move.h  
							
							
							
						 
						
							2023-03-27 03:38:06 +03:00  
				
					
						
							
							
								 
						
							
								3dab392296 
								
							 
						 
						
							
							
								
								Build System: Create base directory for the FS  
							
							
							
						 
						
							2023-03-27 01:11:17 +03:00  
				
					
						
							
							
								 
						
							
								f8a2c60c8d 
								
							 
						 
						
							
							
								
								Kernel/BAN: move unix time conversion to BAN and add stat to Shell  
							
							
							
						 
						
							2023-03-27 00:49:58 +03:00  
				
					
						
							
							
								 
						
							
								770f7716a0 
								
							 
						 
						
							
							
								
								Kernel: Rework processes and VFS so we don't expose inodes  
							
							... 
							
							
							
							Everything is now done through a file descriptor. 
							
						 
						
							2023-03-26 04:30:57 +03:00  
				
					
						
							
							
								 
						
							
								a011c0384f 
								
							 
						 
						
							
							
								
								LibC: add dirent.h  
							
							
							
						 
						
							2023-03-25 02:08:33 +02:00  
				
					
						
							
							
								 
						
							
								0d356c5bbc 
								
							 
						 
						
							
							
								
								LibC: Add stat structure  
							
							
							
						 
						
							2023-03-24 18:08:22 +02:00  
				
					
						
							
							
								 
						
							
								d67de70126 
								
							 
						 
						
							
							
								
								Kernel: Process::working_directory() is now thread safe  
							
							... 
							
							
							
							I realized you cannot return a stirng view and it to be thread safe 
							
						 
						
							2023-03-24 01:46:25 +02:00  
				
					
						
							
							
								 
						
							
								6f334756c5 
								
							 
						 
						
							
							
								
								Kernel: Create RecursiveSpinLock and add it to Process  
							
							... 
							
							
							
							We now lock every function within Proccess, just to be sure.
Recursive lock allows us to use lock from the same thread even if
we already have the spinlock locked 
							
						 
						
							2023-03-24 01:32:35 +02:00  
				
					
						
							
							
								 
						
							
								310713d203 
								
							 
						 
						
							
							
								
								Kernel: Lock process functions instead of the ata controller  
							
							... 
							
							
							
							Process has to use locks at least on some functions so multithreaded
disk io is safe. This seemed to fix corrupted reads from disk 
							
						 
						
							2023-03-24 01:17:39 +02:00  
				
					
						
							
							
								 
						
							
								7d2ab53baa 
								
							 
						 
						
							
							
								
								Kernel: Ext2FS now does allocations better  
							
							... 
							
							
							
							We only have to allocate at the beginning of the all functions and
can properly exit before any disk reads if we run out of memory.
This makes development little bit 'harder' since the {read,write}_block
user must allocate a buffer of atleast block_size bytes.
I also made disk access to cause kernel panic on error since the error
handling during file write is something I don't want to think now.
The filesystem can easily corrupt so, I feel like when disk io starts
to fail I'll come back to this. 
							
						 
						
							2023-03-23 23:22:31 +02:00  
				
					
						
							
							
								 
						
							
								2152b8b95f 
								
							 
						 
						
							
							
								
								Kernel: Add possibiliity to create empty files on Ext2  
							
							... 
							
							
							
							Big rewrite for Ext2 for more easy and optimized code 
							
						 
						
							2023-03-23 22:26:06 +02:00  
				
					
						
							
							
								 
						
							
								8ac1ae1574 
								
							 
						 
						
							
							
								
								LibC: add more typedefs to sys/types  
							
							
							
						 
						
							2023-03-23 19:24:12 +02:00  
				
					
						
							
							
								 
						
							
								4fd21bc303 
								
							 
						 
						
							
							
								
								Kernel: Remove block group descriptor cache from ext2fs  
							
							... 
							
							
							
							This will make improving the fs easier since we need to only update
the values on the disk 
							
						 
						
							2023-03-23 18:52:58 +02:00  
				
					
						
							
							
								 
						
							
								15037bfc7a 
								
							 
						 
						
							
							
								
								Kernel: Move get_unix_time to RTC namespace  
							
							
							
						 
						
							2023-03-23 18:14:51 +02:00  
				
					
						
							
							
								 
						
							
								5831c72aad 
								
							 
						 
						
							
							
								
								LibC: add errno NAMETOOLONG  
							
							
							
						 
						
							2023-03-23 14:48:42 +02:00  
				
					
						
							
							
								 
						
							
								a063d041c9 
								
							 
						 
						
							
							
								
								BAN: char* is now formatted as string and not pointer  
							
							
							
						 
						
							2023-03-23 14:29:35 +02:00  
				
					
						
							
							
								 
						
							
								3572e9794a 
								
							 
						 
						
							
							
								
								BAN: Modify Span constructors to keep constness correctly  
							
							
							
						 
						
							2023-03-23 14:26:03 +02:00  
				
					
						
							
							
								 
						
							
								cef6999dc7 
								
							 
						 
						
							
							
								
								BAN: Add is_const to traits  
							
							
							
						 
						
							2023-03-23 13:28:57 +02:00  
				
					
						
							
							
								 
						
							
								6ed9651176 
								
							 
						 
						
							
							
								
								Kernel: StorageDevice and Ext2 "support" writing  
							
							
							
						 
						
							2023-03-23 13:04:13 +02:00  
				
					
						
							
							
								 
						
							
								3efbe22a1b 
								
							 
						 
						
							
							
								
								Kernel: Shell now prints unix time with 'date' command  
							
							
							
						 
						
							2023-03-23 11:13:51 +02:00  
				
					
						
							
							
								 
						
							
								96579b88cf 
								
							 
						 
						
							
							
								
								Kernel: Cleanup GPT parsing code  
							
							
							
						 
						
							2023-03-23 11:13:14 +02:00  
				
					
						
							
							
								 
						
							
								2ec18855f2 
								
							 
						 
						
							
							
								
								Kernel: TTY buffer is resized on font size change  
							
							... 
							
							
							
							Shell also has better line wrapping. You still can't visually go
back to previous line, but atleas we now write from the beginning
of the line 
							
						 
						
							2023-03-22 02:09:22 +02:00  
				
					
						
							
							
								 
						
							
								b222581d18 
								
							 
						 
						
							
							
								
								Kernel: Reading from fd verifies that file is opened for reading  
							
							
							
						 
						
							2023-03-22 01:55:58 +02:00  
				
					
						
							
							
								 
						
							
								a8e3ee6f19 
								
							 
						 
						
							
							
								
								Kernel: Ext2 directory functions now fail on invalid blocks  
							
							... 
							
							
							
							Invalid blocks should only happen while writing to a file and
I think in that case we should just bail out instead of giving
you incomlete inode list or search result. 
							
						 
						
							2023-03-22 01:55:57 +02:00  
				
					
						
							
							
								 
						
							
								a083e588ba 
								
							 
						 
						
							
							
								
								Kernel: cksum uses now a different crc32_table to match linux 'cksum'  
							
							
							
						 
						
							2023-03-22 01:55:21 +02:00  
				
					
						
							
							
								 
						
							
								9b500842a0 
								
							 
						 
						
							
							
								
								Kernel: Ext2 can now read from non-block-size aligned offsets  
							
							
							
						 
						
							2023-03-21 19:19:17 +02:00  
				
					
						
							
							
								 
						
							
								b21348379f 
								
							 
						 
						
							
							
								
								Kernel: Remove obsolete Ext2FS::ext2_root_inode()  
							
							... 
							
							
							
							This was not used by anyone and the cast was wrong anyway 
							
						 
						
							2023-03-21 18:19:48 +02:00  
				
					
						
							
							
								 
						
							
								633055293e 
								
							 
						 
						
							
							
								
								Kernel: Remove for_each_block from Ext2  
							
							
							
						 
						
							2023-03-21 18:14:02 +02:00  
				
					
						
							
							
								 
						
							
								ae9d618803 
								
							 
						 
						
							
							
								
								Kernel: Cleanup font parsing  
							
							... 
							
							
							
							We use now the LittleEndian<> wrapper for PSF2 header and no more
magic constants in code 
							
						 
						
							2023-03-20 19:48:08 +02:00  
				
					
						
							
							
								 
						
							
								9c744dfc44 
								
							 
						 
						
							
							
								
								BAN: Add wrappers for little/big endian numbers  
							
							
							
						 
						
							2023-03-20 19:48:08 +02:00  
				
					
						
							
							
								 
						
							
								faf1b661bb 
								
							 
						 
						
							
							
								
								Kernel: prefs font does not allocate extra buffer  
							
							
							
						 
						
							2023-03-20 19:48:01 +02:00  
				
					
						
							
							
								 
						
							
								22e45278a2 
								
							 
						 
						
							
							
								
								Kernel: Fix PC Screen font parsing  
							
							... 
							
							
							
							I had misread the format and the parsing code was incorrect. I also
changed fonts to store unicode codepoints as 32 bit integers, so
every character can be represented 
							
						 
						
							2023-03-20 14:52:42 +02:00  
				
					
						
							
							
								 
						
							
								43f4657566 
								
							 
						 
						
							
							
								
								Kernel: Font parsing uses Spans now  
							
							
							
						 
						
							2023-03-20 13:35:54 +02:00  
				
					
						
							
							
								 
						
							
								70f2908056 
								
							 
						 
						
							
							
								
								BAN: Implement basic Span  
							
							... 
							
							
							
							This is wrapper over contiguous block of memory e.g. Vector 
							
						 
						
							2023-03-20 13:34:26 +02:00  
				
					
						
							
							
								 
						
							
								ef381d0600 
								
							 
						 
						
							
							
								
								BAN: Add iterators to all containers with contiguous memory  
							
							
							
						 
						
							2023-03-20 13:26:42 +02:00  
				
					
						
							
							
								 
						
							
								cfa87526a7 
								
							 
						 
						
							
							
								
								BAN: Add implementation for basic iterator for contiguous memory  
							
							
							
						 
						
							2023-03-20 13:15:38 +02:00  
				
					
						
							
							
								 
						
							
								39b560fde3 
								
							 
						 
						
							
							
								
								Kernel: Add basic mounting to VFS.  
							
							
							
						 
						
							2023-03-19 05:51:25 +02:00  
				
					
						
							
							
								 
						
							
								0c582b4490 
								
							 
						 
						
							
							
								
								LibC: add errno ENOTEMPTY  
							
							
							
						 
						
							2023-03-19 05:43:40 +02:00  
				
					
						
							
							
								 
						
							
								61caf566fc 
								
							 
						 
						
							
							
								
								LibC: add errno EEXISTS  
							
							
							
						 
						
							2023-03-19 04:17:39 +02:00  
				
					
						
							
							
								 
						
							
								76d5364a55 
								
							 
						 
						
							
							
								
								Kernel: Add comparison operator for inodes  
							
							
							
						 
						
							2023-03-19 03:34:23 +02:00  
				
					
						
							
							
								 
						
							
								5224df321e 
								
							 
						 
						
							
							
								
								Create README.md  
							
							
							
						 
						
							2023-03-18 04:05:59 +02:00  
				
					
						
							
							
								 
						
							
								7b9c3e9119 
								
							 
						 
						
							
							
								
								Qemu: add kvm acceleration as option  
							
							
							
						 
						
							2023-03-18 03:51:10 +02:00  
				
					
						
							
							
								 
						
							
								b41491e205 
								
							 
						 
						
							
							
								
								Kernel: Add cksum to Shell for file read testing  
							
							... 
							
							
							
							I also removed the 'using namespace BAN' 
							
						 
						
							2023-03-18 03:50:24 +02:00  
				
					
						
							
							
								 
						
							
								8236598f9d 
								
							 
						 
						
							
							
								
								Kernel: Optimize Ext2 disk reads  
							
							... 
							
							
							
							We used to read whole file until we reached the asked offset.
Now we can calculate the appropriate block and read just the asked data. 
							
						 
						
							2023-03-18 03:47:59 +02:00  
				
					
						
							
							
								 
						
							
								1a26a318a4 
								
							 
						 
						
							
							
								
								Kernel: Rework filesystem reading  
							
							... 
							
							
							
							We now read from a filesystem to user provided buffer.
Read sizes are determined by read call.
You should now get file descriptors and do reading through Process::current() 
							
						 
						
							2023-03-17 21:18:41 +02:00  
				
					
						
							
							
								 
						
							
								ceb53533be 
								
							 
						 
						
							
							
								
								LibC: add fcntl.h with some defines  
							
							
							
						 
						
							2023-03-17 21:18:41 +02:00  
				
					
						
							
							
								 
						
							
								e2707b9416 
								
							 
						 
						
							
							
								
								LibC: Add EBADF errno  
							
							
							
						 
						
							2023-03-16 16:22:11 +02:00  
				
					
						
							
							
								 
						
							
								4493c9bbe6 
								
							 
						 
						
							
							
								
								LibC: Add ENTOSUP errno  
							
							
							
						 
						
							2023-03-16 16:03:51 +02:00