Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								9288537949 
								
							 
						 
						
							
							
								
								LibC: gid_t and id_t are now signed types  
							
							 
							
							... 
							
							
							
							I have no idea why I had made them unisigned 
							
						 
						
							2023-06-11 22:37:00 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								78536f9678 
								
							 
						 
						
							
							
								
								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  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								297141f321 
								
							 
						 
						
							
							
								
								LibC: add strchrnul()  
							
							 
							
							... 
							
							
							
							this is a gnu libc extension 
							
						 
						
							2023-06-11 20:18:03 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								83a6e6f637 
								
							 
						 
						
							
							
								
								LibC: Reorder some syscalls  
							
							 
							
							
							
						 
						
							2023-06-11 03:29:22 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								64890bb640 
								
							 
						 
						
							
							
								
								Kernel: Add SYS_OPENAT  
							
							 
							
							
							
						 
						
							2023-06-11 03:29:22 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								68ec443e07 
								
							 
						 
						
							
							
								
								LibC: implement close  
							
							 
							
							
							
						 
						
							2023-06-11 03:29:22 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								aa86125f2b 
								
							 
						 
						
							
							
								
								Kernel: Implement SYS_FSTAT  
							
							 
							
							
							
						 
						
							2023-06-11 03:29:22 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								c423164066 
								
							 
						 
						
							
							
								
								LibC: Implement basic dirent functionality  
							
							 
							
							... 
							
							
							
							We don't currently support seeking 
							
						 
						
							2023-06-11 03:29:22 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								eae6119039 
								
							 
						 
						
							
							
								
								Kernel: Add syscall for reading directory entries  
							
							 
							
							
							
						 
						
							2023-06-11 00:18:08 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								30f81e1696 
								
							 
						 
						
							
							
								
								LibC: add missing O_EXEC and O_SEARCH  
							
							 
							
							
							
						 
						
							2023-06-11 00:17:18 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								24993f6020 
								
							 
						 
						
							
							
								
								LibC: implement setenv, unsetenv, putenv  
							
							 
							
							
							
						 
						
							2023-06-05 22:51:02 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								55ea5c5488 
								
							 
						 
						
							
							
								
								Kernel: add basic support for environment variables  
							
							 
							
							... 
							
							
							
							exec functions will search files from PATH 
							
						 
						
							2023-06-05 22:51:02 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								896b919c9d 
								
							 
						 
						
							
							
								
								Kernel/LibC: pass environ pointer to process  
							
							 
							
							
							
						 
						
							2023-06-05 21:12:08 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								a7dc7ecb90 
								
							 
						 
						
							
							
								
								LibC: abort now prints 'abort()' and exits  
							
							 
							
							... 
							
							
							
							we used to call assert in abort which then recursively called
abort again. 
							
						 
						
							2023-06-05 18:23:19 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								d1ad38c8d4 
								
							 
						 
						
							
							
								
								Kernel/LibC: add SYS_STAT and stat(), lstat()  
							
							 
							
							
							
						 
						
							2023-06-05 14:37:14 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								40055f023c 
								
							 
						 
						
							
							
								
								LibC: add wait and waitpid  
							
							 
							
							... 
							
							
							
							Note that wait() doesn't work since only waiting for specified
pid is supported. wait() will just return -1 and set errno to
ECHILD. 
							
						 
						
							2023-06-04 18:00:52 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								3a79880e69 
								
							 
						 
						
							
							
								
								LibC: printf string persision works now  
							
							 
							
							
							
						 
						
							2023-06-03 15:07:02 +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
							
						 
						
							 
							
							
							
							
								
							
							
								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
							
						 
						
							 
							
							
							
							
								
							
							
								0f412e570c 
								
							 
						 
						
							
							
								
								LibC: add execl  
							
							 
							
							
							
						 
						
							2023-05-31 22:36:26 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								24a190d1f7 
								
							 
						 
						
							
							
								
								Kernel: Add SYS_EXEC syscall  
							
							 
							
							
							
						 
						
							2023-05-31 20:57:33 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								e8f820ef8d 
								
							 
						 
						
							
							
								
								LibC: Fix some headers to make gcc build again  
							
							 
							
							
							
						 
						
							2023-05-30 01:17:45 +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
							
						 
						
							 
							
							
							
							
								
							
							
								998999a755 
								
							 
						 
						
							
							
								
								Kernel: Add SYS_SLEEP  
							
							 
							
							
							
						 
						
							2023-05-28 22:34:48 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								f2d767b799 
								
							 
						 
						
							
							
								
								Kernel: Add bareboness fork() function  
							
							 
							
							
							
						 
						
							2023-05-28 18:08:49 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								dd4973ac35 
								
							 
						 
						
							
							
								
								LibC: fputs uses fputc instead of putc  
							
							 
							
							
							
						 
						
							2023-05-28 17:48:34 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								faf14b880e 
								
							 
						 
						
							
							
								
								LibC: Rewrite all the headers.  
							
							 
							
							... 
							
							
							
							We now have more or less posix issue 2018 conforming libc headers.
This was a really time consuming and boring operation but it had to
be done.
Now we get to actually start implementing libc :) 
							
						 
						
							2023-05-26 22:31:21 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								1658e925f2 
								
							 
						 
						
							
							
								
								Kernel: Add bareboness possibility to set termios  
							
							 
							
							
							
						 
						
							2023-05-26 22:31:21 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								80d9f6131b 
								
							 
						 
						
							
							
								
								Kernel/LibC: move file offset back to kernel  
							
							 
							
							... 
							
							
							
							This makes keeping track of offsets easier and more proper 
							
						 
						
							2023-05-26 22:31:21 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								8ec675cca6 
								
							 
						 
						
							
							
								
								LibC: fix bugs with printf  
							
							 
							
							
							
						 
						
							2023-05-15 22:47:08 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								7543fadfa8 
								
							 
						 
						
							
							
								
								LibC: printf now prints 0 as integer  
							
							 
							
							
							
						 
						
							2023-05-11 18:20:37 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								729ff267d7 
								
							 
						 
						
							
							
								
								LibC: add function declarations to sys/stat.h  
							
							 
							
							
							
						 
						
							2023-05-11 15:11:33 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								d9be14e1fb 
								
							 
						 
						
							
							
								
								LibC: add function declarations to dirent.h  
							
							 
							
							
							
						 
						
							2023-05-11 01:42:52 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								8a9f9b07e7 
								
							 
						 
						
							
							
								
								LibC: add definitions to math.h  
							
							 
							
							
							
						 
						
							2023-05-11 01:40:42 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								c989a01913 
								
							 
						 
						
							
							
								
								LibC: add defines in stdio.h  
							
							 
							
							
							
						 
						
							2023-05-11 01:39:16 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								5188efcc57 
								
							 
						 
						
							
							
								
								LibC: add function declarations to unistd.h  
							
							 
							
							
							
						 
						
							2023-05-11 00:34:03 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								c05a5b796b 
								
							 
						 
						
							
							
								
								LibC: add function declarations to string.h  
							
							 
							
							
							
						 
						
							2023-05-11 00:34:03 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								f0058e67c2 
								
							 
						 
						
							
							
								
								LibC: add function declarations to math.h  
							
							 
							
							
							
						 
						
							2023-05-11 00:34:03 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								508d6311de 
								
							 
						 
						
							
							
								
								LibC: define all errnos and strerror{name,desk}_np  
							
							 
							
							
							
						 
						
							2023-05-11 00:34:03 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								7c6bf40d0d 
								
							 
						 
						
							
							
								
								LibC: add function declarations to time.h  
							
							 
							
							
							
						 
						
							2023-05-11 00:34:03 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								a74343c589 
								
							 
						 
						
							
							
								
								LibC: add more types to sys/types.h  
							
							 
							
							
							
						 
						
							2023-05-11 00:33:53 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								d188576ef3 
								
							 
						 
						
							
							
								
								LibC: Add dummy signal.h  
							
							 
							
							
							
						 
						
							2023-05-10 23:20:27 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								d922c5e1d0 
								
							 
						 
						
							
							
								
								LibC: add toupper, tolower in ctype.h  
							
							 
							
							
							
						 
						
							2023-05-10 23:13:56 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								0adf24fcad 
								
							 
						 
						
							
							
								
								LibC: Add dummy setjmp.h  
							
							 
							
							
							
						 
						
							2023-05-10 23:00:53 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								80e13965d9 
								
							 
						 
						
							
							
								
								LibC: Add dummy locale.h  
							
							 
							
							
							
						 
						
							2023-05-10 22:58:07 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								36707ec87a 
								
							 
						 
						
							
							
								
								LibC: implement printf conversions e, E, f, F  
							
							 
							
							
							
						 
						
							2023-05-10 22:36:03 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								5f89f083a2 
								
							 
						 
						
							
							
								
								LibC: add math.h with floorl  
							
							 
							
							
							
						 
						
							2023-05-10 22:35:42 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								cae0a1cc60 
								
							 
						 
						
							
							
								
								LibC: add working f modifier to printf  
							
							 
							
							... 
							
							
							
							This is implementation will write out of bounds if the conversion
takes more than 1024 characters (either super large number or very
big percision).
Also we dont handle NaN and infinity cases 
							
						 
						
							2023-05-10 15:43:42 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								480d92fce5 
								
							 
						 
						
							
							
								
								LibC: add better error string support  
							
							 
							
							
							
						 
						
							2023-05-10 02:22:31 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								49fe3d0d4f 
								
							 
						 
						
							
							
								
								LibC: add probably functional *printf  
							
							 
							
							... 
							
							
							
							I wrote a general printf function that takes an putc function
pointer. We can use this to implement all the printf family
functions. I haven't done thorough testing with this, but it seems
to be functional for the most part 
							
						 
						
							2023-05-10 02:00:28 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								ff2e2937a5 
								
							 
						 
						
							
							
								
								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  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								0cc1fb53d5 
								
							 
						 
						
							
							
								
								LibC: Fix bug in *printf  
							
							 
							
							
							
						 
						
							2023-05-09 20:30:12 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								05046d6e93 
								
							 
						 
						
							
							
								
								BAN: Error uses 64 bit error codes  
							
							 
							
							
							
						 
						
							2023-05-07 02:09:52 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								054c5450df 
								
							 
						 
						
							
							
								
								LibC: syscall() now returns -1 on error and updates errno  
							
							 
							
							
							
						 
						
							2023-05-07 01:51:39 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								12e42f40c5 
								
							 
						 
						
							
							
								
								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  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								bcfd838131 
								
							 
						 
						
							
							
								
								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  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								e1a6e7c3ac 
								
							 
						 
						
							
							
								
								LibC: add proper stdlib.h header  
							
							 
							
							... 
							
							
							
							Function declarations taken from the posix specifications 
							
						 
						
							2023-04-27 15:14:03 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								3537d53d5c 
								
							 
						 
						
							
							
								
								LibC: add link to posix stdio.h  
							
							 
							
							
							
						 
						
							2023-04-27 14:16:25 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								1d42b26fce 
								
							 
						 
						
							
							
								
								LibC: Fix some bugs  
							
							 
							
							
							
						 
						
							2023-04-25 13:27:01 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								79812b34b0 
								
							 
						 
						
							
							
								
								LibC: fread() now does a single syscall  
							
							 
							
							
							
						 
						
							2023-04-25 12:38:08 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								cd74b2167d 
								
							 
						 
						
							
							
								
								LibC: Write mostly functioning stdio  
							
							 
							
							
							
						 
						
							2023-04-23 14:32:37 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								ff8c0086e2 
								
							 
						 
						
							
							
								
								LibC: puts() now just calls syscall(SYS_WRITE, ...)  
							
							 
							
							
							
						 
						
							2023-04-22 15:29:38 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								dc1b7cf08f 
								
							 
						 
						
							
							
								
								LibC: syscalls have now proper argument order  
							
							 
							
							
							
						 
						
							2023-04-22 15:29:15 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								d9b7747fc5 
								
							 
						 
						
							
							
								
								LibC: exit() calls _fini()  
							
							 
							
							
							
						 
						
							2023-04-19 00:42:00 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								3f9d6f0311 
								
							 
						 
						
							
							
								
								LibC: add needed stubs to build executables with our compiler  
							
							 
							
							
							
						 
						
							2023-04-12 17:53:02 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								aa2aee684b 
								
							 
						 
						
							
							
								
								Kernel: remove message from BAN::Error  
							
							 
							
							... 
							
							
							
							We don't store the error message anymore in BAN::Error.
Instead we store a error code that can be mapped into a string.
This allows BAN::Error to only take 4 bytes instead of 128.
We should also make some kernel initialization just panic instead
of returning errors since they are required for succesfull boot
anyway. 
							
						 
						
							2023-04-11 23:25:21 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								781cc78a1f 
								
							 
						 
						
							
							
								
								BuildSystem: Fix header copying to sysroot  
							
							 
							
							... 
							
							
							
							We used to copy all headers everytime to sysroot which caused
rebuild of the whole os. Now we use the cmake command
'copy_directory_if_different' which seemed to fix this issue :) 
							
						 
						
							2023-04-10 21:07:25 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								25ddc24754 
								
							 
						 
						
							
							
								
								BuildSystem: cmake can now build out libc  
							
							 
							
							... 
							
							
							
							I can't seem to get libc++ build to work... 
							
						 
						
							2023-04-10 21:07:25 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								989f9ec5fe 
								
							 
						 
						
							
							
								
								LibC: remove old unused files  
							
							 
							
							
							
						 
						
							2023-04-07 02:26:44 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								8a8793fd2d 
								
							 
						 
						
							
							
								
								BuildSystem: you can now build the toolchain with cmake  
							
							 
							
							
							
						 
						
							2023-04-06 00:23:02 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								a5830c5424 
								
							 
						 
						
							
							
								
								LibC: add stubs for a lot of functions  
							
							 
							
							
							
						 
						
							2023-04-05 23:58:40 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								b6896a6d85 
								
							 
						 
						
							
							
								
								LibC: sys/types uses 'typedef' instead of 'using'  
							
							 
							
							
							
						 
						
							2023-04-05 15:03:24 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								67ff01e915 
								
							 
						 
						
							
							
								
								LibC: Add errno ENOTTY  
							
							 
							
							
							
						 
						
							2023-04-05 02:47:37 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								63e863ad35 
								
							 
						 
						
							
							
								
								LibC: Add unistd.h with STD{IN,OUT,ERR}_FILENO definitions  
							
							 
							
							
							
						 
						
							2023-04-05 00:59:48 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								86d777e2eb 
								
							 
						 
						
							
							
								
								LibC: add device macros in sys/sysmacros.h  
							
							 
							
							
							
						 
						
							2023-04-03 10:59:15 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								4c5176f751 
								
							 
						 
						
							
							
								
								BuildSystem: We are now using cmake instead of plain make  
							
							 
							
							... 
							
							
							
							I have been annoyed for a while since I had to build everything
when running the os since the buildsystem was really bad.
I wanted to rewrite the whole build system and changed to using cmake
:) 
							
						 
						
							2023-04-02 04:07:27 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								d71f1f24e4 
								
							 
						 
						
							
							
								
								LibC: Combine string.h functions definitions to single file  
							
							 
							
							
							
						 
						
							2023-04-02 00:00:29 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								cd0d10b64e 
								
							 
						 
						
							
							
								
								LibC: add ENOBUFS errno  
							
							 
							
							
							
						 
						
							2023-03-29 10:58:25 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								32c3aca52f 
								
							 
						 
						
							
							
								
								LibC: add dirent.h  
							
							 
							
							
							
						 
						
							2023-03-25 02:08:33 +02:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								9fd17ef73c 
								
							 
						 
						
							
							
								
								LibC: Add stat structure  
							
							 
							
							
							
						 
						
							2023-03-24 18:08:22 +02:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								1be8b2f514 
								
							 
						 
						
							
							
								
								LibC: add more typedefs to sys/types  
							
							 
							
							
							
						 
						
							2023-03-23 19:24:12 +02:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								d6e4430692 
								
							 
						 
						
							
							
								
								LibC: add errno NAMETOOLONG  
							
							 
							
							
							
						 
						
							2023-03-23 14:48:42 +02:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								cf2be54e8f 
								
							 
						 
						
							
							
								
								LibC: add errno ENOTEMPTY  
							
							 
							
							
							
						 
						
							2023-03-19 05:43:40 +02:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								3ab62e83d3 
								
							 
						 
						
							
							
								
								LibC: add errno EEXISTS  
							
							 
							
							
							
						 
						
							2023-03-19 04:17:39 +02:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								ceb53533be 
								
							 
						 
						
							
							
								
								LibC: add fcntl.h with some defines  
							
							 
							
							
							
						 
						
							2023-03-17 21:18:41 +02:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								e2707b9416 
								
							 
						 
						
							
							
								
								LibC: Add EBADF errno  
							
							 
							
							
							
						 
						
							2023-03-16 16:22:11 +02:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								4493c9bbe6 
								
							 
						 
						
							
							
								
								LibC: Add ENTOSUP errno  
							
							 
							
							
							
						 
						
							2023-03-16 16:03:51 +02:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								1b7625581d 
								
							 
						 
						
							
							
								
								Kernel: Add basic concept of Processes  
							
							 
							
							... 
							
							
							
							We now create Shell as a process that has its own threads 
							
						 
						
							2023-03-16 12:17:04 +02:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								10ef3c6a54 
								
							 
						 
						
							
							
								
								LibC: add declarations for malloc and free  
							
							 
							
							
							
						 
						
							2023-03-04 02:59:48 +02:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								53ec66ff86 
								
							 
						 
						
							
							
								
								LibC: strerror now always uses a buffer to which it copies the string  
							
							 
							
							
							
						 
						
							2023-03-02 22:13:08 +02:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								52aa98ba25 
								
							 
						 
						
							
							
								
								Kernel+LibC: Add some errno codes  
							
							 
							
							... 
							
							
							
							Kernel now returns ENOMEM and other errnos, so we dont have to write
error messages 
							
						 
						
							2023-03-02 21:10:44 +02:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								5cd97e44e2 
								
							 
						 
						
							
							
								
								LibC: Add strcmp and strncmp  
							
							 
							
							
							
						 
						
							2023-02-23 15:57:33 +02:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								9b8de5025a 
								
							 
						 
						
							
							
								
								All: rename every function from UpperCamelCase to snake_case  
							
							 
							
							... 
							
							
							
							This was a mess since I didn't know which to use but now I decided
to go with snake_case :) 
							
						 
						
							2023-02-01 21:05:44 +02:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								b315fdc27f 
								
							 
						 
						
							
							
								
								Kernel: Finally managed to get 64-bit working  
							
							 
							
							... 
							
							
							
							I had weird problems with interrupts but everything should work now 
							
						 
						
							2023-01-25 19:19:28 +02:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								fd16c1cf58 
								
							 
						 
						
							
							
								
								LibC: Add is*() functions to libc  
							
							 
							
							
							
						 
						
							2023-01-16 20:05:51 +02:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								6b73547989 
								
							 
						 
						
							
							
								
								All: edit gcc flags  
							
							 
							
							
							
						 
						
							2023-01-13 00:04:15 +02:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								efd8638a96 
								
							 
						 
						
							
							
								
								Kernel: Improve kernel panic message and rename it 'panic'->'Panic'  
							
							 
							
							
							
						 
						
							2023-01-09 21:57:03 +02:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								f4b614aa61 
								
							 
						 
						
							
							
								
								LibC: Add some new functions  
							
							 
							
							
							
						 
						
							2022-12-13 00:51:57 +02:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								ac2ba8bc56 
								
							 
						 
						
							
							
								
								LibC: Remove actual printing from putc() since we were panicing anyway  
							
							 
							
							
							
						 
						
							2022-12-10 00:30:00 +02:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								c17f61611e 
								
							 
						 
						
							
							
								
								Improve buildsystem by making build directory  
							
							 
							
							... 
							
							
							
							We now create build directory for kernel and libc so that source
directories are kept more clean. 
							
						 
						
							2022-12-03 18:17:37 +02:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								123382eace 
								
							 
						 
						
							
							
								
								Fixes :)  
							
							 
							
							
							
						 
						
							2022-11-15 21:42:14 +02:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								35e21ca4ce 
								
							 
						 
						
							
							
								
								Improve integer printing  
							
							 
							
							
							
						 
						
							2022-11-15 16:34:16 +02:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								9e933a5ec5 
								
							 
						 
						
							
							
								
								Add kernel panic function  
							
							 
							
							
							
						 
						
							2022-11-14 18:53:00 +02:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								b185ed4fd3 
								
							 
						 
						
							
							
								
								Libc is now written in C++  
							
							 
							
							
							
						 
						
							2022-11-14 00:31:24 +02:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								a1a709974a 
								
							 
						 
						
							
							
								
								Add %p to printf  
							
							 
							
							
							
						 
						
							2022-11-13 00:33:45 +02:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								5a3596170c 
								
							 
						 
						
							
							
								
								Add strcpy and strncpy  
							
							 
							
							
							
						 
						
							2022-11-12 23:47:06 +02:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								7ad8189e24 
								
							 
						 
						
							
							
								
								Add somewhat functioning printf  
							
							 
							
							
							
						 
						
							2022-11-12 23:36:39 +02:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								e6b4866ab0 
								
							 
						 
						
							
							
								
								Initial commit. We have a booting kernel  
							
							 
							
							
							
						 
						
							2022-11-12 21:04:47 +02:00