81 Commits

Author SHA1 Message Date
Alex
4e20d4d9f4
Enable compilation of project on AArch64 architecture 2023-04-04 16:06:54 +03:00
Alex
25256d81a8
Added license headers to all project files 2023-04-04 02:19:05 +03:00
Alex
9e21c5326b
Support i386 2023-03-29 03:02:49 +03:00
Alex
1266764aec
Process cleanup should be done by a thread 2023-03-27 02:50:57 +03:00
Alex
2d03d629dc
Check if CreateThread() has a valid parent 2023-03-25 12:00:00 +02:00
Alex
6b01a21a71
Change Interrupts::Handler 2023-03-23 20:48:09 +02:00
Alex
f86f3d9293
Rename std functions to match the standard 2023-03-23 04:56:49 +02:00
Alex
2d3b89bd33
Allocate argv and envp 2023-03-22 21:18:35 +02:00
Alex
ac0c9505f3
Replace SmartCriticalSection with SmartLock 2023-03-20 01:27:34 +02:00
Alex
d7c9b7ab02
Prevent dangling pointer 2023-03-14 06:24:02 +02:00
Alex
5c91f23527
x32 is now compiling 2023-03-04 21:17:19 +02:00
Alex
392ebc9be2
Renamed "__no_instrument_function" 2023-02-27 22:19:40 +02:00
Alex
5e72d81a8f
Simple CPU affinity system 2023-02-25 03:58:11 +02:00
Alex
c817be50ff
Put CPU namespaces in separate files to make cpu.hpp smaller 2023-02-22 01:48:38 +02:00
Alex
419b5bee0d
Replaced "__sync_synchronize" with "__sync" 2023-02-18 04:13:49 +02:00
Alex
95a78ef939
CurrentThread/Process should be atomic 2023-02-18 04:10:41 +02:00
Alex
4506648cd6
mem* check operations now tell where it failed 2023-02-15 07:14:18 +02:00
Alex
47a10df568
Added GetSchedulerTicks() 2023-02-14 03:52:42 +02:00
Alex
4d0050c90d
Schedule() should fire faster 2023-02-10 05:44:48 +02:00
Alex
b104511241
Added GetProcessByID and GetThreadByID 2023-02-07 04:55:26 +02:00
Alex
a592b85ce5
Updated kernel (tl;dr: improved filesystem, tasking, loading files, etc..) 2023-02-06 19:35:44 +02:00
Alex
1297aecc8a
Added "DoNotCreatePageTable" boolean to CreateProcess 2023-01-09 17:19:06 +02:00
Alex
7fd6532345
Renamed print functions 2023-01-07 20:13:46 +02:00
Alex
a4efcb9292
Fixed tasking when a thread is sleeping 2023-01-05 08:01:21 +02:00
Alex
4501826025
Kernel now uses SSE instructions properly 2023-01-03 06:36:15 +02:00
Alex
3f166b97c7
Improved shutting down procedure 2022-12-29 05:25:43 +02:00
Alex
e8d8f45c8a
Scheduler optimizations 2022-12-29 04:46:12 +02:00
Alex
e53bc14240
Fixed tasking SSE 2022-12-29 02:05:07 +02:00
Alex
f07c10a2ee
Improved checks for WakeUpThreads 2022-12-24 07:57:35 +02:00
Alex
0942fb4cd3
Implemented sleep for threads🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉 2022-12-24 06:22:50 +02:00
Alex
a9dacd1d21
Renamed "Tracker" to "MemMgr" because it could be used for shared memory and more useful features 2022-12-24 01:51:55 +02:00
Alex
985d614be2
Compiles on x86 but everything is broken 2022-12-21 02:11:49 +02:00
Alex
a677f3c159
Updated types 2022-12-21 00:43:51 +02:00
Alex
59fe56302f
Thread arguments are now available from it's stack 2022-12-15 03:08:16 +02:00
Alex
3828186c56
RIP history implementation for broken stacks 2022-12-14 14:21:48 +02:00
Alex
359612abb5
Updated process debug info trace 2022-12-12 20:28:18 +02:00
Alex
d5ac3226b2
Replaced "schedbg" to "trace" 2022-12-12 00:33:02 +02:00
Alex
ab7f20d5f5
Implemented memory tracker 2022-12-11 14:34:24 +02:00
Alex
7b68099808
Fixed arguments for thread 2022-12-10 06:02:21 +02:00
Alex
1317dc53fa
Updated argv and envp in tasking 2022-12-08 10:35:05 +02:00
Alex
eab80c215c
Fixed wrong stack pointer & new tss command for crash screen 2022-12-07 04:15:20 +02:00
Alex
1bb97f19fd
Apply code from memory-test branch 2022-12-05 23:20:06 +02:00
Alex
2d1c42fbcd
Memory related code optimization 2022-12-05 00:48:41 +02:00
Alex
0289054900
Changed a lot of files. Summary: profiler support; "SafeFunction"; UnlockDeadLock kernel config; Code optimization & more 2022-11-28 08:25:37 +02:00
Alex
eaaf8427dc
Stack guard implementation 2022-11-21 03:20:13 +02:00
Alex
2571c4f539
Added ubsan 2022-11-17 03:33:18 +02:00
Alex
9fdad650b9
Trying to fix user stack 2022-11-16 16:04:09 +02:00
Alex
c2628019b7
Syscalls working as expected 2022-11-15 15:09:52 +02:00
Alex
3542dfca8b
Code fixes and stability 2022-11-15 01:50:07 +02:00
Alex
62ded83a9b
Typo 2022-11-14 16:12:35 +02:00