Bananymous
|
36baf7b0af
|
Kernel/LibC/DynamicLoader: Update process start ABI
We now use SysV abi for process startup
|
2025-04-15 23:05:52 +03:00 |
Bananymous
|
e6026cb0b8
|
DynamicLoader: Handle circular dependencies
|
2025-04-15 23:05:52 +03:00 |
Bananymous
|
cc2b4967ea
|
LibC: Make malloc thread safe with pthread_spinlock
|
2025-04-15 23:05:52 +03:00 |
Bananymous
|
cf59f89bfb
|
LibC: Rework constructor/destructor calling
constructors are now called in _init_libc instead of crt0
destructors are now registered with atexit() instead of called manually
|
2025-04-15 23:05:52 +03:00 |
Bananymous
|
066ed7e4a1
|
LibC: merge atexit and __cxa_atexit into common function
|
2025-04-15 23:05:52 +03:00 |
Bananymous
|
4f49d60e4a
|
DynamicLoader/LibC: lazy malloc environ
This allows DynamicLoader to just set the value of global environ symbol
without libc needing to malloc it at startup
|
2025-04-15 23:05:52 +03:00 |
Bananymous
|
3721dadd72
|
LibC: Make stdio and malloc initialization constructors
|
2025-04-15 22:01:57 +03:00 |
Bananymous
|
5539d5eed0
|
LibC: Implement pthread_cleanup_{pop,push}
|
2025-04-15 21:48:38 +03:00 |
Bananymous
|
64002626b9
|
LibC: Add h_addr definition for hostent backwards compatibility
|
2025-04-15 21:39:50 +03:00 |
Bananymous
|
4b1c20fa36
|
Kernel: Make SYS_{,P}READ work with count == 0
|
2025-04-15 21:36:00 +03:00 |
Bananymous
|
b418683337
|
LibELF: Add definition and values for auxiliary vectors
|
2025-04-15 21:31:02 +03:00 |
Bananymous
|
00015285ab
|
Kernel: Add vaddr->paddr getter to VirtualRange
|
2025-04-15 21:25:15 +03:00 |
Bananymous
|
0f936fc163
|
Kernel: Cleanup 32 bit interrupt stack alignment
|
2025-04-15 21:21:23 +03:00 |
Bananymous
|
15045cc486
|
Kernel: Make nonblocking sockets unblocking :)
|
2025-04-05 18:42:02 +03:00 |
Bananymous
|
c9132d984b
|
Kernel: Fix TCP window scaling
|
2025-04-05 18:40:23 +03:00 |
Bananymous
|
a0123e7c2d
|
Kernel: save and load sse context in more spaces
|
2025-04-02 12:58:39 +03:00 |
Bananymous
|
be786be67d
|
Kernel/LibC: Implement pthread_join
|
2025-04-02 12:58:39 +03:00 |
Bananymous
|
e85b18e206
|
LibC: Fix pthread stack alignment
|
2025-04-02 12:58:39 +03:00 |
Bananymous
|
f32f62dfc1
|
LibC: Implement pthread_spin_* functions
|
2025-04-02 12:58:39 +03:00 |
Bananymous
|
28392050bf
|
LibC: Make pthread_t pid_t
|
2025-04-02 12:58:39 +03:00 |
Bananymous
|
b9cc6063ff
|
LibC: Implement stdio FILE locking
|
2025-04-02 12:58:39 +03:00 |
Bananymous
|
9066e62a97
|
Kernel/LibC: Implement sched_yield
|
2025-04-02 12:58:39 +03:00 |
Bananymous
|
5549696c3a
|
Kernel/LibC: Implement pthread_self
|
2025-04-02 02:39:29 +03:00 |
Bananymous
|
691c9fe8e0
|
LibC: Fix bsearch
bsearch had unsigned integer underflow which was UB and returned false
positives
|
2025-04-02 00:03:50 +03:00 |
Bananymous
|
04463675c0
|
LibC: Lock file during gets
|
2025-04-01 23:26:13 +03:00 |
Bananymous
|
b9da6a4a5d
|
LibC: Implement getdelim and getline
|
2025-04-01 23:26:13 +03:00 |
Bananymous
|
9fb161c320
|
Kernel: Move thread stacks 1 MiB back
|
2025-04-01 23:26:13 +03:00 |
Bananymous
|
2ba25b4c28
|
LibC: Add non standard types/values used by ports
|
2025-04-01 23:26:13 +03:00 |
Bananymous
|
c1618e2b5d
|
Kernel/LibC: Add basic support for pthread_{create,exit}
|
2025-04-01 23:26:13 +03:00 |
Bananymous
|
788f5429e1
|
LibC: Implement spec compliant abort()
|
2025-04-01 23:09:30 +03:00 |
Bananymous
|
36026d4ec6
|
Kernel: Cleanup TCP and add basic window scaling support
|
2025-04-01 23:09:30 +03:00 |
Bananymous
|
96767f5ca8
|
Kernel: Implement PCI interrupt routing
This does not really work but I have no idea what I'm doing wrong
|
2025-04-01 23:09:30 +03:00 |
Bananymous
|
76bad31dd5
|
Kernel: Reorder locking with VirtualRange
|
2025-04-01 23:09:30 +03:00 |
Bananymous
|
2e3b917192
|
Kernel: Cleanup PS2 mouse button event generation
|
2025-04-01 23:09:30 +03:00 |
Bananymous
|
95f262b3e6
|
Kernel: Print process pid through /dev/debug
|
2025-04-01 23:09:30 +03:00 |
Bananymous
|
aebacb6b6a
|
Kernel: Bypass PS2 detection if scancode set is forced
|
2025-04-01 23:09:30 +03:00 |
Bananymous
|
27613da5ea
|
Kernel: Route PCI Interrupt Link Device interrupts
|
2025-04-01 23:09:30 +03:00 |
Bananymous
|
28ac6c2267
|
Kernel: Implement AML FindSet{Left,Right}Bit
|
2025-04-01 23:09:30 +03:00 |
Bananymous
|
1c1fc65c7c
|
Kernel: Add API to reserve GSI instead of irq
This also fixes a bug with IOAPIC gsi_base != 0
|
2025-04-01 23:09:30 +03:00 |
Bananymous
|
ba74b352bd
|
Kernel: Make BufferField actually access the buffer and not copy
|
2025-04-01 23:09:30 +03:00 |
Bananymous
|
0474ac4262
|
Kernel: Expose ACPI resolve_package_element to outside
|
2025-04-01 23:09:30 +03:00 |
Bananymous
|
aba49cc93f
|
Kernel: Add API to get ACPI reference paths
|
2025-04-01 23:09:30 +03:00 |
Bananymous
|
b3b5b40163
|
Kernel: Add _OS an _REV to ACPI namespace
|
2025-04-01 23:09:30 +03:00 |
Bananymous
|
0e085b30cc
|
Kernel: ACPI add easier API for calling methods with arguments
|
2025-04-01 23:09:30 +03:00 |
Bananymous
|
35149b6960
|
Kernel: Add helper functions to create AML String and Buffer
|
2025-04-01 23:09:30 +03:00 |
Bananymous
|
3800d5420e
|
Kernel: Collect created AML nodes in add_{named,alias}...
This makes it harder to miss adding scoped objects. Before I was not
deleting all types of nodes on method return
|
2025-04-01 23:09:25 +03:00 |
Bananymous
|
b145c1ab64
|
Kernel: Add easier api for evaluating ACPI nodes
|
2025-04-01 23:09:20 +03:00 |
Bananymous
|
b8a3439219
|
Kernel: Add getter for ACPI namespace
|
2025-04-01 23:09:15 +03:00 |
Bananymous
|
1a153b835c
|
BAN: Nullterminate encoded UTF8 data
|
2025-04-01 22:39:56 +03:00 |
Bananymous
|
73c292c4e9
|
BAN: Fix negative floating point value printing
|
2025-04-01 22:39:21 +03:00 |