Commit Graph

330 Commits

Author SHA1 Message Date
Mathieu Maret
5141044c06 use popal/pushal for context switch
Should take fewer clock nd save esp
2020-04-22 17:31:37 +02:00
Mathieu Maret
79c1fda419 Some defintion improvments 2020-04-22 16:54:30 +02:00
Mathieu Maret
5b681b3d87 Add docs links 2020-04-22 16:53:31 +02:00
Mathieu Maret
a19f4cb609 Set PIT IRQ in main
complete interrupt_frame struct and formatting
2020-04-22 16:52:54 +02:00
Mathieu Maret
7248cd75ae Use i386 qemu for debugging
This help going over function and not stepping in
2020-04-19 14:30:50 +02:00
Mathieu Maret
389452ec3f printf: also write on serial 2019-05-17 09:57:14 +02:00
Mathieu Maret
ca22696b29 klibc: put printf inside (instead of vga.h) 2019-05-17 09:35:23 +02:00
Mathieu Maret
de3c5e5dc2 Disable vect from compiler
Otherwise, this may produce vectorized instruction (mmx, sse ...) that
will rise a EXCEPTION_INVALID_OPCODE
2019-05-16 23:45:45 +02:00
Mathieu Maret
13f1dc7878 Multiboot: display mmap and mod informations
sample code from https://www.gnu.org/software/grub/manual/multiboot/html_node/kernel_002ec.html#kernel_002ec
have issue (c.f. https://forum.osdev.org/viewtopic.php?t=30318)
2019-05-16 23:24:54 +02:00
Mathieu Maret
3bca737990 Add context switch
This is taken from SOS
2019-05-15 23:22:28 +02:00
Mathieu Maret
03c74c68d6 Fix headers 2019-05-15 23:20:03 +02:00
Mathieu Maret
e1ac9ebd9d Fix iso generation
echo -e does not work on ubuntu
echo does. It's the opposite on archlinux...
Use printf!
2019-05-12 22:56:51 +02:00
Mathieu Maret
7a684d735c Fix iso generation 2019-05-10 16:31:33 +02:00
Mathieu Maret
3cda78532b test: add more malloc/free test 2019-04-17 23:47:25 +02:00
Mathieu Maret
340ae6a4d0 alloc: fix some naming. alloc up to page_size 2019-04-17 23:46:56 +02:00
Mathieu Maret
06c8562a80 alloc: reduce slabEntry size 2019-04-17 23:13:46 +02:00
Mathieu Maret
b3d38d8c9c alloc: split slab and slabEntry definition 2019-04-17 18:07:19 +02:00
Mathieu Maret
f2b0edc5a3 alloc: fix new slab allocation 2019-04-17 12:48:24 +02:00
Mathieu Maret
f90b9bd3fd alloc: fix indent 2019-04-17 12:06:54 +02:00
Mathieu Maret
f3a03f3965 test: memset the whole page 2019-04-17 12:06:08 +02:00
Mathieu Maret
8cf50c9a6e implement memcmp 2019-04-16 10:19:36 +02:00
Mathieu Maret
3f258485b9 implement free 2019-04-15 23:09:09 +02:00
Mathieu Maret
698490800f Alloc: selfContaining is optionnal 2019-04-15 22:49:10 +02:00
Mathieu Maret
f1b3895473 Alloc: could be initialized in random way
fix ENO usage
2019-04-15 21:35:47 +02:00
Mathieu Maret
6c91272fc2 alloc: slub implemented with list 2019-04-14 15:56:48 +02:00
Mathieu Maret
e03f0c0d78 Add test
Add test for alloc and add asert statement
2019-04-11 23:08:59 +02:00
Mathieu Maret
7def058cf4 Add slab allocator 2019-04-11 22:34:20 +02:00
Mathieu Maret
28309db7b9 Add printf for debug: pr_devel
Taken from linux kernel
2019-04-11 22:32:50 +02:00
Mathieu Maret
4e050d5364 Makefile: clean isodir 2019-01-09 17:21:51 +01:00
Mathieu Maret
df1fa005b3 stack: add comments 2019-01-09 16:20:06 +01:00
Mathieu Maret
0e6a80f6e5 klibc: add some helper 2018-11-22 17:41:18 +01:00
Mathieu Maret
432d8801e1 Complete pagefault handler 2018-11-20 17:43:19 +01:00
Mathieu Maret
8108c8f3ab klibc: add string related func 2018-11-20 17:03:57 +01:00
Mathieu Maret
e998fec795 stack_trace try to get function arguments 2018-11-19 13:57:07 +01:00
Mathieu Maret
dc0789aa72 makefile: reorg flags 2018-11-16 19:57:56 +01:00
Mathieu Maret
0bd91897b7 vga: add clearScreenLine 2018-11-16 19:56:38 +01:00
Mathieu Maret
27293c805c Add more info about segfault 2018-11-16 15:00:31 +01:00
Mathieu Maret
085857a900 Add backtrace function 2018-11-16 14:47:21 +01:00
Mathieu Maret
50fa9b7d24 implement %x in printf 2018-11-16 10:34:03 +01:00
Mathieu Maret
ac64b124da paging: fix free unused pte 2018-11-15 22:53:27 +01:00
Mathieu Maret
ea9e5f7f23 Fix cursor 2018-11-15 13:29:05 +01:00
Mathieu Maret
146a06f0e6 wip: add blinking cursor 2018-11-14 18:03:11 +01:00
Mathieu Maret
9b46b60b7a fix printIntDetails for 0 2018-11-14 15:45:34 +01:00
Mathieu Maret
4bbe08d8f5 Add count for allocated and mapped page 2018-11-14 14:28:06 +01:00
Mathieu Maret
56a16b9ea5 Add empty pagefault handler 2018-11-13 18:02:47 +01:00
Mathieu Maret
32f1a8ba9d Fix Paging Mapping
New PT entry should be set unsing the Vaddr, not the Paddr
2018-11-13 14:49:32 +01:00
Mathieu Maret
bff505fb40 fix printf for 0 2018-11-13 14:31:39 +01:00
Mathieu Maret
8f5c68efaf Fix flag usage 2018-11-13 10:37:28 +01:00
Mathieu Maret
a120647ecb TOFIX: implement testing for paging 2018-11-12 23:07:59 +01:00
Mathieu Maret
4a5f5674ce implement paging map and unmap 2018-11-12 23:02:27 +01:00