99e30a4d7d
Kernel: Replace i386 with i686
93975fdc45
Kernel: Process signal mask is now 2 32 bit values
fbef90f7cb
Kernel/LibC: Write cxx abi with proper locking
a9db4dd9a3
Kernel: NVMe Queue max simultaneous commands is dependent on arch
fc7e96fa66
Kernel: Rewrite i386 boot code + linker script
d1c8273826
Toolchain: Allow toolchain compilation for i386 targets
7d1b7436d4
LibC: Dummy ctr* files for i386
65750586b6
LibC: Use GCC builtins for math functions
62f6128ba1
Kernel: Cleanup NVMe Queue command submission
7f5c850744
Userspace: Add us keymap and make it default
090c3c9930
Kernel: NVMe queues now supports upto 64 simultaneous operations
48ea9e1c1d
Kernel: PS2Controller uses RecursiveSpinLock so timeouts don't panic
42469b83fe
Kernel: kernel panic is now sent to all processors
e65bc040af
Kernel: Now all active processors are used in scheduling
89ca4c8a8b
Kernel: Implement IPI broadcasting
2323a55517
Kernel: Debug lock is locked while dumping stack trace
45d6caa1d0
Kernel: APs now start their idle threads when scheduler is started
55d2a64f54
Kernel: Map interrupt handlers for all processors
23a2f8b903
Kernel: Cleanup multiprocessor startup by removing magic numbers
29fd682672
Kernel: Store current processor pointer in IA32_GS_BASE
efed67cbd0
BAN: Remove unnecessary default constructor from Array
6234a5bc0b
Kernel: Move multiprocessor initialize after framebuffer is created
54f64e7618
Kernel: Move current page table to Processor
8141b9977d
Kernel: Per processor information is now stored in class Processor
c035d3c82c
Kernel: Start all processors on kernel boot
1de9daa40f
Kernel: Move interrupt status stuff to Processor.h
efd8203232
BAN: Atomic memory order can be set per function call
a667d88f93
Kernel: Remove now obsolete CriticalScope
8d7dd577ab
Kernel: Replace last CriticalScopes in kernel with SpinLocks
054b41383f
Kernel: Implement SpinLock unsafe that does not keep track of locker
02ad199138
Kernel: Move interrupt status functions to kernel/Interrupts.h
65c4f9db5b
Kernel: Replace CriticalScopes with SpinLocks in Process/Thread
21f05eb118
Merge branch 'main' into locking
d94f6388b7
Kernel: Fix all broken locks from new mutexes
1971813336
BAN: Add HashMap::remove(iterator)
3c88d2aad3
BAN: Implement find() for HashMap
5c39903323
Kernel: Simplify writing to threads stacks
264eff3ad0
Kernel: Cleanup kmalloc VirtualRange creation
05c7b21b0a
Kernel: Print to debug log ICMP unreachable messages
40b626b0aa
Kernel: Rewrite all kernel mutexes
6ebfe05fce
BAN: Add parenthesis in ASSERT macros
59abb5d344
Kernel: Make HPET read_main_counter() atomic with 32 bit main counter
9594ee8e47
Kernel: Start making device numbers unique for each device
7a4ec7f7a3
Kernel: Use static_cast instead of c-style cast in HPET
51db1706e9
Kernel: Fix checking of partition boundaries on write
ac9e71d9c7
LibC: Fix parsing mode from string
1f467580ee
Userspace: Add test for popen
1ba883719a
LibC: Implement popen and pclose
f73e954b28
Kernel: Remove SpinLock from Pipe
de629291b9
LibC: Implement freopen, rewind and fix bugs in code
7eb5d220fd
Userspace: Implement getopt for testing libc getopt()
9314528b9b
Kernel: Improve syscall handling
78ef7e804f
BAN: Implement bit_cast
3fc1edede0
Kernel/LibC: Implement super basic select
f50b4be162
Kernel: Cleanup TCP code
ccde8148a7
Userspace: Implement basic udp test program
49889858fa
Kernel: Allow chmod on TmpSocketInode
2424f38a62
Userspace: Implement super simple DNS resolver in userspace
218456d127
BAN: Fix some includes
e7dd03e551
Kernel: Implement basic connection-mode unix domain sockets
0c8e9fe095
Kernel: Add operator bool() for WeakPtr
79897e77dc
dhcp-client: Remove packet send test :D
649e9f4500
Kernel: ARP now replies to requests
3a6d31d3fa
BAN: Add comparison for MAC
2138eeb87f
Userspace: Implement super simple DHCP client
102aa50a41
BuildSystem: Use E1000E network controller in qemu
5cfe249945
Kernel: Cleanup network code and implement basic ARP request
a0138955cd
Kernel: Implement barebones arp table
e1ffbb710b
Kernel/LibC: Implement basic ioctl for network addresses
9213dd13bc
dd: Improve output format
4273f43be1
BAN: Move placement new to its own file and fix includes
139bb5c2a5
Kernel: Fix linker script
95e861bcdd
Kernel: Optimize all SpinLocks. All locking operations are atomic
ca8e7b40bc
Kernel: Implement SpinLock without CriticalScope
cc79f55817
BAN: Add compare_exchange to atomic