380 Commits

Author SHA1 Message Date
Mark 927e639d3a Add support for shared anonymous mappings 2020-04-13 12:28:22 +03:00
Mark b4f0f3214a PoC copy-on-write, likely leaky 2020-04-11 18:16:29 +03:00
Mark eebeef2a14 PoC module loading + external relocation resolution 2020-04-10 11:02:10 +03:00
Mark 38ecc1f70d Add slab allocation tracing 2020-04-08 12:54:10 +03:00
Mark 8f3f600fa4 Add slab allocator for objects < 512B 2020-04-08 12:45:03 +03:00
Mark 05b8ad8aaf Add some docs 2020-04-07 17:39:37 +03:00
Mark 3621a567a8 Move amd64_* memory functions to mm_ namespace 2020-04-07 15:13:37 +03:00
Mark c2c6a65af1 Add undefined behavior sanitization 2020-04-07 14:02:28 +03:00
Mark 636ad966c4 Newlib compat 2020-04-07 11:49:38 +03:00
Mark 19ff8767ae (Sketchy) support for bigger files in tarfs, RO again 2020-04-07 11:47:36 +03:00
Mark 522a5cc9d6 Add select() on sockets 2020-03-31 11:30:26 +03:00
Mark 26bf9f60c0 Integrate new io_notify with waitpid() 2020-03-31 13:04:27 +03:00
Mark 55d2efda8e Reworked how waiting/select()ing FDs works 2020-03-30 18:08:23 +03:00
Mark 37ed963272 Clean implementation of socket classes 2020-03-30 10:59:25 +03:00
Mark b3cf46f194 Add video ioctls and mmap 2020-03-27 16:55:52 +02:00
Mark ae1de3acff Switch to global shm tracking 2020-03-27 14:52:57 +02:00
Mark 7005c446f8 PoC shared memory implementation 2020-03-27 14:33:15 +02:00
Mark f44505b05c Rework list functions 2020-03-26 22:05:06 +02:00
Mark 3da77fbc1a Add packet queueing for tx 2020-03-26 17:04:23 +02:00
Mark 3905d0ca1a Clean up TCP code 2020-03-24 17:03:19 +02:00
Mark fd235dbb86 Add "connection reset" TCP handler for incoming SYN frames 2020-03-23 13:04:49 +02:00
Mark 7be54602f5 Add queue locks, fix raw socket close not cleaning up properly 2020-03-21 00:26:11 +02:00
Mark 8954fa8fef Split packet queues 2020-03-20 22:12:51 +02:00
Mark 7002562146 Rename "family" field in socket 2020-03-20 21:36:19 +02:00
Mark 65b663af11 Add socket close() 2020-03-20 21:28:03 +02:00
Mark 5ebea3ca13 Report inaddr via netctl() 2020-03-20 19:46:51 +02:00
Mark 22b201c6c0 Add UDP broadcast and setsockopt() 2020-03-20 18:51:22 +02:00
Mark f01a5c79ed arp: queue packets for sending while pending resolution 2020-03-20 17:04:11 +02:00
Mark 1ef3a5d248 Add sockets and UDP sendto() 2020-03-20 16:37:52 +02:00
Mark 857a443c2e Add icmp reply and echo handling 2020-03-20 14:07:43 +02:00
Mark 425dbdc114 Add ARP tables and reply function 2020-03-20 12:52:30 +02:00
Mark 1be037f3c6 Add netctl() 2020-03-20 12:08:48 +02:00
Mark 44e2372fa8 Add "network interface" structure 2020-03-20 11:44:26 +02:00
Mark 8d6ecc7134 Add ARP stub 2020-03-20 11:11:14 +02:00
Mark 86eb7c9282 Add RTL8139 receive and network daemon with stub handler 2020-03-19 16:41:05 +02:00
Mark b40d495e4e Add non-MSI IRQ functionality to PCI 2020-03-19 15:31:58 +02:00
Mark 1ddd1b9cc8 USB hub driver 2020-03-12 16:51:52 +02:00
Mark 98ac8c8379 Fix optimization issues - improperly clobbered registers and
optimized-out regions
2020-02-07 16:52:13 +02:00
Mark 4878a0b06e Proper FPU init, fxsave/fxrstor for threads 2020-02-07 15:02:06 +02:00
Mark 31a4b8412a Split kernel_main into early (hw) init and main() 2020-02-07 13:19:29 +02:00
Mark b44645900d Added an option to mount filesystems synchronously 2020-02-07 12:54:50 +02:00
Mark 3e392687a5 Add block-layer cache support 2020-02-07 12:17:44 +02:00
Mark 5eb8229473 Add file modes to sysfs, add stat() to sysfs 2020-02-05 16:59:28 +02:00
Mark 1164272a06 Add simple set of sysfs entries for PCI information 2020-02-05 16:50:26 +02:00
Mark 41ae3d7aab Fix ring reader ignoring signals and unqueuing threads twice 2020-02-05 13:28:11 +02:00
Mark 533bc8567a Add linked list structure 2020-02-05 11:38:13 +02:00
Mark fc837b97d8 Only use spinlocks in SMP scenario 2020-02-05 10:39:00 +02:00
Mark 33ad8e3ee3 Fix scheduler lock not being released when handling signals 2020-02-04 23:37:57 +02:00
Mark 3542b73f1a SMP kinda works, fixed malloc race condition
Damn, I totally need to review SMP safety
2020-02-04 14:16:16 +02:00
Mark d9595c7f62 Change project structure 2020-02-04 12:45:15 +02:00