Bananymous
|
00662bad46
|
Kernel: Rewrite HPET code
Now the set timer frequency actually works... :D
|
2024-02-13 17:59:48 +02:00 |
Bananymous
|
2ab3eb4109
|
Kernel: Fix bugs in select
Unix domain socket is now select readable when it has pending
connection
|
2024-02-12 23:46:27 +02:00 |
Bananymous
|
9314528b9b
|
Kernel: Improve syscall handling
Syscalls are now called from a list of function pointers
|
2024-02-12 21:51:11 +02:00 |
Bananymous
|
3fc1edede0
|
Kernel/LibC: Implement super basic select
This does not really even block but it works... :D
|
2024-02-12 17:26:33 +02:00 |
Bananymous
|
f50b4be162
|
Kernel: Cleanup TCP code
|
2024-02-12 15:44:40 +02:00 |
Bananymous
|
435636a655
|
Kernel: Implement super simple TCP stack
No SACK support and windows are fixed size
|
2024-02-12 04:45:42 +02:00 |
Bananymous
|
ba06269b14
|
Kernel: Move on_close_impl from network socket to udp socket
|
2024-02-12 04:45:42 +02:00 |
Bananymous
|
be01ccdb08
|
Kernel: Fix E1000 mtu
|
2024-02-12 04:25:39 +02:00 |
Bananymous
|
b45d27593f
|
Kernel: Implement super simple PRNG
|
2024-02-12 04:25:06 +02:00 |
Bananymous
|
ff49d8b84f
|
Kernel: Cleanup OSI layer overlapping
|
2024-02-09 17:05:07 +02:00 |
Bananymous
|
5d78cd3016
|
Kernel: Add spin lock assert back. I had accidentally deleted it
|
2024-02-09 16:58:55 +02:00 |
Bananymous
|
ed0b1a86aa
|
Kernel: Semaphores and Threads can now be blocked with timeout
|
2024-02-09 15:28:15 +02:00 |
Bananymous
|
534b3e6a9a
|
Kernel: Add LockFreeGuard to LockGuard.h
|
2024-02-09 15:13:54 +02:00 |
Bananymous
|
d452cf4170
|
Kernel: Fix checksum for packets with odd number of bytes
|
2024-02-09 01:20:40 +02:00 |
Bananymous
|
acf79570ef
|
Kernel: Cleanup network APIs and error messages
|
2024-02-08 18:33:49 +02:00 |
Bananymous
|
9bc7a72a25
|
Kernel: Implement unix domain sockets with SOCK_DGRAM
Also unbind sockets on close
|
2024-02-08 13:18:54 +02:00 |
Bananymous
|
49889858fa
|
Kernel: Allow chmod on TmpSocketInode
|
2024-02-08 03:16:01 +02:00 |
Bananymous
|
e7dd03e551
|
Kernel: Implement basic connection-mode unix domain sockets
|
2024-02-08 02:28:19 +02:00 |
Bananymous
|
e26f360d93
|
Kernel: allow kmalloc of size 0
|
2024-02-07 22:36:24 +02:00 |
Bananymous
|
572c4052f6
|
Kernel: Fix Process APIs
|
2024-02-07 15:57:45 +02:00 |
Bananymous
|
132286895f
|
Kernel: Implement Socket inodes for tmpfs
|
2024-02-07 15:57:45 +02:00 |
Bananymous
|
41cad88d6e
|
Kernel/LibC: Implement dummy syscalls for accept, connect, listen
|
2024-02-07 15:57:45 +02:00 |
Bananymous
|
5da59c9151
|
Kernel: Make better abstractions for networking
|
2024-02-06 16:45:39 +02:00 |
Bananymous
|
f804e87f7d
|
Kernel: Implement basic gateway for network interfaces
|
2024-02-05 18:18:56 +02:00 |
Bananymous
|
dd3641f054
|
Kernel: Cleanup ARPTable code
Packet process is now killed if ARPTable dies.
ARP wait loop now just reschecules so timeout actually works.
|
2024-02-05 18:18:56 +02:00 |
Bananymous
|
b2291ce162
|
Kernel/BAN: Fix network strucute endianness
|
2024-02-05 18:18:56 +02:00 |
Bananymous
|
d15cbb2d6a
|
Kernel: Fix IPv4 header checksum calculation
|
2024-02-05 18:18:56 +02:00 |
Bananymous
|
692cec8458
|
Kernel/Userspace/LibC: Implement basic dprintln for userspace
|
2024-02-05 01:24:09 +02:00 |
Bananymous
|
649e9f4500
|
Kernel: ARP now replies to requests
|
2024-02-03 18:04:12 +02:00 |
Bananymous
|
5cfe249945
|
Kernel: Cleanup network code and implement basic ARP request
|
2024-02-03 02:39:26 +02:00 |
Bananymous
|
a0138955cd
|
Kernel: Implement barebones arp table
|
2024-02-03 01:50:10 +02:00 |
Bananymous
|
e1ffbb710b
|
Kernel/LibC: Implement basic ioctl for network addresses
|
2024-02-03 01:50:10 +02:00 |
Bananymous
|
0f154c3173
|
Kernel: Implement basic recvfrom
|
2024-02-02 13:50:00 +02:00 |
Bananymous
|
4b332b5d42
|
Kernel: Cleanup PCI code
|
2024-02-02 03:16:37 +02:00 |
Bananymous
|
ec2f21bb9f
|
Kernel/LibC: Implement SYS_SENDTO
|
2024-02-02 03:16:01 +02:00 |
Bananymous
|
ab150b458a
|
Kernel/LibC: Implement basic socket binding
|
2024-02-02 01:31:58 +02:00 |
Bananymous
|
cf28ecd5a6
|
Kernel/LibC: Add SYS_SOCKET
|
2024-02-01 23:39:09 +02:00 |
Bananymous
|
99eed9c37a
|
Kernel: Start work on network stack
|
2024-02-01 23:38:06 +02:00 |
Bananymous
|
f4e86028d0
|
Kernel: Write simple working E1000 and E1000E drivers
|
2024-02-01 22:08:59 +02:00 |
Bananymous
|
c69efc040c
|
Kernel: Scheduler now uses the new LinkedList API for moving threads
Scheduler doesn't have to depend on the fact that allocations should
work when same amount of memory is just deallocated
|
2024-02-01 15:22:28 +02:00 |
Bananymous
|
139bb5c2a5
|
Kernel: Fix linker script
I have no idea why rodata was executable :D
|
2024-01-30 17:32:50 +02:00 |
Bananymous
|
95e861bcdd
|
Kernel: Optimize all SpinLocks. All locking operations are atomic
|
2024-01-30 12:39:37 +02:00 |
Bananymous
|
ca8e7b40bc
|
Kernel: Implement SpinLock without CriticalScope
This actually is not even spinlock since it yields the current
thread. It will become one when I get to SMP though...
|
2024-01-30 01:21:15 +02:00 |
Bananymous
|
a1faa836c5
|
Kernel: Hack NVMe controller to work :)
|
2024-01-30 01:06:00 +02:00 |
Bananymous
|
6bfe833aa5
|
Kernel: Parse RSDP from multiboot headers if exists
|
2024-01-26 00:49:42 +02:00 |
Bananymous
|
dfe5a2d665
|
All: Cleanup all files
Add newline to end of files and remove whitespace from end of lines
|
2024-01-24 15:53:38 +02:00 |
Bananymous
|
3441f63298
|
Kernel: Don't panic kernel if no interrupt could be reserved
|
2024-01-24 14:34:59 +02:00 |
Bananymous
|
2cee2a85e6
|
Kernel: DevFS now stores all devices
This allows removing hack in PCI that was required to keep NVMe
controller alive.
|
2024-01-24 14:33:50 +02:00 |
Bananymous
|
5001fa58e0
|
Kernel: Fix wait syscall with atomics
|
2024-01-24 14:32:52 +02:00 |
Bananymous
|
54a92293da
|
Kernel: Implement NVMe driver
I'm actually able to boot this os fine on own laptop now!
|
2024-01-17 08:26:58 +01:00 |