ad98181069 
								
							 
						 
						
							
							
								
								Shell: you can call Shell -c ... to invoke the shell as interpreter  
							
							
							
						 
						
							2023-07-06 23:22:49 +03:00  
				
					
						
							
							
								 
						
							
								21bd87bb07 
								
							 
						 
						
							
							
								
								Userspace: Shell now has 'env' for printing environment  
							
							
							
						 
						
							2023-07-06 10:32:43 +03:00  
				
					
						
							
							
								 
						
							
								79450df04c 
								
							 
						 
						
							
							
								
								Userspace: Shell imporove 'time' command  
							
							
							
						 
						
							2023-07-06 09:45:04 +03:00  
				
					
						
							
							
								 
						
							
								7f8b7b811e 
								
							 
						 
						
							
							
								
								Userspace: Shell now has time builtin  
							
							
							
						 
						
							2023-07-06 00:39:04 +03:00  
				
					
						
							
							
								 
						
							
								4dce0f9074 
								
							 
						 
						
							
							
								
								Userspace: u8sum fix error message  
							
							
							
						 
						
							2023-06-19 10:31:23 +03:00  
				
					
						
							
							
								 
						
							
								54f89cba33 
								
							 
						 
						
							
							
								
								Userspace: Shell now processes $ arguments  
							
							
							
						 
						
							2023-06-19 01:39:24 +03:00  
				
					
						
							
							
								 
						
							
								de88f60d1a 
								
							 
						 
						
							
							
								
								Userspace: Shell argument parsing now appriciates quotes  
							
							
							
						 
						
							2023-06-19 01:07:00 +03:00  
				
					
						
							
							
								 
						
							
								f7060970e6 
								
							 
						 
						
							
							
								
								Userspace: Shell argument parse now results in BAN::String  
							
							
							
						 
						
							2023-06-19 00:34:44 +03:00  
				
					
						
							
							
								 
						
							
								e7a98ac6cc 
								
							 
						 
						
							
							
								
								Userspace: Shell now sets SHELL environment variable  
							
							
							
						 
						
							2023-06-18 23:35:51 +03:00  
				
					
						
							
							
								 
						
							
								326a30d1af 
								
							 
						 
						
							
							
								
								Userspace: Add u8sum  
							
							... 
							
							
							
							This program caluculates the sum of bytes in file mod 256 
							
						 
						
							2023-06-12 20:36:16 +03:00  
				
					
						
							
							
								 
						
							
								38dff41e25 
								
							 
						 
						
							
							
								
								Userspace: Shell processes PS1 '\~' as cwd and implement cd  
							
							
							
						 
						
							2023-06-12 02:03:13 +03:00  
				
					
						
							
							
								 
						
							
								d360340b9e 
								
							 
						 
						
							
							
								
								Userspace: init now sets HOME environment variable and cd's into HOME  
							
							
							
						 
						
							2023-06-12 02:02:52 +03:00  
				
					
						
							
							
								 
						
							
								eb7ee13f43 
								
							 
						 
						
							
							
								
								Userspace: init now default logins as user  
							
							
							
						 
						
							2023-06-12 00:46:07 +03:00  
				
					
						
							
							
								 
						
							
								b2de706693 
								
							 
						 
						
							
							
								
								Userspace: Shell now uses PS1 as prompt if set  
							
							
							
						 
						
							2023-06-12 00:45:47 +03:00  
				
					
						
							
							
								 
						
							
								6a8180470d 
								
							 
						 
						
							
							
								
								Userspace: Add color to ls  
							
							
							
						 
						
							2023-06-11 23:00:19 +03:00  
				
					
						
							
							
								 
						
							
								12d56be5cc 
								
							 
						 
						
							
							
								
								Userspace: init now sets user and group ids before running their shell  
							
							
							
						 
						
							2023-06-11 22:37:00 +03:00  
				
					
						
							
							
								 
						
							
								bb4d81a4fa 
								
							 
						 
						
							
							
								
								Userspace: Add basic id that prints {,e}{uid,gid} of the current proc  
							
							
							
						 
						
							2023-06-11 22:37:00 +03:00  
				
					
						
							
							
								 
						
							
								51eb44bf40 
								
							 
						 
						
							
							
								
								Kernel/Userspace: Add basic init process  
							
							... 
							
							
							
							This process parses /etc/passwd and promps login screen.
When an username is entered, it will launch that users shell 
							
						 
						
							2023-06-11 22:37:00 +03:00  
				
					
						
							
							
								 
						
							
								c62e820bcf 
								
							 
						 
						
							
							
								
								Kernel: Add basic Credentials for the system  
							
							... 
							
							
							
							Now filesystem access/open, etc confirm that you have access for rwxs 
							
						 
						
							2023-06-11 20:06:06 +03:00  
				
					
						
							
							
								 
						
							
								25a2a4879c 
								
							 
						 
						
							
							
								
								Userspace: add basic ls command  
							
							
							
						 
						
							2023-06-11 03:38:44 +03:00  
				
					
						
							
							
								 
						
							
								ee8de77a90 
								
							 
						 
						
							
							
								
								Userspace: fix return values of cat and echo  
							
							
							
						 
						
							2023-06-10 17:34:10 +03:00  
				
					
						
							
							
								 
						
							
								e001eecb7b 
								
							 
						 
						
							
							
								
								Userspace: add exit to shell  
							
							
							
						 
						
							2023-06-09 01:51:23 +03:00  
				
					
						
							
							
								 
						
							
								7f34d00c95 
								
							 
						 
						
							
							
								
								Userspace: add echo  
							
							
							
						 
						
							2023-06-09 01:50:18 +03:00  
				
					
						
							
							
								 
						
							
								2c18adbddd 
								
							 
						 
						
							
							
								
								Userspace: add ^L support for shell  
							
							
							
						 
						
							2023-06-09 01:24:33 +03:00  
				
					
						
							
							
								 
						
							
								064ce568c2 
								
							 
						 
						
							
							
								
								Kernel: add basic support for environment variables  
							
							... 
							
							
							
							exec functions will search files from PATH 
							
						 
						
							2023-06-05 22:51:02 +03:00  
				
					
						
							
							
								 
						
							
								3fc2c3529a 
								
							 
						 
						
							
							
								
								Shell: load old termios for process execution  
							
							
							
						 
						
							2023-06-05 21:12:08 +03:00  
				
					
						
							
							
								 
						
							
								2f2c298c68 
								
							 
						 
						
							
							
								
								Shell: add bareboness utf8 support  
							
							... 
							
							
							
							This should work as long as TTY provides only valid utf8.
If the utf is invalid, assertion fails and the shell dies. 
							
						 
						
							2023-06-05 18:55:22 +03:00  
				
					
						
							
							
								 
						
							
								90e48970e6 
								
							 
						 
						
							
							
								
								Shell: we now support left/right arrows  
							
							
							
						 
						
							2023-06-05 18:24:41 +03:00  
				
					
						
							
							
								 
						
							
								9d64dbd5c2 
								
							 
						 
						
							
							
								
								Kernel/LibC: add SYS_STAT and stat(), lstat()  
							
							
							
						 
						
							2023-06-05 14:37:14 +03:00  
				
					
						
							
							
								 
						
							
								1f36ed0cf9 
								
							 
						 
						
							
							
								
								Userspace: Start work on proper shell  
							
							
							
						 
						
							2023-06-05 01:42:57 +03:00  
				
					
						
							
							
								 
						
							
								a775a920d0 
								
							 
						 
						
							
							
								
								BuildSystem: remove sse and sse2 from userspace  
							
							
							
						 
						
							2023-06-03 16:05:32 +03:00  
				
					
						
							
							
								 
						
							
								a3f410d1a1 
								
							 
						 
						
							
							
								
								Userspace: create_program creates proper cmake files again  
							
							
							
						 
						
							2023-06-02 18:42:25 +03:00  
				
					
						
							
							
								 
						
							
								1d19a4bffe 
								
							 
						 
						
							
							
								
								BuildSystem: all scripts have now bash shebang  
							
							... 
							
							
							
							I could not use the scripts on debian 
							
						 
						
							2023-06-02 18:41:45 +03:00  
				
					
						
							
							
								 
						
							
								271dd91292 
								
							 
						 
						
							
							
								
								BuildSystem: add rule to build libstdc++  
							
							... 
							
							
							
							We can now build libstdc++ and actually link with g++ 
							
						 
						
							2023-06-02 18:39:42 +03:00  
				
					
						
							
							
								 
						
							
								cb359a05dc 
								
							 
						 
						
							
							
								
								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  
				
					
						
							
							
								 
						
							
								14982c137a 
								
							 
						 
						
							
							
								
								Userspace: make test program link against libc on change  
							
							
							
						 
						
							2023-05-31 22:36:47 +03:00  
				
					
						
							
							
								 
						
							
								0acab11620 
								
							 
						 
						
							
							
								
								LibC: add execl  
							
							
							
						 
						
							2023-05-31 22:36:26 +03:00  
				
					
						
							
							
								 
						
							
								ab61b49aca 
								
							 
						 
						
							
							
								
								Kernel: Add SYS_EXEC syscall  
							
							
							
						 
						
							2023-05-31 20:57:33 +03:00  
				
					
						
							
							
								 
						
							
								e640344d7a 
								
							 
						 
						
							
							
								
								Kernel: Rename MMU to PageTable  
							
							... 
							
							
							
							This is more descriptive name for what it actually represents 
							
						 
						
							2023-05-29 21:06:09 +03:00  
				
					
						
							
							
								 
						
							
								282bf24f65 
								
							 
						 
						
							
							
								
								Kernel: fork() now copies allocations through FixedWidthAllocator  
							
							
							
						 
						
							2023-05-28 21:34:35 +03:00  
				
					
						
							
							
								 
						
							
								636c308993 
								
							 
						 
						
							
							
								
								Kernel: fork() now copies allocation done through GeneralAllocator  
							
							
							
						 
						
							2023-05-28 20:37:39 +03:00  
				
					
						
							
							
								 
						
							
								6fdbe6f9c2 
								
							 
						 
						
							
							
								
								Kernel: Add bareboness fork() function  
							
							
							
						 
						
							2023-05-28 18:08:49 +03:00  
				
					
						
							
							
								 
						
							
								245dff8027 
								
							 
						 
						
							
							
								
								Shell: we now link BAN (we can't use it though)  
							
							
							
						 
						
							2023-05-26 22:31:21 +03:00  
				
					
						
							
							
								 
						
							
								0ab3332ad3 
								
							 
						 
						
							
							
								
								Userspace: Start work on shell  
							
							
							
						 
						
							2023-05-26 22:31:21 +03:00  
				
					
						
							
							
								 
						
							
								496adb61a4 
								
							 
						 
						
							
							
								
								Buildsystem: Fix userspace link order  
							
							
							
						 
						
							2023-05-26 22:31:21 +03:00  
				
					
						
							
							
								 
						
							
								f33e78882e 
								
							 
						 
						
							
							
								
								Kernel: Add argc and argv to process entry  
							
							
							
						 
						
							2023-05-16 00:27:49 +03:00  
				
					
						
							
							
								 
						
							
								fb1bab7c30 
								
							 
						 
						
							
							
								
								BuildSystem: add helper to create userspace programs  
							
							
							
						 
						
							2023-05-11 18:10:06 +03:00  
				
					
						
							
							
								 
						
							
								7eb43990ad 
								
							 
						 
						
							
							
								
								BuildSystem: userspace has cmake target  
							
							
							
						 
						
							2023-05-11 16:19:53 +03:00  
				
					
						
							
							
								 
						
							
								1cf7ef3de6 
								
							 
						 
						
							
							
								
								Kernel: Remove offset from OpenFileDescriptor  
							
							... 
							
							
							
							This is now handled on the libc side. There might be reasons to
have it in kernel side, but for simplicity's sake I'm moving it
to libc for now :) 
							
						 
						
							2023-05-09 20:31:22 +03:00  
				
					
						
							
							
								 
						
							
								812e61ca70 
								
							 
						 
						
							
							
								
								Kernel: Add barebones GeneralAllocator for >4096B  
							
							
							
						 
						
							2023-05-08 22:10:49 +03:00  
				
					
						
							
							
								 
						
							
								f32d594879 
								
							 
						 
						
							
							
								
								Kernel: We add FixedWidthAllocators on demand  
							
							... 
							
							
							
							On SYS_ALLOC we will add a new FixedWidthAllocator if the old ones
are already full or we don't have one with proper size. This allows
arbitary number of allocations as long as you have enough memory
available :)
Next I will be writing a general allocator for allocations larger
than 4096 bytes which should make SYS_ALLOC syscall complete :) 
							
						 
						
							2023-05-07 23:57:01 +03:00  
				
					
						
							
							
								 
						
							
								2fe9af7165 
								
							 
						 
						
							
							
								
								Kernel/LibC: add free function for FixedWidthAllocator  
							
							... 
							
							
							
							I have to rework the syscall API and allocators in process. For
now this works well enough :) 
							
						 
						
							2023-05-07 01:21:50 +03:00  
				
					
						
							
							
								 
						
							
								ff5bcd4416 
								
							 
						 
						
							
							
								
								Kernel: Add basic fixed width allocator for userspace  
							
							... 
							
							
							
							We have to move process stacks to the general heap and maybe map
kernel to higher half. 
							
						 
						
							2023-05-06 19:58:08 +03:00  
				
					
						
							
							
								 
						
							
								7fac2a7526 
								
							 
						 
						
							
							
								
								Userspace: Simple stdio test  
							
							
							
						 
						
							2023-04-25 14:50:26 +03:00  
				
					
						
							
							
								 
						
							
								b15deb420f 
								
							 
						 
						
							
							
								
								LibC: Write mostly functioning stdio  
							
							
							
						 
						
							2023-04-23 14:32:37 +03:00  
				
					
						
							
							
								 
						
							
								ec8b9640e2 
								
							 
						 
						
							
							
								
								Kernel: Usespace programs are now ran through ELF files  
							
							... 
							
							
							
							only 64 bit elf files are supported for now. 
							
						 
						
							2023-04-22 15:35:32 +03:00  
				
					
						
							
							
								 
						
							
								079df39ca8 
								
							 
						 
						
							
							
								
								LibELF: Start implementing elf library  
							
							
							
						 
						
							2023-04-18 10:18:15 +03:00