Commit Graph

266 Commits

Author SHA1 Message Date
Mathieu Maret
47f1d3f8ab Makefile: some simplification 2021-11-05 09:28:25 +01:00
Mathieu Maret
2cfa67b8e2 Add partition table support 2021-11-05 08:57:17 +01:00
mathieu
f81a515514 Merge pull request 'user_space' (#4) from user_space into master
Reviewed-on: http://git.mathux.org/mathieu/matos/pulls/4
2021-11-04 16:17:35 +01:00
Mathieu Maret
4ad5b58787 Userspace with a syscall 2021-11-04 11:40:53 +01:00
Mathieu Maret
a02167ad88 Reduce assert stack depth
This may cause page fault in test
2021-11-03 23:37:44 +01:00
Mathieu Maret
7c227a730c debug output serial into a file 2021-11-03 23:36:48 +01:00
Mathieu Maret
afb622e17a ATA: write do not block forever 2021-11-03 23:00:20 +01:00
Mathieu Maret
e94f87b798 Fix threadSwitch 2021-11-03 09:54:44 +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
7b60e1bdac Fix threadSwitch context 2021-11-02 22:00:31 +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
0040fb1cda Add basic test for process 2021-10-30 15:43:40 +02:00
Mathieu Maret
ec65623da4 Reduce kthead execution time 2021-10-30 15:34:13 +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
2c4ade0fca test show free mem before/after 2021-10-30 00:37:26 +02:00
Mathieu Maret
79a2bc58ae Integrate MMU context 2021-10-30 00:28:31 +02:00
Mathieu Maret
55e709adb5 allocArea: implement allocPhy failure case 2021-10-29 23:18:15 +02:00
Mathieu Maret
7081fea36d Fix areaAlloc map failing and tests 2021-10-29 17:48:06 +02:00
Mathieu Maret
d702c7b60e malloc: fix recursivity with areaAlloc 2021-10-29 12:34:33 +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
ca399ee782 Modify areaAdd api to be able to do more check 2021-10-28 18:33:02 +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
7b9ceba6b2 Give stack information to area 2021-10-28 00:32:35 +02:00
Mathieu Maret
9ae500f06e Add more test 2021-10-27 17:39:17 +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
2c6ffe34a1 Allow to unref unrefered page 2021-10-27 17:26:49 +02:00
Mathieu Maret
4aa093034b Page fault: more information 2021-10-27 17:20:28 +02:00
Mathieu Maret
fbb51dff0f Fix Area research and init size 2021-10-27 17:17:41 +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
8a53ecfecd VGA: could be configured from MBI 2021-10-25 21:29:02 +02:00
Mathieu Maret
8ff10c938c Improve print information from mbi 2021-10-18 20:39:08 +02:00
mathieu
d2accf3da6 Merge pull request 'ASM_WRAPPER' (#3) from ASM_WRAPPER into master
Reviewed-on: http://git.mathux.org/mathieu/matos/pulls/3
2021-10-08 17:07:17 +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