Commit Graph

76 Commits

Author SHA1 Message Date
2ffd8e3c34 Refactor gsTCB struct for debugging and update usage in related files 2024-03-13 03:41:12 +02:00
0c0ee01f35 Add Flags field to gsTCB struct 2024-03-10 22:05:22 +02:00
7c4adccf8d Fix stack align 2024-03-05 00:47:08 +02:00
d3a16469ad Revise PID and TID generation to align with standards 2024-03-02 00:51:06 +02:00
df457e8097 Refactor task scheduler 2024-03-01 22:56:50 +02:00
ddad5ca38a Remove ELFSymbolTable from PCB 2024-02-28 06:11:31 +02:00
96daa43d38 Update kernel 2024-01-19 06:47:42 +02:00
889e1522a3 Restructured and rewritten entire codebase 2023-10-09 01:16:24 +03:00
446a571018 Tasking is now working under 32-bit 2023-09-07 04:22:34 +03:00
6d95cd5261 Rework for APIC & added support for x2APIC 2023-08-31 01:07:55 +03:00
8898791257 Update kernel code 2023-08-22 06:21:17 +03:00
2c51e4432f Update kernel 2023-08-06 04:53:14 +03:00
85c0de688d Fix sleep syscall 2023-06-11 01:36:39 +03:00
41db477173 Update kernel 2023-06-10 13:11:25 +03:00
061363d85d Fix fork() syscall 2023-05-22 00:43:45 +03:00
80980ecfaf Move drivers to kernel 2023-05-19 07:27:42 +03:00
b68c8c18a5 Implement mb2 stub support 2023-05-09 04:57:17 +03:00
7d939c001b Add process cwd 2023-05-05 19:40:01 +03:00
b0e0415b3e Track which core was used to schedule 2023-05-05 18:45:28 +03:00
533b945e84 Save/Restore shadow GS too while scheduling tasks 2023-05-04 22:39:37 +03:00
61aea6aa8d fork() stub and QoL improvements 2023-05-03 06:37:39 +03:00
299c919d1d Add UserTime and KernelTime tracker 2023-04-25 05:12:58 +03:00
fcbb298077 Fix compiler warnings 2023-04-23 07:02:24 +03:00
70e11f17e7 Implement std::atomic and remove the old implementation Atomic and rename vector.hpp to vector 2023-04-10 05:29:41 +03:00
4e20d4d9f4 Enable compilation of project on AArch64 architecture 2023-04-04 16:06:54 +03:00
25256d81a8 Added license headers to all project files 2023-04-04 02:19:05 +03:00
bb862bf600 Move PEXIT and TEXIT to task.hpp 2023-03-27 20:37:58 +03:00
1266764aec Process cleanup should be done by a thread 2023-03-27 02:50:57 +03:00
f86f3d9293 Rename std functions to match the standard 2023-03-23 04:56:49 +02:00
5c91f23527 x32 is now compiling 2023-03-04 21:17:19 +02:00
75883030ad Renamed "interrupts.hpp" to "ints.hpp" 2023-02-28 12:58:09 +02:00
df24131e48 Added last task ticks counter 2023-02-27 17:44:10 +02:00
51b0e3b5a8 Changed scheduler priorities 2023-02-15 07:21:08 +02:00
47a10df568 Added GetSchedulerTicks() 2023-02-14 03:52:42 +02:00
b104511241 Added GetProcessByID and GetThreadByID 2023-02-07 04:55:26 +02:00
a592b85ce5 Updated kernel (tl;dr: improved filesystem, tasking, loading files, etc..) 2023-02-06 19:35:44 +02:00
1297aecc8a Added "DoNotCreatePageTable" boolean to CreateProcess 2023-01-09 17:19:06 +02:00
4501826025 Kernel now uses SSE instructions properly 2023-01-03 06:36:15 +02:00
3f166b97c7 Improved shutting down procedure 2022-12-29 05:25:43 +02:00
e53bc14240 Fixed tasking SSE 2022-12-29 02:05:07 +02:00
0942fb4cd3 Implemented sleep for threads🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉 2022-12-24 06:22:50 +02:00
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
985d614be2 Compiles on x86 but everything is broken 2022-12-21 02:11:49 +02:00
a677f3c159 Updated types 2022-12-21 00:43:51 +02:00
3828186c56 RIP history implementation for broken stacks 2022-12-14 14:21:48 +02:00
ab7f20d5f5 Implemented memory tracker 2022-12-11 14:34:24 +02:00
a56f633709 Improved symbol table + every process have one allocated 2022-12-10 06:01:01 +02:00
1317dc53fa Updated argv and envp in tasking 2022-12-08 10:35:05 +02:00
1bb97f19fd Apply code from memory-test branch 2022-12-05 23:20:06 +02:00
0289054900 Changed a lot of files. Summary: profiler support; "SafeFunction"; UnlockDeadLock kernel config; Code optimization & more 2022-11-28 08:25:37 +02:00