Bananymous
|
b68d5a5833
|
Kernel: Add SYS_WAIT
This syscall waits for a given pid.
|
2023-06-04 18:00:52 +03:00 |
Bananymous
|
94d2090777
|
Kernel: fork() now clones current thread
This is how posix specifies thread cloning during fork
|
2023-06-04 17:40:37 +03:00 |
Bananymous
|
e97585daf9
|
Kernel: Process FixedWidthAllocators come now in 4 sizes
|
2023-06-04 01:26:43 +03:00 |
Bananymous
|
924fc2118c
|
Kernel: Allocators are now stored in UniqPtr
This allows proper memory management, we had some memory leak
|
2023-06-04 01:25:57 +03:00 |
Bananymous
|
51f4c0c750
|
Kernel: make load_elf() its own function
|
2023-06-04 01:24:11 +03:00 |
Bananymous
|
37b93da650
|
Kernel: PhysicalRange maps its nodes to kernel vaddr space
This keeps the lower half of address space cleaner
|
2023-06-04 01:20:47 +03:00 |
Bananymous
|
35e739dcdd
|
Kernel: reorder process exit steps
|
2023-06-04 01:19:04 +03:00 |
Bananymous
|
8352392b38
|
Kernel: You can specify first vaddr for getting free pages
|
2023-06-04 01:15:48 +03:00 |
Bananymous
|
413f05bfca
|
BAN: Add UniqPtr
|
2023-06-04 00:39:20 +03:00 |
Bananymous
|
dc1aff58ed
|
Kernel: PAGE_FLAG_MASK is now only 0xF
We don't care currenly about anything but the last few bits
|
2023-06-03 20:08:13 +03:00 |
Bananymous
|
9f75d9cfe5
|
Kernel: PageTable now has debug_dump
This dumps all the mapped pages and their flags
|
2023-06-03 20:08:13 +03:00 |
Bananymous
|
a42af7e973
|
Kernel: boot.S is back to 2 MiB pages
bochs doesn't seem to support 1 GiB pages
|
2023-06-03 18:53:36 +03:00 |
Bananymous
|
2ce244d303
|
BAN: Errors now includes assert.h
|
2023-06-03 18:53:05 +03:00 |
Bananymous
|
a775a920d0
|
BuildSystem: remove sse and sse2 from userspace
|
2023-06-03 16:05:32 +03:00 |
Bananymous
|
4f84faf392
|
LibC: printf string persision works now
|
2023-06-03 15:07:02 +03:00 |
Bananymous
|
a4cb5d8360
|
Kernel: Inode/Device detection is done with overridden bool functions
|
2023-06-03 13:28:15 +03:00 |
Bananymous
|
da7f09cf82
|
Kernel: Heap will return 0 if no free page is available
|
2023-06-03 02:55:31 +03:00 |
Bananymous
|
0166af472b
|
Kernel: DiskCache will try to shrink_to_fit after cache cleanup
|
2023-06-03 02:55:22 +03:00 |
Bananymous
|
884d986bd6
|
Kernel: DiskCache won't crash when running out of kmalloc memory
|
2023-06-03 02:36:20 +03:00 |
Bananymous
|
59b807189f
|
Kernel: add basic disk cache
ATADevices now add disk cache to themselves
|
2023-06-03 02:23:14 +03:00 |
Bananymous
|
fb1c7015b1
|
Kernel: Shell 'memory' now prints heap memory usage
|
2023-06-03 02:22:18 +03:00 |
Bananymous
|
d4123f62b2
|
Update README.md
|
2023-06-02 18:43:30 +03:00 |
Bananymous
|
a3f410d1a1
|
Userspace: create_program creates proper cmake files again
|
2023-06-02 18:42:25 +03:00 |
Bananymous
|
1d19a4bffe
|
BuildSystem: all scripts have now bash shebang
I could not use the scripts on debian
|
2023-06-02 18:41:45 +03:00 |
Bananymous
|
271dd91292
|
BuildSystem: add rule to build libstdc++
We can now build libstdc++ and actually link with g++
|
2023-06-02 18:39:42 +03:00 |
Bananymous
|
9bd4d68f9c
|
Kernel: Shell ls and stat now properly show symlinks
|
2023-06-02 18:22:56 +03:00 |
Bananymous
|
3c3c7826ef
|
LibC: Add simple definition for realloc
The syscall just crashes the kernel currently. I will implement
this when needed
|
2023-06-02 17:56:13 +03:00 |
Bananymous
|
2207357b93
|
LibC: add __cxa_at_exit() for libc
|
2023-06-02 17:50:55 +03:00 |
Bananymous
|
3a69768eb0
|
LibC: remove select() declaration
This already comes from sys/select.h
|
2023-06-02 17:29:09 +03:00 |
Bananymous
|
afb29ff3ec
|
LibC: rename [[noreturn]] to __attribute__((__noreturn__))
This compiles with C compiler
|
2023-06-02 17:28:36 +03:00 |
Bananymous
|
e6f0f891a6
|
LibC: stdlib.h doesn't seem to typedef wchar_t without __need_wchar_t
|
2023-06-02 17:27:31 +03:00 |
Bananymous
|
36e5aa4683
|
LibC: fix INFINITY definition typo
|
2023-06-02 17:27:14 +03:00 |
Bananymous
|
7738050105
|
LibC: fix DIR typedef for C code
|
2023-06-02 17:26:38 +03:00 |
Bananymous
|
4bf11ec349
|
LibC: complex.h undefs I before defining it
|
2023-06-02 17:13:09 +03:00 |
Bananymous
|
d821012eed
|
LibC: mbstate_t is empty struct
|
2023-06-02 17:10:29 +03:00 |
Bananymous
|
35c6edd989
|
LibC: fix sig_atomic_t definition
|
2023-06-02 17:08:43 +03:00 |
Bananymous
|
633cb4f282
|
Kernel: VFS now has max link depth of 100
|
2023-06-02 12:50:40 +03:00 |
Bananymous
|
4d4d0e26a9
|
Kernel: Symlinks are now working
We still have to implement loop or depth detection
|
2023-06-02 11:43:46 +03:00 |
Bananymous
|
feea2d4024
|
BAN: Fix function call in Vector
|
2023-06-01 00:50:04 +03:00 |
Bananymous
|
0ffd2a5c1d
|
Kernel: Shell can now list symlinks
|
2023-06-01 00:25:53 +03:00 |
Bananymous
|
232fdcb82c
|
Kernel: add basic support for symlinks
|
2023-06-01 00:24:45 +03:00 |
Bananymous
|
0ccc23d544
|
Kernel: Shell opens standard files
|
2023-05-31 23:14:15 +03:00 |
Bananymous
|
789ca3db1a
|
BuildSystem: cmake creates /usr/bin
|
2023-05-31 23:13:53 +03:00 |
Bananymous
|
cb359a05dc
|
BuildSystem: link libraries when they change
This also fixed the need for manual linkin on firt build
|
2023-05-31 23:01:40 +03:00 |
Bananymous
|
14982c137a
|
Userspace: make test program link against libc on change
|
2023-05-31 22:36:47 +03:00 |
Bananymous
|
0acab11620
|
LibC: add execl
|
2023-05-31 22:36:26 +03:00 |
Bananymous
|
02f0239016
|
Kernel: Cleanup exec code
|
2023-05-31 22:36:05 +03:00 |
Bananymous
|
ab61b49aca
|
Kernel: Add SYS_EXEC syscall
|
2023-05-31 20:57:33 +03:00 |
Bananymous
|
4da1d6fd27
|
Kernel: Implement Process::exec()
|
2023-05-31 20:56:29 +03:00 |
Bananymous
|
909e847369
|
Kernel: Move userspace entry functions to Process instead of Thread
|
2023-05-31 19:31:10 +03:00 |