745 Commits

Author SHA1 Message Date
Alex
39c3d4e2f2
Add syscalls test 2023-05-05 17:10:44 +03:00
Alex
d472fddb61
Check if the thread pointer is valid before accessing it's data 2023-05-04 22:42:14 +03:00
Alex
71c9306828
Make syscall handler stub easier to debug 2023-05-04 22:40:18 +03:00
Alex
533b945e84
Save/Restore shadow GS too while scheduling tasks 2023-05-04 22:39:37 +03:00
Alex
7abbc51d99
fixme 2023-05-04 05:09:44 +03:00
Alex
4c224557d1
Fix InitDSDT called while APIC wasn't initialized 2023-05-04 05:09:33 +03:00
Alex
159fd7506a
Do not accept invalid kernel private object 2023-05-04 02:39:40 +03:00
Alex
d7427ff2fa
Make sure InterpreterPath has \0 character by default 2023-05-04 02:39:13 +03:00
Alex
61aea6aa8d
fork() stub and QoL improvements 2023-05-03 06:37:39 +03:00
Alex
6e6d22403c
Fix flawfinder workflow 2023-04-30 20:51:28 +03:00
Alex
5e81421ec6
Add Elf32_Phdr 2023-04-28 23:06:48 +03:00
Alex
52f506e882
Remove multiboot2 boot code 2023-04-27 05:06:07 +03:00
Alex
5893030f32
Update TODO 2023-04-25 05:30:38 +03:00
Alex
920cc9e74a
Wrong SMBIOSProcessorInformation structure 2023-04-25 05:30:28 +03:00
Alex
c1eaabf97b
Bug fixes 2023-04-25 05:14:12 +03:00
Alex
299c919d1d
Add UserTime and KernelTime tracker 2023-04-25 05:12:58 +03:00
Alex
03b667f5c0
Fix i386 and aarch64 compilation issues 2023-04-23 07:55:27 +03:00
Alex
efc16409a6
QoL improvements 2023-04-23 07:51:05 +03:00
Alex
cd0a470e1d
Fix a bug where GetCurrentProcess returned null inside DSDT 2023-04-23 07:50:09 +03:00
Alex
f41faf0fea
Display seconds since boot in kernel messages 2023-04-23 07:33:14 +03:00
Alex
8471126696
Change "GetMillisecondsSinceClassCreation" to "GetNanosecondsSinceClassCreation" 2023-04-23 07:29:08 +03:00
Alex
fcbb298077
Fix compiler warnings 2023-04-23 07:02:24 +03:00
Alex
a73a49094c
Add TSC timer stub 2023-04-23 06:29:31 +03:00
Alex
dc6fd148fc
Reserve more pages for SMP trampoline 2023-04-23 06:28:12 +03:00
Alex
89d747e52c
Update timing implementation 2023-04-23 05:30:58 +03:00
Alex
7e201e0958
Update kernelctl syscall 2023-04-21 18:53:09 +03:00
Alex
1eb41e4977
Update init envp 2023-04-21 18:35:58 +03:00
Alex
d76585cce3
Implement file syscalls 2023-04-21 18:32:43 +03:00
Alex
dc7b1fc4c9
Rework virtual filesystem implementation 2023-04-21 18:32:20 +03:00
Alex
f2eab6c64f
Fix elf loading 2023-04-21 17:47:09 +03:00
Alex
96a27f7bc8
Update syscall doc functions 2023-04-21 17:46:11 +03:00
Alex
41bdbada31
Update todo 2023-04-20 04:07:07 +03:00
Alex
0eb8ba0f69
Fix bug causing vector removal to skip elements 2023-04-20 03:24:23 +03:00
Alex
ad1bcdab47
Better debug info 2023-04-19 00:50:29 +03:00
Alex
ecc19f4df0
Reserve all pages and then unreserve available pages 2023-04-19 00:50:09 +03:00
Alex
b15f738e16
Optimize RNG functions 2023-04-16 22:05:02 +03:00
Alex
37f5b77421
Organize driver binding files 2023-04-11 12:41:50 +03:00
Alex
411b468f71
Optimize memory usage 2023-04-11 12:06:32 +03:00
Alex
c563bb395e
Default scheduler should be multi 2023-04-11 11:54:17 +03:00
Alex
db2de2948e
Rename kernel files 2023-04-11 11:47:53 +03:00
Alex
69bfc7d9ed
Kernel processes should have IsCritical flag enabled by default 2023-04-11 11:42:12 +03:00
Alex
fa4713fdff
Fix kernel crash after an interrupt occurs on the BSP 2023-04-11 11:30:37 +03:00
Alex
046c693a52
Use an enum to specify what ist to use 2023-04-11 11:28:35 +03:00
Alex
78f4bdd6a8
Refactored code to use {} initialization instead of dynamic allocation with 'new' in disk manager class 2023-04-10 06:24:44 +03:00
Alex
41dafe32fb
Move all std related headers to "include_std" 2023-04-10 06:08:58 +03:00
Alex
e414804445
Test assert macro 2023-04-10 06:08:30 +03:00
Alex
c8157a828a
Sleep between frames to have a constant frame rate 2023-04-10 06:08:12 +03:00
Alex
70e11f17e7
Implement std::atomic and remove the old implementation Atomic and rename vector.hpp to vector 2023-04-10 05:29:41 +03:00
Alex
b4dbf2c281
QoL and bug fixes 2023-04-10 03:11:46 +03:00
Alex
25aa9ff6a6
Fix compilation issues on i386 and aarch64 2023-04-07 05:27:02 +03:00