Bananymous
  • Joined on 2023-09-10
Bananymous pushed to main at Bananymous/banan-os 2024-03-18 16:06:38 +02:00
9607b4205a Kernel: Fix kernel panic on signal
Bananymous pushed to main at Bananymous/banan-os 2024-03-18 15:58:00 +02:00
e447d5fccf All: remove obsolete gitignore files
Bananymous pushed to main at Bananymous/banan-os 2024-03-15 13:48:21 +02:00
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
Compare 3 commits »
Bananymous pushed to main at Bananymous/banan-os 2024-03-09 23:54:52 +02:00
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
Compare 9 commits »
Bananymous pushed to main at Bananymous/banan-os 2024-03-07 17:08:29 +02:00
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
Compare 12 commits »
Bananymous pushed to main at Bananymous/banan-os 2024-03-03 22:32:06 +02:00
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
Compare 4 commits »
Bananymous pushed to main at Bananymous/banan-os 2024-03-01 15:52:20 +02:00
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
Compare 11 commits »
Bananymous pushed to main at Bananymous/banan-os 2024-02-28 23:01:32 +02:00
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
Compare 11 commits »
Bananymous pushed to main at Bananymous/banan-os 2024-02-25 21:33:54 +02:00
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
Compare 4 commits »
Bananymous pushed to main at Bananymous/banan-os 2024-02-23 13:43:22 +02:00
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
Compare 15 commits »
Bananymous pushed to main at Bananymous/banan-os 2024-02-14 17:24:13 +02:00
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()
Compare 16 commits »
Bananymous pushed to main at Bananymous/banan-os 2024-02-12 22:12:08 +02:00
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
Compare 21 commits »
Bananymous pushed to main at Bananymous/banan-os 2024-02-08 03:16:26 +02:00
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
Compare 22 commits »
Bananymous pushed to main at Bananymous/banan-os 2024-02-03 19:49:08 +02:00
79897e77dc dhcp-client: Remove packet send test :D
649e9f4500 Kernel: ARP now replies to requests
3a6d31d3fa BAN: Add comparison for MAC
Compare 3 commits »
Bananymous pushed to main at Bananymous/banan-os 2024-02-03 02:41:38 +02:00
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
Compare 20 commits »
Bananymous pushed to main at Bananymous/banan-os 2024-02-01 00:07:27 +02:00
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
Compare 4 commits »
Bananymous pushed to main at Bananymous/banan-os 2024-01-30 01:21:23 +02:00
ca8e7b40bc Kernel: Implement SpinLock without CriticalScope
cc79f55817 BAN: Add compare_exchange to atomic
Compare 2 commits »
Bananymous pushed to main at Bananymous/banan-os 2024-01-30 01:08:07 +02:00
c2053ed3dd Kernel: Implement SpinLock without CriticalScope
f3408bb0df BAN: Add compare_exchange to atomic
a1faa836c5 Kernel: Hack NVMe controller to work :)
1f8aaa6fba Toolchain: Add `insmod all_video` to uefi grub
6bfe833aa5 Kernel: Parse RSDP from multiboot headers if exists
Compare 12 commits »
Bananymous pushed to main at Bananymous/banan-os 2024-01-24 11:54:37 +02:00
e544e6a62d LibC: Implement floating point parsing to *scanf functions
606a7cb313 LibC: Implement almost POSIX compliant *scanf functions
de4fdcd898 BAN: Implement is_base_of and integral_constant to Traits
2c471a89d0 LibC: Add compile option to libc to stop optimizing string.h
a5660b95b2 BAN: String don't memcpy with nullptr
Compare 5 commits »
Bananymous pushed to main at Bananymous/banan-os 2024-01-17 09:27:06 +02:00
54a92293da Kernel: Implement NVMe driver
812e9efd41 Kernel: StorageDevices now specify prefix for partition names
c6130f33d7 Kernel: Implement MSI, MSI-X and interrupt reservation
56a29dc176 Kernel: Fix PS/2 Controller if port 0 is empty
7e36a0be75 Bootloader: Add .data section
Compare 12 commits »