Commit Graph

51 Commits

Author SHA1 Message Date
Mathieu Maret dc4c465e94 Fix freeing squattedCtx when deleting thread 2024-02-27 23:14:09 +01:00
Mathieu Maret 5a2042e577 Fix MMU context on ressource checking 2024-02-08 23:15:29 +01:00
Mathieu Maret 205d174c8a pagefault_handler print error code before killing thread 2024-02-08 23:15:29 +01:00
Mathieu Maret d9051ea59c Propagate page fault to ressource handler
Fix mmap arguments handling
2024-02-08 23:15:29 +01:00
Mathieu Maret 44c5551655 Wip: zero mmap 2024-02-08 23:15:29 +01:00
Mathieu Maret 946c47a988 Reorganize a bit includes like libc 2024-01-29 23:27:10 +01:00
Mathieu Maret 01d54dea85 Add partial multiboot2 support 2023-11-17 23:32:52 +01:00
Mathieu Maret 107bcedf90 Fix boot.S compilation 2023-11-17 15:32:24 +01:00
Mathieu Maret 18ea283213 Use format attribut and correct associated errors 2023-11-09 23:44:04 +01:00
Mathieu Maret edcac85b35 OnDemand paging for heap 2022-09-03 23:32:31 +02:00
Mathieu Maret fb9bd8df7d Various small fix 2021-11-13 08:31:05 +01:00
Mathieu Maret 9d35a686ab Fix few issues/leaks 2021-11-12 10:19:43 +01:00
Mathieu Maret e9e584149c Add support for syscall with more than 3 args 2021-11-09 14:14:06 +01:00
Mathieu Maret ec9d255b1c Correct return value from syscall 2021-11-06 00:13:19 +01:00
Mathieu Maret 2b32908029 load userspace from disk 2021-11-05 23:02:23 +01:00
Mathieu Maret 4ad5b58787 Userspace with a syscall 2021-11-04 11:40:53 +01:00
Mathieu Maret 959bc56bc7 pit_handler: fix stack growing 2021-11-03 09:53:38 +01:00
Mathieu Maret 97d1e9ba2a Pit handler save ebp 2021-11-02 23:07:01 +01:00
Mathieu Maret ebc90d3f06 Fix mapping issue 2021-11-02 22:33:04 +01:00
Mathieu Maret 84e104d83e Implement some basic syscall 2021-11-02 21:47:05 +01:00
Mathieu Maret 98db8b8962 add context switch in thread 2021-11-02 21:24:12 +01:00
Mathieu Maret 814d38bc97 Makefile: all asm in Gnu AS 2021-10-31 00:04:01 +02:00
Mathieu Maret 5230b971b2 Add process subsystem 2021-10-30 15:30:19 +02:00
Mathieu Maret e65a57d55d Rename kthread to thread 2021-10-30 14:29:12 +02:00
Mathieu Maret ca4b318df6 rename struct kthread in thread 2021-10-30 14:08:12 +02:00
Mathieu Maret e6524c7d48 Naming fix 2021-10-30 13:58:12 +02:00
Mathieu Maret 79a2bc58ae Integrate MMU context 2021-10-30 00:28:31 +02:00
Mathieu Maret 186192023d Exception: fix stack for ex withour err code 2021-10-29 12:29:18 +02:00
Mathieu Maret f1039b7fe4 context: add copy kernel context
fix also some indentation
2021-10-28 19:18:03 +02:00
Mathieu Maret be080af906 Fix initial area setup
The inital kernel stack was not page aligned and thus was found in 2
area
2021-10-28 18:19:35 +02:00
Mathieu Maret e658ea6e48 Fix upper area limit 2021-10-28 11:03:44 +02:00
Mathieu Maret 07d173a9c1 Sync PDs on modifications 2021-10-28 00:41:02 +02:00
Mathieu Maret 7f6bb8eef3 add mmu context 2021-10-27 17:36:12 +02:00
Mathieu Maret 46e1bb0642 area alloc: mapping optionnal 2021-10-27 17:30:58 +02:00
Mathieu Maret 4aa093034b Page fault: more information 2021-10-27 17:20:28 +02:00
Mathieu Maret 1e7f99a3e2 Correct irq asm handling 2021-10-27 10:52:50 +02:00
Mathieu Maret 3fb667d62e Core exception handling w or wo err code 2021-10-27 10:13:11 +02:00
Mathieu Maret 75dbbdb53b Wrap IRQ, Exception, cpu_context to be ready for user
Fix ASM where ebp was push 2 times.
One by pushw ebp
One by pushal later
2021-10-27 00:14:22 +02:00
Mathieu Maret 8f6f6cf471 WIP: add TSS management 2021-10-25 21:29:18 +02:00
Mathieu Maret 5c7242e4dc Use ASM exception wrapper 2021-10-08 16:42:32 +02:00
Mathieu Maret 4e14b05f72 irq handler get complete CPU state in arguments 2021-10-08 15:30:08 +02:00
Mathieu Maret d2417ef349 esp and ss are push for x86_64 2021-10-08 12:01:57 +02:00
Mathieu Maret ddc0c4c84a Wrap IRQ with ASM 2021-10-08 11:24:02 +02:00
Mathieu Maret 4887984322 Thinner phy page pre-booking 2021-04-10 00:24:02 +02:00
Mathieu Maret 8c0c61c099 Pagefault handler never come back 2021-04-09 20:45:40 +02:00
Mathieu Maret ede53ae4f9 VGA renaming 2021-01-25 14:00:06 +01:00
Mathieu Maret bea3449b11 Implement vsnprintf and use it 2021-01-24 23:51:21 +01:00
Mathieu Maret 9815cc062f Multiple page allocation 2020-08-28 22:40:21 +02:00
Mathieu Maret a96fded645 fix general purpose reg order in cpu_state 2020-05-03 23:11:14 +02:00
Mathieu Maret c65c7bb7b0 More more stuff in arch subdir 2020-04-29 23:07:01 +02:00