Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								15cd59b8ce 
								
							 
						 
						
							
							
								
								LibC: Fix a bug in malloc  
							
							 
							
							... 
							
							
							
							You could not allocate with size equal to one of the pool sizes. 
							
						 
						
							2023-09-28 21:05:27 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								6eda65eea6 
								
							 
						 
						
							
							
								
								Kernel/LibC/Userspace: Add SYS_POWEROFF + cli tool  
							
							 
							
							... 
							
							
							
							You can now shutdown/reboot banan-os with the poweroff cli tool.
Reboot doesn't seem to work on qemu. 
							
						 
						
							2023-09-28 12:36:47 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								1abf787596 
								
							 
						 
						
							
							
								
								LibC: Add errno for unknown error  
							
							 
							
							
							
						 
						
							2023-09-28 12:06:17 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								61694268e2 
								
							 
						 
						
							
							
								
								LibC: Implement length modifiers to printf  
							
							 
							
							
							
						 
						
							2023-09-28 11:42:57 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								cb76f1ea75 
								
							 
						 
						
							
							
								
								Kernel: Add some functionality to disable TTY input/output  
							
							 
							
							... 
							
							
							
							Userspace programs can call tty_ctrl() to disable/enable tty from
handling input and displaying output.
This API is probably going to change in the future to ioctl calls
but I'm not sure how ioctl is used and what functionality should it
have. I decided to create whole new function and syscall for now.
Next I will expose framebuffer in /dev/fb0 and then I can start work
on graphical environment! :D 
							
						 
						
							2023-09-27 15:44:05 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								a69e5fb288 
								
							 
						 
						
							
							
								
								LibC: add syncsync() to unistd.h  
							
							 
							
							... 
							
							
							
							This is my own WELL NAMED (:D) function that takes a paramemeter
to make the sync operation synchronous. 
							
						 
						
							2023-09-27 00:35:36 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								3ba15b41a3 
								
							 
						 
						
							
							
								
								Kernel/LibC: remove PATH resoltion from kernel  
							
							 
							
							... 
							
							
							
							I have no idea why I had made PATH environment variable parsing
to be part of the kernel. Now the shell does the parsing and
environment syscall is no longer needed. 
							
						 
						
							2023-09-23 03:08:14 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								7a7c5e433e 
								
							 
						 
						
							
							
								
								Kernel/LibC: add flag to enable/disable sse support  
							
							 
							
							... 
							
							
							
							SSE support is very experimental and causes GP. I decided to make
SSE not default until I get to fixing it :) 
							
						 
						
							2023-09-23 02:28:25 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								6bb2c80bdd 
								
							 
						 
						
							
							
								
								Kernel/LibC: userspace malloc now uses mmap to get memory  
							
							 
							
							... 
							
							
							
							We could remove syscalls to allocate more memory. This was not
something the kernel should have done. 
							
						 
						
							2023-09-23 02:26:23 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								af4af1cae9 
								
							 
						 
						
							
							
								
								Kernel/LibC: add mmap for private anonymous mappings  
							
							 
							
							... 
							
							
							
							This will be used by the userspace to get more memory. Currently
kernel handles all allocations, which is not preferable. 
							
						 
						
							2023-09-22 23:01:14 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								63dc2b6aa6 
								
							 
						 
						
							
							
								
								Kernel: Implement SYS_SYNC and add sync executable to userspace  
							
							 
							
							... 
							
							
							
							You can (and have to) manually sync disk after writes to it. 
							
						 
						
							2023-09-11 01:26:27 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								921d95d18f 
								
							 
						 
						
							
							
								
								All: Clear lines with only whitspace in them  
							
							 
							
							
							
						 
						
							2023-09-10 00:31:42 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								39a5c52088 
								
							 
						 
						
							
							
								
								Kernel: Fix directory permissions  
							
							 
							
							... 
							
							
							
							We did not care about X bit in directories and instead used only the
R bit for search/read. 
							
						 
						
							2023-09-08 11:46:53 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								5972c73950 
								
							 
						 
						
							
							
								
								LibC: fix fread implementation  
							
							 
							
							... 
							
							
							
							fread() should read until either size*nitems bytes are read or eof
is reached. 
							
						 
						
							2023-09-07 16:00:47 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								7184514b5d 
								
							 
						 
						
							
							
								
								LibC: add time() implementation  
							
							 
							
							
							
						 
						
							2023-09-04 13:52:58 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								dfb18d38f7 
								
							 
						 
						
							
							
								
								LibC: Add rand() and srand() implementation  
							
							 
							
							... 
							
							
							
							This code is from the wikipedia page for Permuted congruential generator 
							
						 
						
							2023-09-04 13:52:13 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								9901f95d78 
								
							 
						 
						
							
							
								
								Kernel: Add basic nanosleep, only millisecond percision  
							
							 
							
							
							
						 
						
							2023-09-04 12:59:50 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								6f002c926a 
								
							 
						 
						
							
							
								
								Kernel: add basic fcntl() with couple of commands and no validation  
							
							 
							
							
							
						 
						
							2023-09-04 12:57:09 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								8032824054 
								
							 
						 
						
							
							
								
								BuildSystem: use -a with rsync  
							
							 
							
							... 
							
							
							
							This allows cmake to not rebuild whole project every time 
							
						 
						
							2023-08-28 11:38:17 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								7aaea786c2 
								
							 
						 
						
							
							
								
								LibC: Don't undef needed values in inttypes.h  
							
							 
							
							
							
						 
						
							2023-08-24 15:48:14 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								80e7a89f67 
								
							 
						 
						
							
							
								
								BuildSystem: Base sysroot is now distributed as a tar ball  
							
							 
							
							... 
							
							
							
							This allows file and directory permissions work as intended.
cmake is now filled with 'sudo' but with sudo timeout this should be
fine. 
							
						 
						
							2023-08-23 10:38:21 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								60a2185ee6 
								
							 
						 
						
							
							
								
								Kernel/LibC: implement proper getpgid and setpgid  
							
							 
							
							
							
						 
						
							2023-08-22 14:53:12 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								c9243f0d1e 
								
							 
						 
						
							
							
								
								Kernel/LibC: Add {get,set}pgrp()  
							
							 
							
							
							
						 
						
							2023-08-22 11:36:33 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								b5a7246ba7 
								
							 
						 
						
							
							
								
								LibC: make printf buffer only 128 bytes  
							
							 
							
							... 
							
							
							
							Only reason for it to be big is if you want super large zero padding
for your number. This will eventually be handled without the buffer. 
							
						 
						
							2023-08-18 16:49:27 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								0abe30af38 
								
							 
						 
						
							
							
								
								BuildSystem: only apply stack usage warning to libc  
							
							 
							
							
							
						 
						
							2023-08-17 20:49:52 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								85c6149138 
								
							 
						 
						
							
							
								
								LibC: add fileno() and fdopen()  
							
							 
							
							... 
							
							
							
							fdopen() doesn't currently care about mode and will have same mode
as the underlying file descriptor. 
							
						 
						
							2023-08-17 12:03:59 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								79f3aa5419 
								
							 
						 
						
							
							
								
								Kernel/LibC: add dup() syscall and function  
							
							 
							
							
							
						 
						
							2023-08-17 12:03:29 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								569e76a848 
								
							 
						 
						
							
							
								
								LibC: printf handles nan and inf  
							
							 
							
							
							
						 
						
							2023-08-16 10:49:34 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								3a36c30e80 
								
							 
						 
						
							
							
								
								LibC: math.h defines is*() macros and uses builtins for values  
							
							 
							
							
							
						 
						
							2023-08-16 10:41:55 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								9ab7e76a3b 
								
							 
						 
						
							
							
								
								LibC: cleanup fstatat  
							
							 
							
							
							
						 
						
							2023-08-11 12:25:15 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								9cb50cba33 
								
							 
						 
						
							
							
								
								LibC: Fix S_IF* macros and add macros for access/type masks  
							
							 
							
							
							
						 
						
							2023-08-11 10:30:50 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								e715d52f80 
								
							 
						 
						
							
							
								
								LibC: fix typo  
							
							 
							
							
							
						 
						
							2023-08-02 22:10:12 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								b4eddf04c4 
								
							 
						 
						
							
							
								
								LibC: sys/wait.h now has proper exit status macros  
							
							 
							
							... 
							
							
							
							We use the same format as basically every implementation 
							
						 
						
							2023-08-01 10:32:04 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								2a851b52f1 
								
							 
						 
						
							
							
								
								BuildSystem: Edit build flags regarding sse and warnings  
							
							 
							
							
							
						 
						
							2023-07-31 22:31:17 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								834bf33e57 
								
							 
						 
						
							
							
								
								LibC: we don't parse syscall arguments in unistd  
							
							 
							
							... 
							
							
							
							We just call Kernel::syscall() with 5 arguments from the variadic function.
This was a necessary addition since the syscall() function
used over 2 KiB of stack space. 
							
						 
						
							2023-07-31 22:24:11 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								f6ee4b3496 
								
							 
						 
						
							
							
								
								Kernel: Implement SYS_GET_PID and SYS_TCSETPGID  
							
							 
							
							... 
							
							
							
							we don't have consept of process groups yet 
							
						 
						
							2023-07-24 22:29:59 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								2dce0a0415 
								
							 
						 
						
							
							
								
								Kernel: Userspace signal handlers are now called one at a time  
							
							 
							
							... 
							
							
							
							I added a syscall for telling the kernel when signal execution has
finished. We should send a random hash or id to the signal trampoline
that we would include in the syscall, so validity of signal exit can
be confirmed. 
							
						 
						
							2023-07-23 13:34:53 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								d560137ae6 
								
							 
						 
						
							
							
								
								Kernel/LibC: add SYS_SIGNAL/signal()  
							
							 
							
							
							
						 
						
							2023-07-21 20:08:13 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								c12f4fb40f 
								
							 
						 
						
							
							
								
								Kernel: Make signals more POSIX  
							
							 
							
							
							
						 
						
							2023-07-21 20:01:12 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								10169d773d 
								
							 
						 
						
							
							
								
								Kernel/LibC: Add SYS_KILL/kill()  
							
							 
							
							
							
						 
						
							2023-07-21 19:27:38 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								c2cf98e32f 
								
							 
						 
						
							
							
								
								Kernel/LibC: Add bareboness signals  
							
							 
							
							... 
							
							
							
							You can now call raise() to raise a signal. Signal handlers are
not yet supported, but the handling works :) 
							
						 
						
							2023-07-21 15:45:02 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								4154f43b49 
								
							 
						 
						
							
							
								
								LibC: add getpwname() and getpwuid()  
							
							 
							
							
							
						 
						
							2023-07-13 12:01:16 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								b1fcb0b58f 
								
							 
						 
						
							
							
								
								LibC: implement endpwent(), getpwent() and setpwent()  
							
							 
							
							
							
						 
						
							2023-07-13 11:22:09 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								f7c4bc908e 
								
							 
						 
						
							
							
								
								Kernel: open() and openat() now take mode as parameter  
							
							 
							
							... 
							
							
							
							O_CREAT now tries to create file if O_CREAT is specified 
							
						 
						
							2023-07-10 15:08:54 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								51e4b11890 
								
							 
						 
						
							
							
								
								LibC: add NAME_MAX to limits.h  
							
							 
							
							... 
							
							
							
							This is defined to 255 which is _XOPEN_NAME_MAX, smallest value
for XOPEN compliance 
							
						 
						
							2023-07-10 11:48:11 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								a337f414fc 
								
							 
						 
						
							
							
								
								LibC: limits.h now defined OPEN_MAX  
							
							 
							
							
							
						 
						
							2023-07-07 23:08:49 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								07fec6e211 
								
							 
						 
						
							
							
								
								Kernel/LibC: add basic dup2  
							
							 
							
							
							
						 
						
							2023-07-06 23:17:54 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								4cd72992c8 
								
							 
						 
						
							
							
								
								Kernel/LibC: Add basic pipe() syscall and command  
							
							 
							
							... 
							
							
							
							You can now create pipes :) 
							
						 
						
							2023-07-06 22:16:26 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								cdcb395640 
								
							 
						 
						
							
							
								
								LibC: add read() and write() to unistd  
							
							 
							
							
							
						 
						
							2023-07-06 22:15:55 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								1fb305fa45 
								
							 
						 
						
							
							
								
								Kernel/LibC: add clock_gettime() for CLOCK_MONOTONIC  
							
							 
							
							... 
							
							
							
							This gets the number of milliseconds since boot 
							
						 
						
							2023-07-06 00:38:29 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								60fe5a656c 
								
							 
						 
						
							
							
								
								LibC: Fix syscall SYS_READ and SYS_WRITE arguments  
							
							 
							
							
							
						 
						
							2023-06-19 10:38:29 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								f09b82c4b5 
								
							 
						 
						
							
							
								
								Kernel/LibC: add SYS_{SET,GET}_PWD and chdir, getpwd  
							
							 
							
							
							
						 
						
							2023-06-12 02:02:52 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								11b68f6a53 
								
							 
						 
						
							
							
								
								Kernel: Add SYS_GET_{,E}{UID,GID}  
							
							 
							
							
							
						 
						
							2023-06-11 22:37:00 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								3fe67e4882 
								
							 
						 
						
							
							
								
								Kernel: Add syscalls for set{,e,re}{uid,gid}  
							
							 
							
							
							
						 
						
							2023-06-11 22:37:00 +03:00  
						
					 
				
					
						
							
							
								 
								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