Fennix/CHANGELOG.md
EnderIce2 d69eb73a59
chore: update CHANGELOG.md
Signed-off-by: EnderIce2 <enderice2@protonmail.com>
2025-03-26 23:24:24 +00:00

1884 lines
88 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Changelog
All notable changes to this project will be documented in this file.
## Unreleased
### <!-- 0 -->🚀 Features
- *(coreutils)* Implement coreutils and compile it using cmake
- *(devcontainer)* Install meson in Dockerfile
- *(devcontainer)* Add libtool and libltdl-dev packages
- *(initrd)* Add /etc/hosts file
- *(kernel)* Add stub device /dev/fb0
- *(kernel)* Add SHA-512 implementation
- *(kernel)* Move kernel note to a separate file
- *(kernel)* Add hot and cold attributes to optimize function performance
- *(kernel)* Enable SIMD by default
- *(kernel)* Update limine
- *(kernel)* Add KERNEL_HHDM_OFFSET macro
- *(kernel)* Add <utf8.h> header
- *(kernel/api)* Implement i386 syscall wrappers
- *(kernel/api)* Implement arm syscall wrappers
- *(kernel/api)* Add fcntl.h
- *(kernel/driver)* Add ReloadDriver method to manage driver reloading
- *(kernel/driver)* Add CreateDeviceFile method
- *(kernel/driver)* Add CreateDeviceFile function in the API
- *(kernel/driver)* Implement built-in driver support
- *(kernel/driver)* Implement driver sha512 verification
- *(kernel/drivers)* Migrate drivers to the kernel
- *(kernel/drivers)* Add trusted drivers list
- *(kernel/pci)* Add device initialization method for PCI devices
- *(kernel/syscalls)* Implement sys_fork()
- *(kernel/syscalls)* Implement uname syscall
- *(kernel/syscalls)* Add fcntl() syscall
- *(userspace)* Add dummy libstdc++ library
- *(userspace/apps/sys/init)* Handle termination signals for graceful shutdown
- *(userspace/apps/test)* Update utest
- *(userspace/apps/test/libc_test)* Add more tests
- *(userspace/apps/test/libc_test)* Rewrite a lot of the code and improve debugging with vscode using .devcontainer
- *(userspace/apps/test/utest)* Add TestProcess function for executing test programs
- *(userspace/apps/usr)* Stub implementation for mdview
- *(userspace/coreutils)* Implement arch command
- *(userspace/coreutils)* Add test command
- *(userspace/coreutils)* Add stub "admin" command
- *(userspace/coreutils)* Add alias command
- *(userspace/coreutils)* Add stub "sh" command
- *(userspace/coreutils)* Improve fennix shell implementation
- *(userspace/libc)* Implement strcpy function
- *(userspace/libc)* Implement all <string.h> functions
- *(userspace/libc)* Complete <string.h> implementation
- *(userspace/libc)* Define file descriptor macros for standard input/output
- *(userspace/libc)* Add termios header file for terminal I/O control
- *(userspace/libc)* Extend termios header with input/output speed and winsize structure
- *(userspace/libc)* Implement getchar() and getc()
- *(userspace/libc)* Implement <pwd.h> header
- *(userspace/libc)* Implement getpid, getppid & getuid
- *(userspace/libc)* Implement atoi, strtol, and strtoll functions in <stdlib.h>
- *(userspace/libc)* Implement <ctype.h> header
- *(userspace/libc)* Implement system() function
- *(userspace/libc)* Implement fstat()
- *(userspace/libc)* Implement fstatat, lstat & stat
- *(userspace/libc)* Implement getdelim and getline functions
- *(userspace/libc)* Implement <time.h> header
- *(userspace/libc)* Implement feof() and ferror() functions
- *(userspace/libc)* Add stub termios implementation
- *(userspace/libc)* Add math stub functions
- *(userspace/libc)* Update math functions
- *(userspace/libc)* Implementation <fenv.h> header
- *(userspace/libc)* Implement <math.h> header
- *(userspace/libc)* Add experimental __aeabi_dcmpun() function
- *(userspace/libc)* Define TIOC*WINSZ constants in <sys/ioctl.h>
- *(userspace/libc)* Add <regex.h> header
- *(userspace/libc)* Add <getopt.h> header
- *(userspace/libc)* Support for linux target
- *(userspace/libc)* Implement access()
- *(userspace/libc)* Implement brk(), chdir() and getcwd()
- *(userspace/libc)* Implement functions for porting apps
- *(userspace/libs)* Add libexpat, libffi and libxml2
- *(userspace/libs/libdemo)* Add template library
- *(userspace/libs/libm)* Add stub libm
- *(No Category)* Synchronize syscalls.h
- *(No Category)* Add /etc/hostname file
### <!-- 1 -->🐛 Bug Fixes
- *(devcontainer)* Qemu cannot access /dev/kvm "failed to initialize kvm: Permission denied"
- *(devcontainer)* Update XAUTHORITY source to use localEnv
- *(drivers)* Remove drivers that are now in kernel
- *(kernel)* Add TZ environment variable to init process
- *(kernel)* Fix empty initialization of std::string (str = "")
- *(kernel)* Crash on ACPI shutdown/reboot
- *(kernel)* Compilation issues due to header changes
- *(kernel)* Add LD_LIBRARY_PATH
- *(kernel/driver)* Remove unused device handling code in daemon
- *(kernel/driver)* Node device & offset were not set for new created files under /dev
- *(kernel/driver)* Set unused file system operation pointers to nullptr
- *(kernel/driver)* Filter out non-.drv files in driver loading
- *(kernel/pci)* Map BAR address using PWT and PCD flags
- *(kernel/pci)* Fix MapPCIAddresses when BAR size of zero
- *(kernel/syscalls)* Cast syscall arguments to scarg type for call_time
- *(kernel/tty)* Temporal removal of ICANON checking
- *(userspace)* Change version of libc and coreutils
- *(userspace/apps/test)* Fix noreturn compiler warning
- *(userspace/apps/test)* Update expected results for rounding and special functions
- *(userspace/apps/test)* Adjust fflush(stdout) calls for better output control
- *(userspace/apps/test)* Make gcc shut up about "infinite recursion detected"
- *(userspace/coreutils)* Handle combined uname options (-sv, -np, etc.)
- *(userspace/coreutils)* Fix test command to correctly detect the bracket
- *(userspace/libc)* Fix error handling in ioctl function
- *(userspace/libc)* Include <ctype.h> in stdlib.c
- *(userspace/libc)* Cast status to int in __check_errno for proper error handling
- *(userspace/libc)* Modify __libc_init and crt0 to initialize "environ"
- *(userspace/libc)* Fopen should set buffer_pos to -1
- *(userspace/libc)* Handle NULL input in getenv function
- *(userspace/libc)* Fix gmtime_r, localtime_r and mktime implementation
- *(userspace/libc)* Fix tzset() function
- *(userspace/libc)* Update vscode stub macro with improved formatting
- *(userspace/libc)* Wrong puts() implementation
- *(userspace/libc)* Disable debug info in memory allocation functions
- *(userspace/libc)* Fix wrong implementation of ioctl()
- *(userspace/libc)* Add libgcc link to fix softfloat
- *(userspace/libc)* Fix puts() in interpreter
- *(userspace/libc)* Missing include <sys/ioctl.h>
- *(userspace/libc)* Remove stub macros in termios.c
- *(userspace/libc)* Implement gethostname()
- *(userspace/libc)* Implement uname()
- *(userspace/libc)* Add .gitkeep to arch directories
- *(userspace/libc)* Mark ABI and build ID notes as used to prevent optimization removal
- *(vscode)* Problem matcher lagging the interface
- *(No Category)* Fixme
- *(No Category)* Fixme
- *(No Category)* Correct project name references in license headers
- *(No Category)* Accidentally hit CTRL+Z
### <!-- 10 -->💼 Other
- *(devcontainer)* Improve Dev Container development
- *(devcontainer)* Potential fix for "failed to initialize kvm: Permission denied"
- *(devcontainer)* Install cmake too
- *(kernel)* Fix compiling issues on i386
- *(kernel)* Fix compiling issues on arm
- *(kernel)* Fix i386 build
- *(tools)* Rewrite makefile to be more efficient and easy to understand
- *(tools)* Fix gdb error 'Scripting in the "Python" language is not supported in this copy of GDB.'
- *(userspace)* Update vscode launch configuration and Makefiles for utest and libc_test
- *(userspace/coreutils)* Generate symlink "[" on install
- *(userspace/libc)* Correctly detect linux in cmake
- *(vscode)* Add separated tasks for building bootloader, kernel, drivers, userspace, and image
- *(No Category)* Initial commit
- *(No Category)* Delete README.md
- *(No Category)* Initial commit
- *(No Category)* Added vscode workspace file
- *(No Category)* Added submodules
- *(No Category)* Update README.md
- *(No Category)* Updated files
- *(No Category)* Added Drivers repo
- *(No Category)* Update files
- *(No Category)* Update files
- *(No Category)* Update files
- *(No Category)* Fixed makefile.yml
- *(No Category)* Replaced "Fennix.iso" to "Fennix.img" for aarch64 image
- *(No Category)* Update files
- *(No Category)* Fixed gnu-efi not compiling
- *(No Category)* Clone limine too
- *(No Category)* Update submodules
- *(No Category)* Run prepare on Kernel
- *(No Category)* Update Kernel submodule
- *(No Category)* Update Kernel submodule
- *(No Category)* Update LICENSE
- *(No Category)* Update submodules
- *(No Category)* Update Kernel submodule
- *(No Category)* Update makefile.yml
- *(No Category)* Update Kernel submodule
- *(No Category)* Update Kernel submodule
- *(No Category)* Update makefile.yml
- *(No Category)* ISO for old x86 computers (Fennix-legacy.iso)
- *(No Category)* Update Makefile.conf
- *(No Category)* Update action version
- *(No Category)* Fixed Makefile
- *(No Category)* Update submodules
- *(No Category)* Update submodules
- *(No Category)* Update Kernel submodule
- *(No Category)* Update doxygen
- *(No Category)* Update submodules
- *(No Category)* Update Doxygen configuration
- *(No Category)* Update website
- *(No Category)* Update README.md
- *(No Category)* Removed code for legacy iso
- *(No Category)* Update kernel boot arguments
- *(No Category)* Update Kernel submodule
- *(No Category)* Update Kernel submodule
- *(No Category)* Should start with quarter of cpu cores
- *(No Category)* Update Kernel submodule
- *(No Category)* Fixed i386 and aarch64
- *(No Category)* Ignore *.fex files
- *(No Category)* Update submodules
- *(No Category)* Driver directory can be modified by config
- *(No Category)* Update bootloader configs
- *(No Category)* Update configs
- *(No Category)* Specify location of pulseaudio server in qemu
- *(No Category)* Update files
- *(No Category)* Update submodules
- *(No Category)* Stub
- *(No Category)* Kernel boot params
- *(No Category)* Moved vscode workspace file
- *(No Category)* Update submodules
- *(No Category)* Updated Makefile
- *(No Category)* Updated kernel configs
- *(No Category)* Update submodules
- *(No Category)* Profiler bash
- *(No Category)* Added "profiler.log" on COM2
- *(No Category)* Install rustc package too
- *(No Category)* Fixed Makefile variable
- *(No Category)* Change video device to vmware-svga
- *(No Category)* Compile the OS specific toolchain
- *(No Category)* Update Makefile.conf
- *(No Category)* "cp" didn't copied .git
- *(No Category)* Toolchain
- *(No Category)* Remove files inside sys too
- *(No Category)* Updated config
- *(No Category)* Update submodules
- *(No Category)* Ignore .so libraries
- *(No Category)* Updated Fex file viewer
- *(No Category)* Remove elf files too from drivers directory
- *(No Category)* Updated submodules
- *(No Category)* Compile 32 bit versions of the toolchain
- *(No Category)* Build Userspace & Drivers only on x64
- *(No Category)* Update submodules
- *(No Category)* Forgot to clone gcc and binutils
- *(No Category)* Updated github workflows
- *(No Category)* Remove .so & .a files from /system directory
- *(No Category)* Added tailserial.sh
- *(No Category)* Updated Makefile
- *(No Category)* Update submodules
- *(No Category)* Created /system/config/ntp
- *(No Category)* Updated submodules
- *(No Category)* Compile without debugging enabled
- *(No Category)* Serial null for COM3 and COM4
- *(No Category)* Updated initrd
- *(No Category)* Update submodules
- *(No Category)* Update submodules
- *(No Category)* Dump serial 3 and 4 too
- *(No Category)* Ignore .dmp files
- *(No Category)* Update submodules
- *(No Category)* Update submodules
- *(No Category)* Use Xalloc as memory allocator
- *(No Category)* Disable VMware mouse driver
- *(No Category)* Update Kernel submodule
- *(No Category)* Fixed ConvertFromUnix()
- *(No Category)* Ignore *.log.* files too
- *(No Category)* Added PS/2 mouse driver
- *(No Category)* Update Kernel submodule
- *(No Category)* Update bootloader configs
- *(No Category)* Update vscode configs
- *(No Category)* X32 kernel is now compiling
- *(No Category)* Hopefully this will fix "No space left on device" in gh actions
- *(No Category)* Updated configs
- *(No Category)* Updated recovery screen
- *(No Category)* Added music samples
- *(No Category)* Update workspaces
- *(No Category)* Added AC'97 audio driver
- *(No Category)* Update Kernel submodule
- *(No Category)* Dummy audio
- *(No Category)* Renamed serial3.log to memtrk.dmp
- *(No Category)* Update submodules
- *(No Category)* Update configs
- *(No Category)* Debugging with 1GB of ram
- *(No Category)* Update submodules
- *(No Category)* Update .gitlab-ci.yml file
- *(No Category)* Tzdata needs interactive configuration
- *(No Category)* Testing kernel compiling
- *(No Category)* Add __clone_all_no_qemu
- *(No Category)* Use __clone_all_no_qemu to clone repos
- *(No Category)* Add stub ExtMemDbg program
- *(No Category)* Update Kernel submodule
- *(No Category)* Change BOOTLOADER options
- *(No Category)* Update ExtMemTrk code
- *(No Category)* Remove NEWLIB
- *(No Category)* Add driver config
- *(No Category)* Update submodules
- *(No Category)* Add bootanim frames
- *(No Category)* Add bootanim.tar.gz
- *(No Category)* Update Kernel submodule
- *(No Category)* Update grub config
- *(No Category)* Support i386
- *(No Category)* Remove pcm files
- *(No Category)* Update grub config
- *(No Category)* Update Kernel submodule
- *(No Category)* Add options to disable compilation for kernel, userspace or drivers
- *(No Category)* Fix 32 bit job
- *(No Category)* Add space between the equal
- *(No Category)* Remove useless bootanim frames
- *(No Category)* Update submodules
- *(No Category)* Update submodules
- *(No Category)* Update github workflow
- *(No Category)* Do not compile ExtMemDbg
- *(No Category)* Update Kernel submodule
- *(No Category)* Update configs
- *(No Category)* Update submodules
- *(No Category)* Update github workflow
- *(No Category)* Update limine.cfg
- *(No Category)* Update kernel cmdline
- *(No Category)* Update submodules
- *(No Category)* Update filesystem structure
- *(No Category)* Update submodules
- *(No Category)* Update Userspace submodule
- *(No Category)* Fix duplicate recipe in Makefile
- *(No Category)* Update paths
- *(No Category)* Update OS
- *(No Category)* Update submodules
- *(No Category)* Fix github workflow
- *(No Category)* Add meson, gcc-10 & g++-10
- *(No Category)* Update OS
- *(No Category)* Update Kernel submodule
- *(No Category)* Update Kernel submodule
- *(No Category)* Update config
- *(No Category)* Removed memtrk
- *(No Category)* Add parallel.log
- *(No Category)* Update kernel
- *(No Category)* Update Modules
- *(No Category)* Update Userspace
- *(No Category)* Update submodules
- *(No Category)* Add robots.txt
- *(No Category)* Update initrd
- *(No Category)* Add shebang
- *(No Category)* Update Makefile
- *(No Category)* Update submodules
- *(No Category)* Update files
- *(No Category)* Update tool dependencies in Makefile
- *(No Category)* Update Makefile to disable NLS for cross-compilation
- *(No Category)* Enable default PIE for cross-compilation
- *(No Category)* Add *.qcow2 to .gitignore
- *(No Category)* Update qemu-disk.img to qemu-disk.qcow2 in Makefile
- *(No Category)* Add .gitkeep file to initrd/var/panic directory
- *(No Category)* Remove --ioc=true from kernel command line
- *(No Category)* Update submodules
- *(No Category)* Update submodules
- *(No Category)* Add SSDT1.dat
- *(No Category)* Merge remote-tracking branch 'Fennix/master'
- *(No Category)* Delete .gitmodules
- *(No Category)* Initial commit
- *(No Category)* Update README.md
- *(No Category)* Updated files
- *(No Category)* Update files
- *(No Category)* Update files
- *(No Category)* Download font
- *(No Category)* Added "-fpermissive" as temporal workaround
- *(No Category)* Update .gitignore
- *(No Category)* Implemented a kinda broken tty
- *(No Category)* CMOS clock
- *(No Category)* Replaced memcpy, memset & memmove with one in musl lib
- *(No Category)* Fixed display (still slower than I wanted to be)
- *(No Category)* Implemented CPU::Vendor, CPU::Name & CPU::Hypervisor but not tested enough
- *(No Category)* Added elf symbols resolver
- *(No Category)* Implemented GDT & IDT
- *(No Category)* Removed test code
- *(No Category)* Stub files for other architectures
- *(No Category)* I686 now compiles (but not booting)
- *(No Category)* Aarch64 now compiles
- *(No Category)* Update files
- *(No Category)* Update files
- *(No Category)* Added PCI support
- *(No Category)* Implemented shutdown & reboot
- *(No Category)* Trace PCI devices on kernel framebuffer
- *(No Category)* Added more PCI descriptors
- *(No Category)* Color support
- *(No Category)* Added Kprint in kernel.h
- *(No Category)* Update LICENSE
- *(No Category)* Added APIC & SMP stub
- *(No Category)* Compile fix
- *(No Category)* Trampoline can't be compiled.
- *(No Category)* Forgot _kernel_start
- *(No Category)* Compile fix
- *(No Category)* Fixed .asm file not being able to be linked
- *(No Category)* Fixed cpu info
- *(No Category)* Added CPU vendors and signatures and read/write CR*
- *(No Category)* Enable CPU features like SSE
- *(No Category)* Added SMP support
- *(No Category)* Added syscalls stub
- *(No Category)* Fixing SMP stub for x32 and arm64
- *(No Category)* Fixed "unknown pseudo-op: `.loop'"
- *(No Category)* Update HPETHeader
- *(No Category)* Kernel boots with multiboot2
- *(No Category)* Updated kernel entry names
- *(No Category)* Added "Loading..." text at boot
- *(No Category)* Multiboot2Initializator stub
- *(No Category)* Update binfo.h
- *(No Category)* Workaround for VirtualBox
- *(No Category)* Fixed SMP core detection
- *(No Category)* Moved Initialization code
- *(No Category)* Update comment
- *(No Category)* Do not include system include
- *(No Category)* Implemented interrupts handler & stub crash screen
- *(No Category)* Fix for display uart printing colors
- *(No Category)* Removed unused code
- *(No Category)* Forgot "if (WriteToUART)"
- *(No Category)* Added no_stack_protector attribute to functions
- *(No Category)* Small fixes for crash handler
- *(No Category)* Do not print to UART directly
- *(No Category)* Fixed interrupt handler manager
- *(No Category)* Fixes for x32
- *(No Category)* Implemented PIC (untested code)
- *(No Category)* APIC implementation (not working as expected)
- *(No Category)* Fixed compiling for x32 & arm64
- *(No Category)* Create flawfinder.yml
- *(No Category)* Comparison of narrow type with wide type in loop condition
- *(No Category)* Update doxygen
- *(No Category)* Update Doxygen
- *(No Category)* Optimize CPU functions
- *(No Category)* APIC interrupts working
- *(No Category)* Do not log the debugger output
- *(No Category)* APIC should be fixed
- *(No Category)* Change printing colors
- *(No Category)* 32bit boot using multiboot2
- *(No Category)* 32bit booting working
- *(No Category)* X32 still not working (TODO: do 1:1 page mapping, except for kernel)
- *(No Category)* Update files
- *(No Category)* Moved arm64Entry
- *(No Category)* Replaced string to convert
- *(No Category)* Added cargs lib
- *(No Category)* Added better kernel arguments reading
- *(No Category)* Enable SSE compiling
- *(No Category)* Fix SMP
- *(No Category)* More work on system calls
- *(No Category)* Update files
- *(No Category)* Changed SMP code
- *(No Category)* Changed SMP code and CPU sets a new stack
- *(No Category)* Better printing on SMP status
- *(No Category)* Moved syscalls file
- *(No Category)* Stub tasking files
- *(No Category)* More tasking stub
- *(No Category)* Implemented SmartCriticalSection
- *(No Category)* Added CurrentProcess & CurrentThread to the CPU data
- *(No Category)* More tasking stubs
- *(No Category)* Fixed compilation issues
- *(No Category)* Fixed compilation issues on x32
- *(No Category)* Fixed compilation issues on aarch64
- *(No Category)* More tasking implementation
- *(No Category)* Fixed "_ZnwmSt11align_val_t" compiler error
- *(No Category)* Updated tasking
- *(No Category)* Update Task.cpp
- *(No Category)* KernelShutdownThread stub
- *(No Category)* Update files
- *(No Category)* No_stack_protector attribute to assembly functions
- *(No Category)* Added memory barriers
- *(No Category)* Added LVTTimer union structure
- *(No Category)* Added APIC_BASE structure
- *(No Category)* Moved IOAPICVersion
- *(No Category)* Fixed timer calibration
- *(No Category)* Improved APIC (more human readable)
- *(No Category)* Added InterruptCommandRegisterHigh for future use
- *(No Category)* Added IOAPIC redirect structure
- *(No Category)* Update APIC according to Intel manual (2.4.3 Interrupt Command Register)
- *(No Category)* Renamed enum
- *(No Category)* Split IOAPICRedirectEntry
- *(No Category)* Fix for APIC
- *(No Category)* Fixed tasking
- *(No Category)* Divide ticks in OneShot
- *(No Category)* Commented debug code
- *(No Category)* Added SetBufferCursor
- *(No Category)* Multitasking test code
- *(No Category)* Added GetBufferCursor
- *(No Category)* Fixed printing in test code
- *(No Category)* Fixed DSDT
- *(No Category)* Renamed enums
- *(No Category)* IPC stub
- *(No Category)* Updated Testing code
- *(No Category)* Update files
- *(No Category)* Get current process if the Parent is null
- *(No Category)* Added atmoic helper header
- *(No Category)* Changed how lock works (now it's assembly spinlock)
- *(No Category)* Removed unused header
- *(No Category)* Lock "FunctionName" should not be initialized
- *(No Category)* Added random number generator
- *(No Category)* Removed "\n"
- *(No Category)* Half-implemented process security
- *(No Category)* Added IPC for processes
- *(No Category)* Improved CPU functions
- *(No Category)* Fixed compiler warnings
- *(No Category)* Update files
- *(No Category)* Revert and ignore the compiler warning
- *(No Category)* Fixes for Tasking
- *(No Category)* Added writecr3 to scheduler
- *(No Category)* Updated cpu related stuff
- *(No Category)* Updated cpuid structures
- *(No Category)* Fixed cpuid structs
- *(No Category)* Added cpuid 0x40000000 struct
- *(No Category)* Updated CPU.cpp
- *(No Category)* Fxsave/fxrstor stub
- *(No Category)* Divide one-shot by 128
- *(No Category)* Added smart pointer header
- *(No Category)* Added cwalk library
- *(No Category)* Suppress vscode llvm warnings
- *(No Category)* Strcmp() doesn't get it right
- *(No Category)* Do not divide the APIC if we are debugging
- *(No Category)* Clear new allocated memory
- *(No Category)* Added filesystem
- *(No Category)* Updated directory name
- *(No Category)* Comparison of narrow type with wide type in loop condition
- *(No Category)* Fixed compilation failing on i386
- *(No Category)* Fixed compilation failing on aarch64
- *(No Category)* Move stack tracing to it's own function
- *(No Category)* Show a number when printing a potential deadlock
- *(No Category)* Added Counter() function to CPU
- *(No Category)* Improved tasking
- *(No Category)* Set the timer to OneShot mode
- *(No Category)* Added Fex header
- *(No Category)* Added driver API header
- *(No Category)* Implemented driver support (bad but works)
- *(No Category)* Updated driver API
- *(No Category)* Added support for multiple vendors on one driver
- *(No Category)* Updated Driver API
- *(No Category)* Disk drivers are now loading
- *(No Category)* Updated DiskCallback
- *(No Category)* Added Check() function
- *(No Category)* Check if the page is present when we trace frames
- *(No Category)* Driver directory can be modified by config
- *(No Category)* Removed debug messages in Check()
- *(No Category)* Added fetch and better disk callback
- *(No Category)* Added IOCB function
- *(No Category)* Implemented partition detection
- *(No Category)* Implemented data() to vector
- *(No Category)* Fixed compiler warnings
- *(No Category)* Todo
- *(No Category)* Added --init arg
- *(No Category)* Userspace process creation stub
- *(No Category)* Update DAPI
- *(No Category)* Added dumper library
- *(No Category)* Added stub code for kernel API
- *(No Category)* Added lock to dumper lib
- *(No Category)* Update files
- *(No Category)* Pointer should have void* as argument
- *(No Category)* Updated memory initializator
- *(No Category)* Fixed some issues on crash handler when an user process crashes
- *(No Category)* Fixed issue when sometimes initializing drivers can crash the system
- *(No Category)* Added "no_stack_protector" to functions inside cpu.hpp
- *(No Category)* Added CriticalSection
- *(No Category)* Updated memory initializator
- *(No Category)* Updated tasking functions
- *(No Category)* Added usermode process creation (currently broken)
- *(No Category)* Todo
- *(No Category)* Perform CPU sleep when using Sleep() function
- *(No Category)* If a wrong color is specified, set the color value to 0xFFFFFF
- *(No Category)* Optimize
- *(No Category)* Updated memory mapping functions
- *(No Category)* Updated Kernel.cpp
- *(No Category)* Updated GDT code
- *(No Category)* Updated GDT code
- *(No Category)* Update API
- *(No Category)* Support multiple interrupt hooks
- *(No Category)* Interrupt driver stub
- *(No Category)* Delete hook if the driver fails
- *(No Category)* Fixed compiler warnings
- *(No Category)* Simple crc32 implementation
- *(No Category)* Added MD5 checksum (https://github.com/Zunawe/md5-c)
- *(No Category)* Show MD5 and Length
- *(No Category)* Fixed compiler warning
- *(No Category)* Forgot new line
- *(No Category)* Updated driver loader
- *(No Category)* KernelMainThread should have the lowest priority
- *(No Category)* Fixed memory leak
- *(No Category)* Added implementation of critical thread/process
- *(No Category)* Implemented fxsr
- *(No Category)* Updated GDT & IDT
- *(No Category)* Removed limine.h and use one inside tools/limine
- *(No Category)* SetKernelStack should have no_stack_protector attribute
- *(No Category)* Added Schedule()
- *(No Category)* Rewrite tss
- *(No Category)* Loaded image should have RW flag
- *(No Category)* Optimization
- *(No Category)* Disable SMEP and SMAP for now
- *(No Category)* Fixed usermode apps crashing
- *(No Category)* Fixed compiler warnings
- *(No Category)* Update KThread.cpp
- *(No Category)* Fix for crash handler
- *(No Category)* Updated lock
- *(No Category)* Do not trace icr registers
- *(No Category)* Fix multicore tasking deadlock
- *(No Category)* Cld
- *(No Category)* Update file loading
- *(No Category)* Kernel now boots on BIOS systems
- *(No Category)* If empty, set default
- *(No Category)* Syscalls didn't worked because I'm dumb...
- *(No Category)* Stability fixes (i hope); attempt to implement argc, argv, envp, auxv; Syscalls
- *(No Category)* Kernel no longer crashes when trying to read symbols
- *(No Category)* Forgot initializator
- *(No Category)* Runtime stuff
- *(No Category)* Better address check
- *(No Category)* Added GetBuffer()
- *(No Category)* Improved crash screen
- *(No Category)* Few improvements for crash screen
- *(No Category)* Debugging is now easier
- *(No Category)* Moved vscode workspace file
- *(No Category)* Kernel & User time stub
- *(No Category)* Kernel now compiles on x32
- *(No Category)* Forgot to remove -w flag
- *(No Category)* Forgot vs settings too (_<。)
- *(No Category)* Typo
- *(No Category)* Better lock
- *(No Category)* Code fixes and stability
- *(No Category)* TODO
- *(No Category)* Syscalls working as expected
- *(No Category)* Do not stop the scheduler at the beginning of the crash handler
- *(No Category)* Get cpu data too
- *(No Category)* Show cpu data info on details screen
- *(No Category)* Moved backspace() & append()
- *(No Category)* Trying to fix user stack
- *(No Category)* Better(?) stack guard
- *(No Category)* Added ubsan
- *(No Category)* Updated cxxabi
- *(No Category)* Updated ubsan
- *(No Category)* More work on cxxabi
- *(No Category)* Stop tasking when stack guard fails
- *(No Category)* Check if CPU 0 is active too
- *(No Category)* noreturn function does return
- *(No Category)* IPC implementation
- *(No Category)* Not useful
- *(No Category)* Update files
- *(No Category)* Oh my god how stupid I can be sometimes
- *(No Category)* Get SMBIOS from bootloader
- *(No Category)* SMBIOS support
- *(No Category)* Oops!
- *(No Category)* Removed debugging code
- *(No Category)* Updated lock
- *(No Category)* Hope now scheduler won't crash at IPC Service
- *(No Category)* Stack guard implementation
- *(No Category)* Forgot to resume the stopped process
- *(No Category)* Changed a lot of files. Summary: profiler support; "SafeFunction"; UnlockDeadLock kernel config; Code optimization & more
- *(No Category)* Removed unused extern variable declaration
- *(No Category)* Rust support
- *(No Category)* Isalpha, isupper & strtol implementation
- *(No Category)* Enable Global Pages
- *(No Category)* Added tlb & bitmap commands
- *(No Category)* Memory related code optimization
- *(No Category)* Oops, SetFlag() should not clear the entire data
- *(No Category)* Apply code from memory-test branch
- *(No Category)* Small fixes
- *(No Category)* How did I made this stupid mistake?
- *(No Category)* GetAddress() should be bit shifted
- *(No Category)* Print more info
- *(No Category)* Map address 0x0 to an empty page
- *(No Category)* Add flags to all page directories (as Intel 317080-003 doc says)
- *(No Category)* KPT global variable
- *(No Category)* Typo
- *(No Category)* Revert "Typo"
This reverts commit 7c079633f64f2698771d1b5908303273b92bac60.
- *(No Category)* Added crX command in crash handler
- *(No Category)* Typo
- *(No Category)* Create codeql.yml
- *(No Category)* Create codacy.yml
- *(No Category)* Delete codeql.yml
- *(No Category)* Merge branch 'main' of https://github.com/Fennix-Project/Kernel
- *(No Category)* Fixed wrong stack pointer & new tss command for crash screen
- *(No Category)* Updated argv and envp in tasking
- *(No Category)* Added dump command
- *(No Category)* Implemented strtoul, isdelim and strtok
- *(No Category)* Fixed bug
- *(No Category)* Implemented strtoul, isdelim and strtok
- *(No Category)* Fixed vmm mapped framebuffer to the wrong address
- *(No Category)* TODO
- *(No Category)* Improved symbol table + every process have one allocated
- *(No Category)* Fixed arguments for thread
- *(No Category)* Mapping IO Base and Memory Base (TODO: Map all memory base length)
- *(No Category)* Fixed Spawn()
- *(No Category)* Added "-Wstack-protector" flag
- *(No Category)* Do not read the header if it's not "PT_LOAD"
- *(No Category)* QoL
- *(No Category)* Implemented memory tracker
- *(No Category)* Updated syscalls
- *(No Category)* Replaced "schedbg" to "trace"
- *(No Category)* Updated process debug info trace
- *(No Category)* Memset was clearing process data from memory
- *(No Category)* Fixed ELF loading (global variables are not initialized)
- *(No Category)* Fixed syscalls
- *(No Category)* Check if the page is mapped
- *(No Category)* Removed debug flags for init process
- *(No Category)* KernelCTL stub syscall
- *(No Category)* RIP history implementation for broken stacks
- *(No Category)* Dynamic ELF stub
- *(No Category)* Updated StackGuard
- *(No Category)* Thread arguments are now available from it's stack
- *(No Category)* Updated Driver API
- *(No Category)* Stop all drivers on shutdown / crash
- *(No Category)* Typo
- *(No Category)* Updated driver shutdown
- *(No Category)* Updated Fex header
- *(No Category)* Updated driver loading code
- *(No Category)* Fixed broken driver unloading on shutdown/crash
- *(No Category)* Added "UnloadDriver" function
- *(No Category)* Memory Tracker: If PageTable is nullptr, read the current one
- *(No Category)* Updated Driver API
- *(No Category)* Improved driver loading/unloading
- *(No Category)* :OnInterruptReceived should have SafeFunction macro
- *(No Category)* Clang-diagnostic-unknown-attributes
- *(No Category)* Added BREAK macro
- *(No Category)* Added "mem" command
- *(No Category)* Naming convention
- *(No Category)* Updated UBSAN
- *(No Category)* Fixed RIP tracing
- *(No Category)* Updated bitmap command
- *(No Category)* Updated the random number generator
- *(No Category)* Test the random number generator
- *(No Category)* Updated stack guard
- *(No Category)* Print type sizes
- *(No Category)* Updated types
- *(No Category)* Compiles on x86 but everything is broken
- *(No Category)* First unlock and then enable interrupts
- *(No Category)* Updated TaskStateSegment structure
- *(No Category)* Fixed compiler warnings
- *(No Category)* Do not print debug and ubsan if DEBUG is not enabled
- *(No Category)* Fix "KPT = KernelPageTable;" in wrong place
- *(No Category)* Wrong strcmp usage
- *(No Category)* Removed -g flag
- *(No Category)* Renamed PCI devices
- *(No Category)* TODO
- *(No Category)* VirtualBox now works with SMP enabled
- *(No Category)* Forgot "\"
- *(No Category)* TODO
- *(No Category)* Security fix
- *(No Category)* Progress on loading shared objects
- *(No Category)* More work on ELF interpreter implementation
- *(No Category)* Added stub syscalls
- *(No Category)* Forgot to remove test code
- *(No Category)* Renamed "Tracker" to "MemMgr" because it could be used for shared memory and more useful features
- *(No Category)* Updated driver API for network talking
- *(No Category)* Updated note
- *(No Category)* Crash on check fail
- *(No Category)* Wrong value for HPET
- *(No Category)* Updated DriverAPI functions
- *(No Category)* Implemented sleep for threads🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉
- *(No Category)* 🎉Implemented networking🎉
- *(No Category)* APIC timer should tick every 1ms
- *(No Category)* Improved checks for WakeUpThreads
- *(No Category)* TODO
- *(No Category)* Updated memory manager
- *(No Category)* Added DrawString in Display
- *(No Category)* Very simple GUI stub
- *(No Category)* Get current thread
- *(No Category)* Recovery stub
- *(No Category)* Fixed tasking SSE
- *(No Category)* Moved std stuff to std.h
- *(No Category)* Added sqrtf
- *(No Category)* Cxxabi stuff
- *(No Category)* Scheduler optimizations
- *(No Category)* Replaced "%x" with "%lx"
- *(No Category)* Check for pointers
- *(No Category)* Call BeforeShutdown before shutting down
- *(No Category)* Improved shutting down procedure
- *(No Category)* Fixed compiler warnings
- *(No Category)* Added GetBitsPerPixel & GetPitch
- *(No Category)* This just slows down
- *(No Category)* Oops
- *(No Category)* Float stuff
- *(No Category)* Rewrote GUI implementation
- *(No Category)* Fixed resize
- *(No Category)* Set a minimum for resizing a window
- *(No Category)* Updated notes
- *(No Category)* More optimization for GUI
- *(No Category)* Updated Makefile
- *(No Category)* Check SIMD implementation
- *(No Category)* Kernel now uses SSE instructions properly
- *(No Category)* Renamed memcpy.c file
- *(No Category)* Moved SIMD mem* functions to separate files
- *(No Category)* Updated kernel fonts
- *(No Category)* Fixed memset sse
- *(No Category)* Support even older CPUs
- *(No Category)* Removed soft-float flag
- *(No Category)* More checks for SSE
- *(No Category)* Implement a faster mem*
- *(No Category)* Implemented simple GUI
- *(No Category)* Drivers were not removed
- *(No Category)* Fixed tasking when a thread is sleeping
- *(No Category)* TODO
- *(No Category)* Rewrote "u8ToHexString" & "u32ToHexString"
- *(No Category)* Renamed print functions
- *(No Category)* Updated PCI debug log
- *(No Category)* Updated driver loading
- *(No Category)* Implemented "ConvertFromUnix" (not sure if it's right but I guess it works?)
- *(No Category)* Updated network related code so now it should work as expected
- *(No Category)* Forgot commenting DEBUG_NETWORK
- *(No Category)* Shut up UBSAN
- *(No Category)* Added "DoNotCreatePageTable" boolean to CreateProcess
- *(No Category)* More stable GetPathFromNode
- *(No Category)* Reduced frame tracing count
- *(No Category)* T1
- *(No Category)* Added string class
- *(No Category)* Updated vscode recommendations
- *(No Category)* Naming convention
- *(No Category)* Added timeout lock
- *(No Category)* Added "AddSymbol"
- *(No Category)* Updated crash screen
- *(No Category)* Updated kernel (tl;dr: improved filesystem, tasking, loading files, etc..)
- *(No Category)* Create a thread instead of a new process
- *(No Category)* Security fix for allocating pages for user-mode
- *(No Category)* IPC stub
- *(No Category)* Added GetProcessByID and GetThreadByID
- *(No Category)* Updated atomic implementation
- *(No Category)* Updated lock to use atomic operations
- *(No Category)* Renamed "snprintf_" to "snprintf"
- *(No Category)* Schedule() should fire faster
- *(No Category)* Updated on screen debug task manager
- *(No Category)* Moved SyscallsLock
- *(No Category)* Display functions are now in a file
- *(No Category)* Updated IPC
- *(No Category)* Added stub interpreter support
- *(No Category)* Debug task manager process
- *(No Category)* Added -> operator
- *(No Category)* Debug messages for memory allocation
- *(No Category)* Fix memory deadlocks
- *(No Category)* Fixed kernel hang on IPC wait
- *(No Category)* Renamed enum, oops
- *(No Category)* Added GetSchedulerTicks()
- *(No Category)* Debug what destructors are called
- *(No Category)* Added SetText()
- *(No Category)* Optimize GetCurrentCPU
- *(No Category)* Optimize smp GetCurrentCPU()
- *(No Category)* Mem* check operations now tell where it failed
- *(No Category)* Changed scheduler priorities
- *(No Category)* Stop if HPET is not found
- *(No Category)* Wrong API doc
- *(No Category)* Added "uartmemdmp" command
- *(No Category)* Optimize Scroll() function
- *(No Category)* Fixed screen printing bug
- *(No Category)* Compiler warning
- *(No Category)* Added __sync marco
- *(No Category)* RemoveAll should not have any stack protection or sanitization
- *(No Category)* Ubsan
- *(No Category)* Show more debug messages
- *(No Category)* Atomic default value 0
- *(No Category)* Update Vector code
- *(No Category)* Debug messages for memory allocation
- *(No Category)* CurrentThread/Process should be atomic
- *(No Category)* Added ForceUnlock boolean
- *(No Category)* Use correct instruction
- *(No Category)* Replaced "__sync_synchronize" with "__sync"
- *(No Category)* Added int1 and int3 marco
- *(No Category)* Fixed race condition
- *(No Category)* Spinlocked uart
- *(No Category)* Signal all cores to stop on exception
- *(No Category)* Removed messages
- *(No Category)* Added KCTL_IS_CRITICAL
- *(No Category)* Added StackPointer* for lock
- *(No Category)* Fixed race conditions
- *(No Category)* Removed useless text
- *(No Category)* Fixed keyboard interrupt
- *(No Category)* Put CPU namespaces in separate files to make cpu.hpp smaller
- *(No Category)* Fixed excessive padding
- *(No Category)* Added GetLocksCount()
- *(No Category)* Show error code
- *(No Category)* Reimplemented Xalloc from scratch
- *(No Category)* Fixed deadlock
- *(No Category)* Simple CPU affinity system
- *(No Category)* FIXME
- *(No Category)* Redirect IRQs to BSP
- *(No Category)* Fixed ConvertFromUnix()
- *(No Category)* Fixed compiler warning
- *(No Category)* Set baud rate to 115200
- *(No Category)* Create a null element and return it
- *(No Category)* Use vector instead of hashmap
- *(No Category)* Added last task ticks counter
- *(No Category)* Init task firstly needs to be critical
- *(No Category)* Wrong calculation for last task ticks
- *(No Category)* Renamed "__no_instrument_function"
- *(No Category)* Optimize
- *(No Category)* Renamed "interrupts.hpp" to "ints.hpp"
- *(No Category)* Updated driver API
- *(No Category)* Print on screen if HPET is missing
- *(No Category)* Use bigger random numbers for stack guard
- *(No Category)* Updated FexExtended structure
- *(No Category)* Support multiple registered interrupt handlers
- *(No Category)* Updated driver loading code
- *(No Category)* Updated fetching mouse procedure
- *(No Category)* FIXME
- *(No Category)* Updated vscode config
- *(No Category)* Async power commands
- *(No Category)* Added memory block checks
- *(No Category)* Debug messages
- *(No Category)* Arch macro
- *(No Category)* Added vscode configurations
- *(No Category)* X32 is now compiling
- *(No Category)* Cpptools intellisense didn't worked as expected
- *(No Category)* #ifndef __SIG_ATOMIC_TYPE__
- *(No Category)* FIXME
- *(No Category)* Use "int3" for debug interrupt
- *(No Category)* Moved smart lock
- *(No Category)* Fix x64 cpptools
- *(No Category)* Zero tss stack tables
- *(No Category)* Added new kernel param
- *(No Category)* Added "SetTitle"
- *(No Category)* Added debug window
- *(No Category)* Added "ReplaceFont"
- *(No Category)* Optimized GUI
- *(No Category)* Added more debug info
- *(No Category)* Fixing null pointer access
- *(No Category)* Fixed PCI BAR mapping
- *(No Category)* Return directly the driver error code
- *(No Category)* Changed "struct KernelCallback" to be an union
- *(No Category)* Updated FexDriverInputTypes
- *(No Category)* Updated driver API
- *(No Category)* Improved log
- *(No Category)* Added Xalloc_StopOnFail
- *(No Category)* Fix FROM_PAGES macro calculation
- *(No Category)* Updated driver API code
- *(No Category)* Fix wrong driver conflict detection
- *(No Category)* Audio debug
- *(No Category)* FIXME
- *(No Category)* Changed API doc
- *(No Category)* Added volume changing
- *(No Category)* Fixed wrong position for label
- *(No Category)* Forgot to clear KCallback after configuration
- *(No Category)* Added memory tracker to serial port
- *(No Category)* Small optimization
- *(No Category)* Added SIMD option in kernel arguments
- *(No Category)* Renamed vars
- *(No Category)* Added DebuggerIsAttached
- *(No Category)* UART io functions should be inline
- *(No Category)* Do not disable interrupts
- *(No Category)* Update debugging code
- *(No Category)* Fix for SIMD not being initialized
- *(No Category)* Prevent dangling pointer
- *(No Category)* Stub code
- *(No Category)* Moved interrupts manager file
- *(No Category)* Add tracker to paging allocation
- *(No Category)* Update external memory tracker messages
- *(No Category)* Implement Display::SetBrightness
- *(No Category)* Add Display::SetBrightness test button inside debug window
- *(No Category)* Update credits & references
- *(No Category)* Add __no_debug, __target and __min_vector_width
- *(No Category)* Stub intrinsics header
- *(No Category)* Add documentation for CreateBuffer
- *(No Category)* X32 kernel failed to build
- *(No Category)* X32 kernel failed to build
- *(No Category)* Move bootloader code to a separate directory
- *(No Category)* Revert "Fix: x32 kernel failed to build"
This reverts commit 930b11a4003d5fb5411099c1e20e1f12a7ce0506.
- *(No Category)* Add spinlock to BeforeShutdown()
- *(No Category)* Update external memory tracker logging
- *(No Category)* Add warn message when trying to free an already freed page
- *(No Category)* For Virtual() use KernelPageTable as page table
- *(No Category)* Replace SmartCriticalSection with SmartLock
- *(No Category)* Add Sleep syscall
- *(No Category)* Wrong arguments for warn message
- *(No Category)* Disable interrupts on Reboot / Shutdown buttons
- *(No Category)* Display how many bytes are allocated
- *(No Category)* Add InterpreterIPCData
- *(No Category)* Fix wrong MemoryImage address given to the elf interpreter
- *(No Category)* Send ElfFile too
- *(No Category)* Specify the invalid address
- *(No Category)* Add more tables to ACPI SearchTables()
- *(No Category)* Cwk_path_get_extension's length should not point to nullptr
- *(No Category)* Allocate argv and envp
- *(No Category)* Update ubsan blacklist
- *(No Category)* Add log2
- *(No Category)* Not a good idea to spam NIST with NTP requests
- *(No Category)* Rename iterator class
- *(No Category)* Add vector and string to std class
- *(No Category)* Rename smart pointers
- *(No Category)* Add smart pointers to std
- *(No Category)* Rename std functions to match the standard
- *(No Category)* Rename arm include directory
- *(No Category)* Update Driver API header
- *(No Category)* Update Fex header
- *(No Category)* Change Interrupts::Handler
- *(No Category)* Update shared_ptr function names
- *(No Category)* Update driver loading procedure
- *(No Category)* Remove broken code
- *(No Category)* Add GetKernelStack
- *(No Category)* Show address in error message
- *(No Category)* SwapPage should be after loop
- *(No Category)* Detect earlier if TCG processor is present
- *(No Category)* Better deadlock message
- *(No Category)* Map kernel file too
- *(No Category)* Use physical address for Kernel.FileBase
- *(No Category)* Improve exception message
- *(No Category)* QoL improvements
- *(No Category)* Add stb headers
- *(No Category)* Add stub headers
- *(No Category)* Fix isdelim
- *(No Category)* Rename "vfs" to "vfs_ctx" inside USTAR class
- *(No Category)* Add backtrace log inside deadlocks
- *(No Category)* Document ID inside RFLAGS
- *(No Category)* Check if CreateThread() has a valid parent
- *(No Category)* Directly return the fs root if the path is "/"
- *(No Category)* Rename heap allocation function
- *(No Category)* Add an argument parser
- *(No Category)* Add BootAnimation
- *(No Category)* More debug messages
- *(No Category)* Boot screen & change shutting down/rebooting procedure
- *(No Category)* Fix logic in conditional statement inside sys_print
- *(No Category)* Add SetDoNotScroll
- *(No Category)* Ignore frame-address warning
- *(No Category)* Refactor driver file creation to use structured binding
- *(No Category)* Comment PRINT_BACKTRACE
- *(No Category)* Test TO_PAGES and FROM_PAGES macros
- *(No Category)* Do not loop if the next hook is null
- *(No Category)* Process cleanup should be done by a thread
- *(No Category)* Change display buffer
- *(No Category)* CheckSIMD should use flags
- *(No Category)* Update TODO
- *(No Category)* QoL improvements
- *(No Category)* Unhook interrupts from every driver on crash
- *(No Category)* Fix kernel mapping
- *(No Category)* Move PEXIT and TEXIT to task.hpp
- *(No Category)* Rename thread
- *(No Category)* Check if Display is valid
- *(No Category)* Add test for memory operations
- *(No Category)* Support i386
- *(No Category)* Change audio test file
- *(No Category)* Add FramebufferType
- *(No Category)* Add stub headers
- *(No Category)* Implement strcasecmp, wcslen and wcsrtombs
- *(No Category)* Add Virtual::GetPhysical()
- *(No Category)* Crash screen: Frames tab should get physical address of rbp on usermode threads
- *(No Category)* Interpreter thread should exit after sending IPC data
- *(No Category)* Implementation for userspace interpreter
- *(No Category)* Add BSD license to the API headers
- *(No Category)* Change LICENSE file to GPL-3.0
- *(No Category)* Added license headers to all project files
- *(No Category)* Wrong block comment for nasm files
- *(No Category)* Move syscall handler to SystemCalls.cpp
- *(No Category)* Remove codacy workflow
- *(No Category)* Do not compile mem operations on non-debug env
- *(No Category)* Render only 26 frames from bootanim
- *(No Category)* Enable compilation of project on AArch64 architecture
- *(No Category)* Update TODOs
- *(No Category)* Make aarch64 compilable
- *(No Category)* Make rsp to be at physical address
- *(No Category)* Update AMD's cpuid unions based on #40332 (Vol. 3 Appendix E.3)
- *(No Category)* Move hypervisor cpuid structs to a separate file
- *(No Category)* Fix compilation issues
- *(No Category)* Add 2MB and 1GB PAGE_SIZE macro
- *(No Category)* Add Get() function for every cpuid struct
- *(No Category)* Fix ubsan blacklist
- *(No Category)* Add support for 2MB and 1GB map
- *(No Category)* Optimize memory mapping
- *(No Category)* Replace __attribute__ with a macro from types.h
- *(No Category)* Fix compilation issues on i386 and aarch64
- *(No Category)* QoL and bug fixes
- *(No Category)* Implement std::atomic and remove the old implementation Atomic and rename vector.hpp to vector
- *(No Category)* Sleep between frames to have a constant frame rate
- *(No Category)* Test assert macro
- *(No Category)* Move all std related headers to "include_std"
- *(No Category)* Refactored code to use {} initialization instead of dynamic allocation with 'new' in disk manager class
- *(No Category)* Use an enum to specify what ist to use
- *(No Category)* Fix kernel crash after an interrupt occurs on the BSP
- *(No Category)* Kernel processes should have IsCritical flag enabled by default
- *(No Category)* Rename kernel files
- *(No Category)* Default scheduler should be multi
- *(No Category)* Optimize memory usage
- *(No Category)* Organize driver binding files
- *(No Category)* Optimize RNG functions
- *(No Category)* Reserve all pages and then unreserve available pages
- *(No Category)* Better debug info
- *(No Category)* Fix bug causing vector removal to skip elements
- *(No Category)* Update todo
- *(No Category)* Update syscall doc functions
- *(No Category)* Fix elf loading
- *(No Category)* Rework virtual filesystem implementation
- *(No Category)* Implement file syscalls
- *(No Category)* Update init envp
- *(No Category)* Update kernelctl syscall
- *(No Category)* Update timing implementation
- *(No Category)* Reserve more pages for SMP trampoline
- *(No Category)* Add TSC timer stub
- *(No Category)* Fix compiler warnings
- *(No Category)* Change "GetMillisecondsSinceClassCreation" to "GetNanosecondsSinceClassCreation"
- *(No Category)* Display seconds since boot in kernel messages
- *(No Category)* Fix a bug where GetCurrentProcess returned null inside DSDT
- *(No Category)* QoL improvements
- *(No Category)* Fix i386 and aarch64 compilation issues
- *(No Category)* Add UserTime and KernelTime tracker
- *(No Category)* Bug fixes
- *(No Category)* Wrong SMBIOSProcessorInformation structure
- *(No Category)* Update TODO
- *(No Category)* Remove multiboot2 boot code
- *(No Category)* Add Elf32_Phdr
- *(No Category)* Fix flawfinder workflow
- *(No Category)* Fork() stub and QoL improvements
- *(No Category)* Make sure InterpreterPath has \0 character by default
- *(No Category)* Do not accept invalid kernel private object
- *(No Category)* Fix InitDSDT called while APIC wasn't initialized
- *(No Category)* Save/Restore shadow GS too while scheduling tasks
- *(No Category)* Make syscall handler stub easier to debug
- *(No Category)* Check if the thread pointer is valid before accessing it's data
- *(No Category)* Add syscalls test
- *(No Category)* Fix compiler warning on syscall functions
- *(No Category)* Rewrite syscall stub and SyscallsFrame structure
- *(No Category)* More progress on fork() support
- *(No Category)* Print backtrace on deadlocks
- *(No Category)* Track which core was used to schedule
- *(No Category)* Implement file seek
- *(No Category)* Update errno macros
- *(No Category)* Fix compiler warnings
- *(No Category)* Add process cwd
- *(No Category)* Add PathIsRelative()
- *(No Category)* Check if path is relative
- *(No Category)* Rewrite the linker script
- *(No Category)* Add stub multiboot headers
- *(No Category)* Add checks for invalid addresses
- *(No Category)* Create a new stack for kernel and update BootInfo structure before anything else
- *(No Category)* Remove unnecessary code
- *(No Category)* Fix kernel section are not aligned
- *(No Category)* Update linker for i386
- *(No Category)* Update multiboot stubs
- *(No Category)* Implement mb2 stub support
- *(No Category)* Stub support mb2 for i386
- *(No Category)* Request 1280x720x32 framebuffer
- *(No Category)* Add ROUND_UP and ROUND_DOWN
- *(No Category)* Add support for multiboot2
- *(No Category)* Reduce stack usage for memory operations test
- *(No Category)* Do not request a specific resolution
- *(No Category)* Update Intel's CPUID structs
- *(No Category)* Make kernel to boot in x32
- *(No Category)* Create an empty root if initrd failed to be loaded
- *(No Category)* Fix aarch64
- *(No Category)* Do not spam "No mouse driver found." in logs
- *(No Category)* Fix wrong module size
- *(No Category)* Check for ACPI pointer in x64 too
- *(No Category)* Fix condition
- *(No Category)* Fix broken GPT structure
- *(No Category)* Fix partition naming
- *(No Category)* Remove EFER from x32
- *(No Category)* Fix type sizes
- *(No Category)* Fix compiling issues for aarch64
- *(No Category)* Add implementation for GDT & IDT on x32 and QoL fixes
- *(No Category)* Ignore UBSAN messages in liballoc_1_1.c
- *(No Category)* Remove limine_terminal_request
- *(No Category)* Move drivers to kernel
- *(No Category)* Show partition type
- *(No Category)* Fix GUI windows
- *(No Category)* Rename file
- *(No Category)* Update filesystem structure
- *(No Category)* Update vscode config
- *(No Category)* Fix fork() syscall
- *(No Category)* Return if /modules doesn't exist
- *(No Category)* Add alloc functions to stdlib header
- *(No Category)* Update ustar functions
- *(No Category)* Update issues list
- *(No Category)* Add cmath header
- *(No Category)* Do not make modules mandatory
- *(No Category)* Kernel shell stub
- *(No Category)* Update kernel
- *(No Category)* Update debug macros
- *(No Category)* Fix sleep syscall
- *(No Category)* Update crash keyboard driver
- *(No Category)* Update kernel
- *(No Category)* Fix compilation on Release mode
- *(No Category)* Removal of NASM support and migration of .asm files to .s
- *(No Category)* Update kernel code
- *(No Category)* Fix 32-bit compilation
- *(No Category)* Fix broken 32-bit kernel
- *(No Category)* Show available LPT and COM ports
- *(No Category)* Rework IDT
- *(No Category)* Ignore unused parameters warning
- *(No Category)* Move ACPI and DSDT files to Core directory
- *(No Category)* Fix compiler issues in 32-bit
- *(No Category)* Update GDT & IDT structures
- *(No Category)* Fix wrong char in sc_ascii_high
- *(No Category)* Test code for tasking
- *(No Category)* Rework for APIC & added support for x2APIC
- *(No Category)* Fully copy function names
- *(No Category)* Hide repetitive debug messages
- *(No Category)* Half working elf loader
- *(No Category)* Fix x32 compilation
- *(No Category)* Various QoL changes
- *(No Category)* Initialize CPU feature first before doing anything
- *(No Category)* Show info about the framebuffer on screen
- *(No Category)* Simplify Display::Print
- *(No Category)* Add support for legacy Multiboot aka Multiboot1
- *(No Category)* Search for SMBIOS & RSDP if the bootloader doesn't provide them
- *(No Category)* Do not enable cr4.FSGSBASE
- *(No Category)* First parse the params
- *(No Category)* Tasking is now working under 32-bit
- *(No Category)* Restructured and rewritten entire codebase
- *(No Category)* Fix elf binaries were loaded wrongly
- *(No Category)* Update std headers
- *(No Category)* Update std headers
- *(No Category)* Fix unqualified call to 'std::move'
- *(No Category)* GetCurrentCPU reporting wrong ID
- *(No Category)* ISR 0x1 should have RING3
- *(No Category)* Use /bin/utest instead of init for debugging
- *(No Category)* Fix IsVirtualizedEnvironment()
- *(No Category)* Add missing license note
- *(No Category)* Update kernel
- *(No Category)* Refactor ELFObject class and remove unused functions
- *(No Category)* Add CheckRegion function
- *(No Category)* Fix issue with reading ELF header
- *(No Category)* Update crash handler to include exception address and symbol in trace output
- *(No Category)* Refactor GetAllocatedPagesList and GetSharedRegions to return references
- *(No Category)* Refactor VirtualMemoryArea::Fork to use auto&
- *(No Category)* Implement file mapping functionality in linux_mmap()
- *(No Category)* Update CPU::TrapFrame in crash handler functions
- *(No Category)* Add additional general purpose registers to TrapFrame struct
- *(No Category)* Use gradient for top bar
- *(No Category)* Fix CPU functions for aarch64
- *(No Category)* Remove __naked attribute from Stop() function
- *(No Category)* Refactor code to improve performance and readability
- *(No Category)* Rename "SafeFunction" macro to "NoSecurityAnalysis"
- *(No Category)* Refactor display.hpp
- *(No Category)* Declare all Tamsyn font files to display.cpp
- *(No Category)* Add resize(size_t, const T &) function to vector class
- *(No Category)* Add fill() function to std::algorithm
- *(No Category)* Remove on-screen task manager code
- *(No Category)* Update display buffer handling
- *(No Category)* Move font declarations to display.hpp
- *(No Category)* Add CrashFont initialization
- *(No Category)* Add ExceptionFrame structure
- *(No Category)* Fix ExceptionHandlerStub to work with CPU::ExceptionFrame
- *(No Category)* Refactor ExceptionHandler
- *(No Category)* Add PrintString()
- *(No Category)* Fix uninitialized variables
- *(No Category)* Fix comment space
- *(No Category)* Add IgnoreSpecialChars parameter to Print and PrintString functions
- *(No Category)* Fix InterruptFrames for aarch64
- *(No Category)* Add compiler check for __fennix__
- *(No Category)* Add GetDefaultFont() method to Display class
- *(No Category)* Refactor Timer::OnInterruptReceived method signature
- *(No Category)* Remove unnecessary calls to CPUID.Get()
- *(No Category)* Add minimum resolution check for display
- *(No Category)* Refactor ls command
- *(No Category)* Update CreateIfNotExists function signature
- *(No Category)* Update color codes for different node types in ls command
- *(No Category)* Refactor kernel shell code
- *(No Category)* Invoke #DE in cmd_panic()
- *(No Category)* Change the IDT table to use interrupt gate
- *(No Category)* Fix cpuid 0x7 for AMD
- *(No Category)* Fix memory allocation exploit (driver mapped with user flag)
- *(No Category)* Update CR register flags documentation
- *(No Category)* Update CPU prevention features
- *(No Category)* Do not map the framebuffer with user flag
- *(No Category)* Remove ELFSymbolTable from PCB
- *(No Category)* Revamped kernel panic functions with significant improvements
- *(No Category)* Fix DisplayProcessScreen function to show ready threads, add note for hidden processes
- *(No Category)* Add "screen" command to panic UI
- *(No Category)* Refactor lsacpi command to print ACPI table information
- *(No Category)* Update ACPI print format
- *(No Category)* Remove unnecessary newline character in cmd_lsacpi function
- *(No Category)* Update lsacpi command to print table length
- *(No Category)* Add dump command in kernel shell
- *(No Category)* Add experimental insert() function to string class
- *(No Category)* Add GetPixel and DrawRectangle functions to Display class
- *(No Category)* Add std::thread implementation
- *(No Category)* Add cursor blinking functionality
- *(No Category)* Fix KEY_SLASH character
- *(No Category)* Implement blinking cursor and text modification functionality
- *(No Category)* Add support for DEL key
- *(No Category)* Refactor task scheduler
- *(No Category)* Implement GetIdle function in Custom scheduler
- *(No Category)* Revise PID and TID generation to align with standards
- *(No Category)* Fix call instruction in signal_trampoline.s
- *(No Category)* Replace debug statement with KPrint
- *(No Category)* Add check for empty drivers list and print message if no drivers to load
- *(No Category)* Check USTAR archive validation in KernelVFS()
- *(No Category)* Update error colors
- *(No Category)* Add AC flag initialization to thread context
- *(No Category)* Add <utility> header to include_std/list
- *(No Category)* Add ExGetKSymbolByAddress function to retrieve kernel symbols by address
- *(No Category)* Add InitTrampoline and HasPendingSignal function
- *(No Category)* Handle signal interruptions during sleep
- *(No Category)* Workaround for QEMU TCG crash
- *(No Category)* Fix memory access issues in linux_execve function
- *(No Category)* Fix incorrect condition in HandleException function
- *(No Category)* Refactor stack pointer alignment in thread.cpp
- *(No Category)* Refactor stack handling in thread.cpp
- *(No Category)* Add getgid, geteuid, getegid & stub access for Linux syscalls
- *(No Category)* Fix stack align
- *(No Category)* Update print statement
- *(No Category)* Update Linux fork and execve functions
- *(No Category)* Update DisplayProcessScreen function to include executable name
- *(No Category)* Add pow and fabs to cmath
- *(No Category)* Add Flags field to gsTCB struct
- *(No Category)* Update TODO.md
- *(No Category)* Add more page fault details
- *(No Category)* Update DisplayDetailsScreen to include CopyOnWrite flag in page table entry
- *(No Category)* Refactor node creation logic
- *(No Category)* Refactor file creation logic
- *(No Category)* Refactor gsTCB struct for debugging and update usage in related files
- *(No Category)* Remove unused code and debug information
- *(No Category)* Update CR8 structure
- *(No Category)* Refactor code to use tab spaces
- *(No Category)* Add clamp function to <algorithm>
- *(No Category)* Refactor BaseBufferStackError function
- *(No Category)* Refactor interrupt handling code
- *(No Category)* Rename TPL to TPR in used.cpp
- *(No Category)* Refactor MainInterruptHandler
- *(No Category)* Update page table in __stack_chk_fail and __chk_fail functions
- *(No Category)* Fix typo in help command
- *(No Category)* Check Display class in InitFont()
- *(No Category)* Add char_traits stub class to <string>
- *(No Category)* Rename string class to basic_string
- *(No Category)* Add std::bitset implementation
- *(No Category)* Add bitset test code
- *(No Category)* Refactor Check and CheckRegion functions in virtual.hpp
- *(No Category)* Refactor memory allocation implementation and add KernelReserve flag to memory mappings
- *(No Category)* Update TODO.md
- *(No Category)* Update logging
- *(No Category)* Update debug messages
- *(No Category)* Remove unnecessary command line arguments in SpawnInit function
- *(No Category)* Add debug statements for read and write operations
- *(No Category)* Implement clock_nanosleep syscall
- *(No Category)* Add check for file existence in linux_access function
- *(No Category)* Implement pread64 and pwrite64 syscalls
- *(No Category)* Add stubs for setting RLIMIT_NOFILE and RLIMIT_STACK
- *(No Category)* Implement linux_openat syscall
- *(No Category)* Fix execve and cleanup code
- *(No Category)* Implement linux_getcwd syscall
- *(No Category)* Update linux_getcwd and implement linux_setpgid syscall
- *(No Category)* Add stub implementation for getpgid syscall
- *(No Category)* Refactor Signal handling code
- *(No Category)* Fix file open error handling
- *(No Category)* Add stub TIOCGPGRP and TIOCSPGRP
- *(No Category)* Add stub for setting RLIMIT_NPROC
- *(No Category)* Add more debug messages for Signal
- *(No Category)* Fix before panic framebuffer
- *(No Category)* Clear CR2 if the page fault is handled
- *(No Category)* Refactor stack expansion and stack fork implementation
- *(No Category)* Add std::initializer_list implementation
- *(No Category)* Add initializer_list constructor to unordered_map
- *(No Category)* Add return values to remove and remove_if functions
- *(No Category)* Update algorithm functions template parameter names
- *(No Category)* Add GetThread() function to PCB class
- *(No Category)* Implement linux_tkill syscall
- *(No Category)* Add stub for F_GETFL
- *(No Category)* Fix linux_stat
- *(No Category)* Add RLIMIT_FSIZE stub
- *(No Category)* Rework signal handling code
- *(No Category)* Update Xalloc configuration
- *(No Category)* Add ptr_t class to types.h
- *(No Category)* Implement VirtualAllocation class
- *(No Category)* Fix release compilation
- *(No Category)* Fix page table update bug in scheduler
- *(No Category)* Fix key event handling
- *(No Category)* Add linux_getrusage and linux_setitimer syscall implementation
- *(No Category)* Update error message
- *(No Category)* Fix file mode in statbuf structure
- *(No Category)* Add stub for F_GETFL and F_SETFL
- *(No Category)* Allow kernel shell to execute binaries
- *(No Category)* Fix signals from exception handler
- *(No Category)* Fix RawKeyQueue empty check
- *(No Category)* Fix memory leak in linux_openat function
- *(No Category)* Fix linux_newfstatat function to correctly handle absolute paths
- *(No Category)* Fix linux_newfstatat
"If pathname is absolute, then dirfd is ignored."
- *(No Category)* Fix data type definitions
- *(No Category)* Update fdt stat to include file timestamps
- *(No Category)* Fix stat in linux
- *(No Category)* Implement process file mode creation mask
- *(No Category)* Add linux_umask syscall implementation
- *(No Category)* Fix file creation and append functionality
- *(No Category)* Add stub F_DUPFD_CLOEXEC and add more cases in linux_fcntl
- *(No Category)* Refactor debug print statements in user.cpp
- *(No Category)* Refactor Node constructor
- *(No Category)* Fix linux_stat, linux_fstat & linux_lstat
- *(No Category)* Comment debug statements in ustar.cpp and node.cpp
- *(No Category)* Fix handling of symbolic links in cd and ls commands
- *(No Category)* Check for /bin directory existence and use /usr/bin as fallback
- *(No Category)* Refactor USTAR class and comments in FAT header
- *(No Category)* Remove redundant file operation functions
- *(No Category)* Rename files with reference and descriptor code
- *(No Category)* Rename struct "stat" to "kstat"
- *(No Category)* Fix warning "ignoring changed section attributes for .text"
- *(No Category)* Refactor panic handler and assertion failed display functions
- *(No Category)* Implement process resource limits
- *(No Category)* Add null check in isempty function
- *(No Category)* Refactor lock related code
- *(No Category)* Update STL headers
- *(No Category)* Refactor RNG code
- *(No Category)* Fix RDSEEDFlag assignment
- *(No Category)* Implement operator delete with alignment support
- *(No Category)* Refactor filesystem & stl code
- *(No Category)* Fix missing member initialization
- *(No Category)* Return proper errno for null inode operations
- *(No Category)* Update ELF header
- *(No Category)* Remove unnecessary variable assignment
- *(No Category)* Add strrchr implementation
- *(No Category)* Reset cursor position after print
- *(No Category)* Fix broken iterator for unordered_map
- *(No Category)* Fix driver implementation
- *(No Category)* Fix memory corruption in USTAR::SymLink
- *(No Category)* Refactored linux_getpid for easier debugging
- *(No Category)* Add more debug messages
- *(No Category)* Remove unused SmartHeap class
- *(No Category)* Fix iterator type mismatch in basic_string::erase functions
- *(No Category)* Reformat comments in interrupts.hpp
- *(No Category)* Update kernel api
- *(No Category)* Update debug messages for getcwd linux syscall
- *(No Category)* Add debug message for GetBinaryType
- *(No Category)* Implement Virtual Terminal and fix /dev/kcon
- *(No Category)* Fix the order of variables Cols and Rows
typo
- *(No Category)* Fix missing offset for /dev files
- *(No Category)* Fix readdir inside /dev
- *(No Category)* Add chdir() syscall implementation
- *(No Category)* Update chdir() implementation
Use SetWorkingDirectory()
- *(No Category)* Return if Length == 0 in DumpData
- *(No Category)* Fix broken process limits implementation
- *(No Category)* Add stub vfork() function
- *(No Category)* Dump read() & write() content in debug output
- *(No Category)* Implement GetName() & GetPath() in FileNode class
- *(No Category)* Fix returning wrong errno code on errors
- *(No Category)* Fix wrong file type in RegisterBlockDevice()
- *(No Category)* Add "KernelData" variable inside Inode structure
- *(No Category)* Add TIOCGSID macro
- *(No Category)* Fix GetRoot(), CacheRecursiveSearch() and root identifier
- *(No Category)* Fix kcon & tty implementation; Add stub ptmx
- *(No Category)* Check if process has an associated terminal
- *(No Category)* Update error messages
- *(No Category)* Implement fchdir() syscall
- *(No Category)* Fix std::string push_back()
- *(No Category)* Fix potential Use-After-Free vulnerability in std::string
- *(No Category)* Add more debug messages
- *(No Category)* Remove pragma "STDC FENV_ACCESS"
- *(No Category)* Fix newfstatat() syscall
- *(No Category)* Fix ustar ReadDir() wrong d_type
- *(No Category)* Correct struct linux_dirent64 variables
- *(No Category)* Add more debug messages for newfstatat syscall
- *(No Category)* Implement getdents64() syscall
- *(No Category)* Implement sched_setaffinity() and sched_getaffinity() syscalls
- *(No Category)* Simplified interrupt event check logic in MainInterruptHandler
- *(No Category)* Fix incorrect buffer read size in VirtualTerminal
- *(No Category)* Add documentation to RingBuffer class
- *(No Category)* Fix code style in linux_execve() function
- *(No Category)* Implement new process state
- *(No Category)* Disable stack protector for __LinuxForkReturn()
- *(No Category)* Implement vfork() syscall
- *(No Category)* Fix search for binaries in /usr/bin/
- *(No Category)* Check for absolute path
- *(No Category)* Remove redundant SwapPT in linux_getrandom()
- *(No Category)* Refactor PS/2 keyboard initialization code
- *(No Category)* Refactor SwapPT class
- *(No Category)* Remove redundant code
- *(No Category)* Add kernel stack manager
- *(No Category)* Update MainInterruptHandler
- *(No Category)* Add stub code for UHCI, EHCI & XHCI controllers
- *(No Category)* Update headers
- *(No Category)* Implement coroutines
- *(No Category)* Check if CurrentProcess & CurrentThread are valid before showing info
- *(No Category)* Fix page table switch for scheduler
- *(No Category)* Kernel threads require more memory for stack
- *(No Category)* Switch page table in MainInterruptHandler()
- *(No Category)* Fix memory mapping in KernelPageTable
- *(No Category)* Remove annoying and useless messages in Unmap()
- *(No Category)* Fix debug messages for syscalls
- *(No Category)* Add more debug messages for CoW related functions
- *(No Category)* Add stub madvise() syscall
- *(No Category)* Check for null pointer first
- *(No Category)* Do not free tty
- *(No Category)* Correctly align memory using .p_align
- *(No Category)* Move everything to ./subsystem/linux/*
- *(No Category)* Merge remote-tracking branch 'Kernel/master'
- *(No Category)* Initial commit
- *(No Category)* Update files
- *(No Category)* Update LICENSE
- *(No Category)* Update doxygen
- *(No Category)* Update Doxygen
- *(No Category)* Added drivers
- *(No Category)* Added virtio network stub driver
- *(No Category)* Added AHCI driver stub
- *(No Category)* Updated driver header
- *(No Category)* Added AHCI driver
- *(No Category)* Updated AHCI driver
- *(No Category)* Updated drivers
- *(No Category)* Update driver
- *(No Category)* Added ATA driver stub
- *(No Category)* Forgot ATA driver
- *(No Category)* Return NOT_AVAILABLE instead of false
- *(No Category)* Few improvements on AHCI driver
- *(No Category)* Moved vscode workspace file
- *(No Category)* Added VMware mouse driver
- *(No Category)* Updated code
- *(No Category)* Update drivers
- *(No Category)* Added network fetch cb
- *(No Category)* Updated Makefile
- *(No Category)* Renamed file
- *(No Category)* VirtualBox mouse stub driver
- *(No Category)* Forgot to clear the Interrupt Mask
- *(No Category)* Hopefully the E1000 stops
- *(No Category)* Updated intel network driver
- *(No Category)* Removed "-fno-rtti" flag
- *(No Category)* VMware Mouse driver is causing a stack corruption
- *(No Category)* Update mouse drivers
- *(No Category)* Added PS/2 mouse driver
- *(No Category)* Renamed "Disk" to "Storage"
- *(No Category)* Updated PCI header
- *(No Category)* Typo
- *(No Category)* Typo
- *(No Category)* Added vscode config
- *(No Category)* Implemented AC'97 audio driver
- *(No Category)* Fixed volume
- *(No Category)* Interrupts are not working as expected
- *(No Category)* Wrong size
- *(No Category)* Remove "--quiet" flag
- *(No Category)* Fix compiler warnings
- *(No Category)* Update drivers after the new DAPI
- *(No Category)* Remove AC'97 test code
- *(No Category)* Support i386
- *(No Category)* Check if ATA is present
- *(No Category)* Do not load AHCI driver if the debugger is attached
- *(No Category)* Update filesystem structure
- *(No Category)* Update paths
- *(No Category)* Update vscode config
- *(No Category)* Update modules
- *(No Category)* Update example module
- *(No Category)* Update drivers
- *(No Category)* Add ATA_CMD_IDENTIFY and SATA SDD detection
- *(No Category)* Check checksum signature before reading the data
- *(No Category)* Remove unused swap() lambda
- *(No Category)* Add GetCurrentProcess function and update KillThread signature
- *(No Category)* Fix driver implementation
- *(No Category)* Update kernel API
- *(No Category)* Add stub RS-232 implementation
- *(No Category)* Update headers
- *(No Category)* Merge remote-tracking branch 'Drivers/master'
- *(No Category)* Initial commit
- *(No Category)* Update README.md
- *(No Category)* Updated files
- *(No Category)* Update files
- *(No Category)* Updated Makefile
- *(No Category)* Update LICENSE
- *(No Category)* Update doxygen
- *(No Category)* Update Doxygen
- *(No Category)* Update files
- *(No Category)* Update files
- *(No Category)* Update libc
- *(No Category)* Update init
- *(No Category)* Syscall stub
- *(No Category)* Update libc
- *(No Category)* Update crti & crtn
- *(No Category)* Moved vscode workspace file
- *(No Category)* Updated crts
- *(No Category)* Builtin-declaration-mismatch
- *(No Category)* Added libssp
- *(No Category)* Added stack guard
- *(No Category)* Updated libc
- *(No Category)* Removed "_init" from crt
- *(No Category)* Update include directory
- *(No Category)* Toolchain
- *(No Category)* Added stub newlib and mlibc
- *(No Category)* "hlt" causes GPF
- *(No Category)* Push envc & envp
- *(No Category)* Fix envp
- *(No Category)* Fixed crash
- *(No Category)* Typo
- *(No Category)* Updated libs
- *(No Category)* Updated libc
- *(No Category)* Updated init
- *(No Category)* Fixed header conflict
- *(No Category)* Libsys stub
- *(No Category)* Updated libs
- *(No Category)* Updated init app
- *(No Category)* Updated userspace
- *(No Category)* ELF Interpreter stub
- *(No Category)* Updated Makefile
- *(No Category)* Stub
- *(No Category)* Wrong casting
- *(No Category)* Update init
- *(No Category)* Sleep before checking again if the thread is critical
- *(No Category)* Add doomgeneric
- *(No Category)* Remove "--quiet" flag
- *(No Category)* Update vscode-cpptools config
- *(No Category)* Update doomgeneric submodule
- *(No Category)* Remove "--quiet" flag
- *(No Category)* Do not compile doomgeneric yet
- *(No Category)* Add missing libc headers
- *(No Category)* Add InterpreterIPCData
- *(No Category)* Almost working elf interpreter
- *(No Category)* Make sure the code won't continue after exit syscall
- *(No Category)* Include only mlibc
- *(No Category)* Typo
- *(No Category)* Support i386
- *(No Category)* Update KCtl enum
- *(No Category)* Update ELF interpreter
- *(No Category)* Update mlibc submodule
- *(No Category)* Fix elf interpreter and clean up the code
- *(No Category)* Do not build with SIMD support
- *(No Category)* Disable SIMD in printf functions
- *(No Category)* Fix functions visibility
- *(No Category)* Reset the color to #CCCCCC
- *(No Category)* Update license year
- *(No Category)* Fix stub lib
- *(No Category)* Fix elf interpreter (less broken)
- *(No Category)* Fix elf interpreter
- *(No Category)* Fix multiple bugs throughout the codebase
- *(No Category)* Fix wrong file syscall usage
- *(No Category)* Update sysbase.h
- *(No Category)* Compile doom
- *(No Category)* Update libc implementation
- *(No Category)* Update doomgeneric submodule
- *(No Category)* Fix compiler warning
- *(No Category)* Fix std file operations
- *(No Category)* Cleanup init
- *(No Category)* Create "bin" directory
- *(No Category)* Update echo program
- *(No Category)* Stub shell
- *(No Category)* Update libs header path
- *(No Category)* Update libc
- *(No Category)* Update init code
- *(No Category)* Workaround for errno
- *(No Category)* Cleanup code
- *(No Category)* If filename is invalid, fopen should return NULL
- *(No Category)* Exit on fork() failure
- *(No Category)* Update doomgeneric submodule
- *(No Category)* Add gdb for init.elf
- *(No Category)* Implement fseek
- *(No Category)* Update libc
- *(No Category)* Update doomgeneric submodule
- *(No Category)* Add doom.elf to vscode debug
- *(No Category)* Update libc
- *(No Category)* Update libc
- *(No Category)* Update filesystem structure
- *(No Category)* Update doomgeneric submodule
- *(No Category)* Update paths
- *(No Category)* Update vscode configs
- *(No Category)* Update userspace
- *(No Category)* Update mlibc
- *(No Category)* Update libc
- *(No Category)* Update echo
- *(No Category)* Update userspace
- *(No Category)* Update userspace for mlibc support
- *(No Category)* Update userspace
- *(No Category)* Enable debugging in musl
- *(No Category)* Update userspace
- *(No Category)* Update userspace
- *(No Category)* Fix build order in Makefile
- *(No Category)* Add test_unaligned function to userspace_test.c
- *(No Category)* Fix signal handling in utest
- *(No Category)* Update file and directory paths
- *(No Category)* Fix buffer overflow
- *(No Category)* Update userspace test
- *(No Category)* Add test_stdin function
- *(No Category)* Add test_stat function
- *(No Category)* Update userspace
- *(No Category)* Merge remote-tracking branch 'Userspace/master'
- *(No Category)* Initial commit
- *(No Category)* Update README.md
- *(No Category)* Updated files
- *(No Category)* Updated Makefile
- *(No Category)* Update LICENSE
- *(No Category)* Added vscode workspace file
- *(No Category)* Code stub
- *(No Category)* Working on memory mapping
- *(No Category)* Update doxygen
- *(No Category)* Update Doxygen
- *(No Category)* Moved vscode workspace file
- *(No Category)* Add vscode cpp properties
- *(No Category)* Test kernel bootstrap
- *(No Category)* Debug memory usage before jumping to kernel
- *(No Category)* Update loader
- *(No Category)* Revert changes
- *(No Category)* Update filesystem structure
- *(No Category)* Update kernel file name
- *(No Category)* Update Doxyfile with new file paths
- *(No Category)* Merge remote-tracking branch 'Lynx/master'
- *(No Category)* Update .gitmodules
- *(No Category)* Remove submodule
- *(No Category)* Update ELFObject()
- *(No Category)* Add COM5-8 checks
- *(No Category)* Update elf.h
- *(No Category)* Update interface headers
- *(No Category)* Update syscall header
- *(No Category)* Implement usr_pread/pwrite in FDT
- *(No Category)* Add experimental native system calls
- *(No Category)* Refactor code
- *(No Category)* Update include headers
- *(No Category)* Fix stack guard expansion
- *(No Category)* Implement sys_prctl syscall
- *(No Category)* Fix ExceptionHandlerStub setting fs & gs to 0
- *(No Category)* Update headers for syscalls.h changes
- *(No Category)* Implement sys_kill syscall
- *(No Category)* Add macros for syscalls
- *(No Category)* Fix doxygen documentation
- *(No Category)* Add conversion for syscall macros
- *(No Category)* Implement sys_tell & sys_seek
- *(No Category)* Keep #PF handling always enabled
- *(No Category)* Update syscalls.h
- *(No Category)* Add .note section
- *(No Category)* Add signal_action_flags_t structure
- *(No Category)* Remove .note section from discard list
- *(No Category)* Add syscall_clockid_t and fix enum names
- *(No Category)* Remove redundant static assertions for signal flags
- *(No Category)* Update syscalls.h
- *(No Category)* Update configuration files
- *(No Category)* Rewrite everything
- *(No Category)* Rewrite the website
- *(No Category)* Fix release compilation on amd64
- *(No Category)* Create sonarcloud.yml
- *(No Category)* Merge branch 'master' of https://github.com/EnderIce2/Fennix
- *(No Category)* Fix boot on i386
- *(No Category)* Update architecture support and improve toolchain configuration
- *(No Category)* Add ARM build support
- *(No Category)* Move obsolete CodeQL and documentation workflows to makefile.yml
- *(No Category)* Add aarch64 architecture support
- *(No Category)* Add arm architecture support
- *(No Category)* Use --no-install-recommends for apt installs in workflows
- *(No Category)* Update QEMU configuration for aarch64 to use raspi4b
- *(No Category)* Update debug configuration for aarch64
- *(No Category)* Update debug configurations
- *(No Category)* Update boot code and linker script for aarch64
- *(No Category)* Add support for GRUB in the build process
- *(No Category)* Refine .gitignore rules for tools directory
- *(No Category)* Add initial Bootloader implementation
- *(No Category)* Add Makefile templates for Bootloader firmware across architectures
- *(No Category)* Add Bootloader clean target to Makefile
- *(No Category)* Add MIDR_EL1 union for AArch64 CPU identification
- *(No Category)* Update CPU structures with __packed attribute for alignment
- *(No Category)* Move UART code in each arch subdir
- *(No Category)* Update linker script for AArch64
- *(No Category)* Refactor aarch64 boot code
- *(No Category)* Comment out gnu-efi compilation for now because it breaks workflows
- *(No Category)* Add SIMD test application
- *(No Category)* Simplify SIMD test application assembly code
- *(No Category)* Refactor FPU state structure for improved clarity and consistency
- *(No Category)* Include crt1.c to streamline startup code
- *(No Category)* Fix stack alignment
- *(No Category)* Flush stdout & stderr on exit
- *(No Category)* Update Makefiles
- *(No Category)* Add stub libc test program
- *(No Category)* Comment out build and linking commands in Makefile
- *(No Category)* Implement std more functions
- *(No Category)* Add return statement to main function
- *(No Category)* Implement close() & dirfd()
- *(No Category)* Include stdio.h in dirent.c
- *(No Category)* Add VSCode snippets and workspace configuration
- *(No Category)* Add native build target and default toolchain configuration
- *(No Category)* Add test functions for various libc components
- *(No Category)* Implement sigaction(), sigemptyset(), signal() & strcspn()
- *(No Category)* Add sh program
- *(No Category)* Dummy code
- *(No Category)* Implement strncpy function
- *(No Category)* Implement fprintf function
- *(No Category)* Implement vfprintf function
- *(No Category)* Add uname command
- *(No Category)* Add ioctl function
- *(No Category)* Update function signatures in fcntl.h
- *(No Category)* Implement <sys/fcntl>
- *(No Category)* Add stub gethostname function
- *(No Category)* Add stub uname function
- *(No Category)* Implement more tests in libc_test
- *(No Category)* Add web server test program
- *(No Category)* Add <arpa/inet.h>
- *(No Category)* Add <netinet/in.h> header for IPv4 and IPv6 support
- *(No Category)* Add <sys/uio.h> header for vector I/O operations
- *(No Category)* Implement alphasort, fdopendir, opendir, posix_getdents, readdir & scandir
- *(No Category)* Implement read, pread, write & pwrite
- *(No Category)* Add <sys/socket.h> for socket programming support
- *(No Category)* Implement strcoll()
- *(No Category)* Implement qsort, realloc and reallocarray functions in stdlib
- *(No Category)* Add Clean, Build & Run tasks for vscode
### <!-- 2 -->🚜 Refactor
- *(driver/api)* Fix formatting
- *(driver/api)* Delegate memory allocation and deallocation to DriverManager
- *(kernel)* Remove unused TaskingPanic() function
- *(kernel/pci)* Simplify PCI device initialization by delegating to PCIManager
- *(kernel/syscalls)* Simplify argument handling in HandleNativeSyscalls
- *(rootfs)* Change "initrd" to "rootfs"
- *(rootfs)* Reorganize file structure and remove unnecessary .gitkeep files
- *(tests)* Remove obsolete SIMD and web test files
- *(tools)* Update boot configurations
- *(userspace)* Move uname program to coreutils
- *(userspace)* Build using cmake
- *(userspace/apps/test)* :recycle: move all functions in one file
- *(userspace/apps/test/libc_test)* Remove deprecated string test files
- *(userspace/coreutils)* Improve uname command
- *(userspace/coreutils)* Change code style
- *(userspace/libc)* Replace syscall2 with call_kill in kill function
- *(userspace/libc)* Implement pthread_sigmask, sigaddset, sigfillset & sigprocmask
- *(userspace/libs)* Rename libdemo to libexample
- *(No Category)* Streamline source file discovery in Makefile and update OSARCH handling in config.mk
- *(No Category)* Fix build on i386
- *(No Category)* Fix softfloat on aarch64 and arm
- *(No Category)* Fix release building for aarch64 and arm
- *(No Category)* Sync headers
### <!-- 3 -->📚 Documentation
- *(kernel)* Short doc for __check_op macro
- *(kernel/api)* Add documentation for FBIOGET_SCREEN_INFO
- *(syscalls)* Add documentation for FBIOGET_SCREEN_INFO ioctl
- *(No Category)* Remove .dockerignore, Dockerfile, and compose.yaml
- *(No Category)* Update README.md
- *(No Category)* Update build instructions
- *(No Category)* Add note in echo.c PrintHelp()
- *(No Category)* Update contributing guidelines for commit messages and versioning
### <!-- 5 -->🎨 Styling
- *(kernel)* Format document
### <!-- 6 -->🧪 Testing
- *(userspace/apps/test)* Expand math function tests for accuracy
- *(No Category)* Test
### <!-- 7 -->⚙️ Miscellaneous Tasks
- *(devcontainer)* Rename dev container (libc_test)
- *(devcontainer)* Cleanup devcontainer.json file
- *(userspace/coreutils)* Update .gitignore
- *(userspace/libc)* Update vscode workspace config
- *(vscode)* Add conventional commit scopes for kernel
- *(vscode)* Add recommended extensions for improved development experience
- *(vscode)* Add more conventional commit scopes for userspace
- *(vscode)* Add userspace/apps/sys/init to conventional commit scopes
- *(vscode)* Add 'kernel' scope to conventional commits
- *(vscode)* Add Dev Container
- *(vscode)* Update launch configuration to include libc_test
- *(vscode)* Rename preLaunchTask from launch-qemu to QEMU
- *(No Category)* Update vscode boilerplates
- *(No Category)* Update vscode debug configurations
- *(No Category)* Fix build process
- *(No Category)* Add experimental docker build
- *(No Category)* Fix workflow error "this file was generated for autoconf 2.69"
- *(No Category)* (Again) Fix workflow error
- *(No Category)* Fix workflow error
- *(No Category)* TODO: Fix workflows
- *(No Category)* Remove sudo & change "apt-get" to "apt"
- *(No Category)* Revert last change
- *(No Category)* General cleanup
- *(No Category)* Update vscode workspace files
- *(No Category)* Update codebase
- *(No Category)* Update makefiles & macros
- *(No Category)* Update driver makefiles
- *(No Category)* Update makefiles
- *(No Category)* Update makefiles
- *(No Category)* Update vscode config
- *(No Category)* Update TODO.md
- *(No Category)* Add patch for qemu
- *(No Category)* Update workflows
- *(No Category)* Delete tailprofiler.sh and tailserial.sh scripts
- *(No Category)* Update makefiles and doxygen
- *(No Category)* Update markdown files
- *(No Category)* Update GCC dependencies in GitHub Actions workflow
- *(No Category)* Purge autoconf before installing GCC dependencies in workflow
- *(No Category)* Enhance GCC installation workflow with autoconf recheck and libtool addition
- *(No Category)* Fix typo in package installation command in makefile.yml
- *(No Category)* Update autoconf installation method in workflow to use Debian package
- *(No Category)* Update autoconf workflow to also purge and install automake
- *(No Category)* Update makefile.yml to install automake alongside autoconf
- *(No Category)* Remove autoconf purge step and adjust installation method for autoconf
- *(No Category)* Update autoconf installation command to use dpkg with force option
- *(No Category)* Add automake installation to makefile.yml workflow
- *(No Category)* Enhance makefile.yml to recheck and install specific versions of automake and autoconf
- *(No Category)* Update flawfinder scan minimum level from 4 to 5 in makefile.yml
- *(No Category)* Remove Flawfinder analysis steps from makefile.yml workflow
- *(No Category)* Remove CodeQL analysis steps from makefile.yml workflow
- *(No Category)* Allow aarch64 build job
- *(No Category)* Add CodeQL advanced analysis workflow
- *(No Category)* Todo
- *(No Category)* Migrate documentation deployment to a new workflow
- *(No Category)* Rename workflow from 'Build OS' to 'Deploy Documentation'
- *(No Category)* Upgrade actions/checkout, actions/cache, and actions/upload-artifact to v4
- *(No Category)* Add LICENSE file for rpmalloc
- *(No Category)* Remove SonarCloud workflow configuration
- *(No Category)* Add .editorconfig files for consistent coding styles
- *(No Category)* Add newline at end of c_boilerplates.code-snippets
- *(No Category)* Standardize indentation for CMake files
- *(No Category)* Experimental change to workflows to use dev container
- *(No Category)* Potential fix for Dev Container issues
- *(No Category)* Fix "touch: cannot touch '/run/user/1000/pulse/native': No such file or directory"
- *(No Category)* Fix ci
- *(No Category)* Fix limine in ci build
- *(No Category)* Add "push: never" to devcontainers/ci
- *(No Category)* Add git-cliff
- *(No Category)* Add CHANGELOG.md in artifacts
- *(No Category)* Separate github pages deploy workflow
<!-- generated by git-cliff -->