EnderIce2
23301b8c1b
memory: Kernel threads require more memory for stack
...
Threads will now use 128 KiB
2024-11-18 03:27:06 +02:00
EnderIce2
86a119ea51
scheduler: Fix page table switch for scheduler
...
The userspace process may map pages where the kernel has allocated data and cause a crash.
This patch fixes this issue by having a separate IRQ handler which sets the kernel page table at the start of SchedulerInterruptHandler() and restores it in SchedulerHandlerStub() function.
2024-11-17 03:11:20 +02:00
EnderIce2
ab6529f6e6
memory: Add kernel stack manager
2024-10-30 02:28:49 +02:00
EnderIce2
99292467ed
task: Remove redundant code
...
NewLock(SchedulerLock);
2024-10-26 03:54:46 +03:00
EnderIce2
29896bb0a4
memory: Refactor SwapPT class
2024-10-26 03:25:36 +03:00
EnderIce2
f57ad7fc81
task: Implement new process state
...
Added "Frozen" for vfork implementation.
2024-10-20 03:00:34 +03:00
EnderIce2
d9517a5cab
api: Add documentation to RingBuffer class
2024-10-19 01:44:48 +03:00
EnderIce2
5054243bc6
linux: Implement sched_setaffinity() and sched_getaffinity() syscalls
2024-10-16 16:50:15 +03:00
EnderIce2
acabadaaab
linux: Correct struct linux_dirent64 variables
2024-10-16 02:10:34 +03:00
EnderIce2
396ad681ba
tty: Fix kcon & tty implementation; Add stub ptmx
2024-10-13 13:00:22 +03:00
EnderIce2
f48032658f
vfs: Fix GetRoot(), CacheRecursiveSearch() and root identifier
2024-10-13 02:33:46 +03:00
EnderIce2
7cf35ec984
api: Add "KernelData" variable inside Inode structure
2024-10-13 02:30:13 +03:00
EnderIce2
3ca2463834
vfs: Implement GetName() & GetPath() in FileNode class
2024-10-13 02:25:29 +03:00
EnderIce2
93e8e3f354
linux: Fix broken process limits implementation
2024-10-13 02:19:26 +03:00
EnderIce2
85b6fdef80
Implement Virtual Terminal and fix /dev/kcon
2024-09-22 13:17:19 +03:00
EnderIce2
6f8e486740
Add debug message for GetBinaryType
2024-09-22 13:10:05 +03:00
EnderIce2
021d6fdd6b
Update kernel api
2024-08-27 17:24:20 +03:00
EnderIce2
9bdb83c346
Reformat comments in interrupts.hpp
2024-08-19 09:42:28 +03:00
EnderIce2
31dca2e9a6
Remove unused SmartHeap class
2024-08-13 07:37:20 +03:00
EnderIce2
51ea074b60
Fix driver implementation
2024-07-07 03:14:54 +03:00
EnderIce2
bd7c44ae74
Update ELF header
2024-05-20 05:41:26 +03:00
EnderIce2
5329c92791
Return proper errno for null inode operations
2024-05-19 11:28:22 +03:00
EnderIce2
042a5f8d4a
Fix missing member initialization
2024-05-19 08:55:52 +03:00
EnderIce2
6801475243
Refactor filesystem & stl code
2024-05-18 07:42:01 +03:00
EnderIce2
fd292305f6
Refactor lock related code
2024-04-10 06:25:55 +03:00
EnderIce2
daccdaeeae
Implement process resource limits
2024-04-02 05:52:43 +03:00
EnderIce2
91ca38fd77
Rename struct "stat" to "kstat"
2024-04-01 04:49:06 +03:00
EnderIce2
a49e5e9913
Remove redundant file operation functions
2024-04-01 04:36:11 +03:00
EnderIce2
bbb67b6a88
Refactor USTAR class and comments in FAT header
2024-04-01 04:33:36 +03:00
EnderIce2
e3f2912d59
Add stub F_DUPFD_CLOEXEC and add more cases in linux_fcntl
2024-04-01 01:12:37 +03:00
EnderIce2
473821bfa8
Implement process file mode creation mask
2024-04-01 00:47:33 +03:00
EnderIce2
a3b3ab76a7
Fix stat in linux
2024-03-31 21:42:10 +03:00
EnderIce2
eb3c6f42d6
Fix data type definitions
2024-03-31 21:03:44 +03:00
EnderIce2
147027b613
Add linux_getrusage and linux_setitimer syscall implementation
2024-03-28 00:16:32 +02:00
EnderIce2
3dc1981820
Implement VirtualAllocation class
2024-03-27 19:51:15 +02:00
EnderIce2
d7cc1f5c47
Add ptr_t class to types.h
2024-03-27 18:21:17 +02:00
EnderIce2
3d1ecc3db0
Rework signal handling code
2024-03-25 23:21:27 +02:00
EnderIce2
ab8ca388bb
Add GetThread() function to PCB class
2024-03-25 15:12:21 +02:00
EnderIce2
49ef1dc454
Refactor stack expansion and stack fork implementation
2024-03-21 02:09:48 +02:00
EnderIce2
b35045e7ca
Refactor memory allocation implementation and add KernelReserve flag to memory mappings
2024-03-19 03:57:30 +02:00
EnderIce2
1bd58a309f
Refactor Check and CheckRegion functions in virtual.hpp
2024-03-19 03:52:44 +02:00
EnderIce2
f009f181b0
Refactor code to use tab spaces
2024-03-13 18:09:42 +02:00
EnderIce2
d247dcd4a3
Update CR8 structure
2024-03-13 18:08:20 +02:00
EnderIce2
2ffd8e3c34
Refactor gsTCB struct for debugging and update usage in related files
2024-03-13 03:41:12 +02:00
EnderIce2
0c0ee01f35
Add Flags field to gsTCB struct
2024-03-10 22:05:22 +02:00
EnderIce2
7c4adccf8d
Fix stack align
2024-03-05 00:47:08 +02:00
EnderIce2
c2b595452e
Add InitTrampoline and HasPendingSignal function
2024-03-03 23:58:05 +02:00
EnderIce2
d3a16469ad
Revise PID and TID generation to align with standards
2024-03-02 00:51:06 +02:00
EnderIce2
525a102f20
Implement GetIdle function in Custom scheduler
2024-03-02 00:16:18 +02:00
EnderIce2
df457e8097
Refactor task scheduler
2024-03-01 22:56:50 +02:00