Commit Graph

191 Commits

Author SHA1 Message Date
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
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
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
146a06f0e6 wip: add blinking cursor 2018-11-14 18:03:11 +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
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
Mathieu Maret
63ce78205a Add errno.h 2018-11-12 23:02:27 +01:00
Mathieu Maret
fd153e305d fix self test 2018-11-12 18:06:46 +01:00
Mathieu Maret
18be89ebfe Basic MMU usage 2018-11-11 23:04:23 +01:00
Mathieu Maret
92f48d1851 more helping macro from linux 2018-11-09 22:36:45 +01:00
Mathieu Maret
4043eb50f7 mem: align upper bound on PAGE_SIZE
stole some macro from linux kernel
2018-11-09 22:32:21 +01:00
Mathieu Maret
93c8c87285 Add types.h to distinguish physical/virt mem 2018-11-09 21:50:08 +01:00
Mathieu Maret
149b197a65 mem: implement ref to physical page 2018-11-09 17:07:39 +01:00
Mathieu Maret
a7b6139f06 fix page alloc
And add some test for it
2018-11-09 16:30:42 +01:00
Mathieu Maret
cb65400d60 Fix some naming convention 2018-11-08 22:08:27 +01:00
Mathieu Maret
00d7004815 PIT/Serial irq refactoring
Serial IRQ still wip
2018-11-08 21:37:38 +01:00
Mathieu Maret
e4200782ac Add Serial driver 2018-11-08 21:11:45 +01:00
Mathieu Maret
6cb8b4372a Implement page allocation 2018-08-09 22:19:34 +02:00
Mathieu Maret
0930f2664a Take linked list implementation from SimpleOS 2018-08-09 14:38:52 +02:00
Mathieu Maret
9f1afe5f6b implement printf like function 2018-08-07 14:09:43 +02:00
Mathieu Maret
29f085b7aa Add va_list
and rename types.h into stdarg.h
2018-08-06 21:28:42 +02:00
Mathieu Maret
1f164a7a4e First step for memory management 2018-08-06 18:41:45 +02:00
Mathieu Maret
d51fff2d9d Retrieve multiboot information from bootloader 2018-08-05 15:09:32 +02:00
Mathieu Maret
05c78e5e0c Adapt GDT code to our codeing style
GDT code was taken from SOS project
2018-07-26 12:23:49 +02:00
Mathieu Maret
2c251fa51c Initial import from mbr_asm project 2018-07-20 15:42:51 +02:00