Bananymous
|
ac90800c3c
|
Kernel/LibC/DynamicLoader: Implement thread local storage
For some reason this does not work on 32 bit version, so it is disabled
on that platform. I'll have to look into it later to find the bug :)
|
2025-04-15 23:33:39 +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
|
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
|
9893c90e74
|
Kernel: Remove SYS_DUP and implement it using fcntl F_DUPFD
|
2025-01-17 19:29:47 +02:00 |
Bananymous
|
88c9f6d233
|
LibC: Make environ a weak alias
If user program defines its own global `environ` variable it will still
work :)
|
2024-12-03 20:29:38 +02:00 |
Bananymous
|
bc93d238dd
|
LibC: Fix fread argument order in gethostname
|
2024-12-03 16:15:16 +02:00 |
Bananymous
|
713daf6cd3
|
Kernel/LibC: Add support for creating hardlinks
|
2024-12-03 16:12:26 +02:00 |
Bananymous
|
d58ca5f37a
|
Kernel/LibC: Implement symlink{,at}
|
2024-12-02 20:13:38 +02:00 |
Bananymous
|
ad1f175a39
|
Kernel/LibC: Implement getppid
|
2024-12-02 20:13:37 +02:00 |
Bananymous
|
fd3246113a
|
LibC: Implement missing execlp and cleanup exec code
|
2024-12-02 20:13:37 +02:00 |
Bananymous
|
b8013c883c
|
LibC: Implement getpass
|
2024-12-02 20:13:37 +02:00 |
Bananymous
|
4508e099ff
|
LibC: Implement getpagesize
|
2024-12-02 20:13:37 +02:00 |
Bananymous
|
6ed1435aeb
|
Kernel/LibC: Implement tcgetpgrp
|
2024-12-02 20:13:37 +02:00 |
Bananymous
|
747c3b2a4b
|
Kernel/LibC: Implement fsync
|
2024-12-02 20:13:37 +02:00 |
Bananymous
|
4e9f39384a
|
LibC: Initialize libc only once
This was breaking stuff with dynamic loader initializing libc and main
executable reinitializing it later :D
|
2024-09-24 17:56:12 +03:00 |
Bananymous
|
e431e90b20
|
Kernel/LibC: Implement all chown family function with fchownat
|
2024-09-17 18:35:01 +03:00 |
Bananymous
|
3666525d24
|
Kernel/LibC: Implement `readlink` in terms of `readlinkat`
|
2024-09-17 16:38:15 +03:00 |
Bananymous
|
2c520391eb
|
Kernel/LibC: Add support for init_array and fini_array
|
2024-08-27 00:47:03 +03:00 |
Bananymous
|
ad645f31d0
|
Kernel/LibC: Add setsid()
|
2024-08-11 00:58:12 +03:00 |
Bananymous
|
4d96ae56ac
|
LibC: Add stubs for ungetc(), tcflush() and symlink()
|
2024-08-05 01:48:24 +03:00 |
Bananymous
|
e7a06979ec
|
LibC: Implement usleep()
This is not a POSIX function, but some ports seem to be using it either
way
|
2024-08-05 00:54:17 +03:00 |
Bananymous
|
a33b63d066
|
Kernel/LibC: Implement alarm() and setitimer()
This makes vim able to start!
|
2024-08-01 21:09:56 +03:00 |
Bananymous
|
20d38ed28c
|
LibC/Shell: Implement gethostname() and shell uses it for hostname
|
2024-07-31 23:53:55 +03:00 |
Bananymous
|
f0be4f86a6
|
LibC/Kernel: Implement access
|
2024-07-30 11:51:07 +03:00 |
Bananymous
|
e5bb843059
|
LibC/Kernel: Implement ttyname
|
2024-07-30 11:41:18 +03:00 |
Bananymous
|
c69919738b
|
BuildSystem: Move all userpace libraries under the userspace directory
As the number of libraries is increasing, root directory starts to
expand. This adds better organization for libraries
|
2024-06-18 13:14:35 +03:00 |