Commit Graph

48 Commits

Author SHA1 Message Date
Mark a71a024348 Add size pretty-printing 2019-09-30 10:39:38 +03:00
Mark 6f35ab11a5 [amd64] Remove test module 2019-09-24 18:21:40 +03:00
Mark b0b7667ec3 [amd64] Add initrd loading support 2019-09-24 18:15:17 +03:00
Mark 131f6963ab Add syscall description file 2019-09-23 12:21:57 +03:00
Mark 789a3ee1a3 [amd64] Move arch/amd64 -> sys/amd64 2019-09-23 11:40:44 +03:00
Mark 47df8cc7ce Move to BSD-ish source tree design 2019-09-23 11:36:15 +03:00
Mark f6c29e3414 [amd64] Implement kernelspace mm_space_t cloning 2019-09-22 12:06:59 +03:00
Mark 8843ff38aa Add systick counter 2019-09-20 23:20:42 +03:00
Mark 5c7e918460 Proper kernel [kidle] thread 2019-09-20 23:07:20 +03:00
Mark 542529a8e6 [amd64] Test kernel+2userspace threads, works 2019-09-20 22:26:51 +03:00
Mark 4f70b699f2 [amd64] Implement SYSCALL/SYSRET instructions instead of int $0x80 2019-09-20 22:07:53 +03:00
Mark edfac823c7 [amd64] Userspace TSS/multithreading 2019-09-20 21:12:13 +03:00
Mark c5ffd32898 [amd64] Fix RSP0 not getting saved (threads restarting), add int $0x80 2019-09-20 15:07:19 +03:00
Mark 49928b0a2b Add sys/assert.h 2019-09-20 14:14:38 +03:00
Mark b097abd8c2 [amd64] Kernelspace thread preemption 2019-09-20 13:43:58 +03:00
Mark 5e078f122e Pretty-printing in makefile 2019-09-19 21:57:17 +03:00
Mark becf1ccc54 [amd64] amd64 vmalloc/vmfree, slight changes to map.c 2019-09-19 18:52:15 +03:00
Mark 61f9ebbdae Add sys/types.h impl 2019-09-18 23:26:47 +03:00
Mark fe71e36814 [amd64] Use cross-compiler toolchain instead 2019-09-18 23:22:09 +03:00
Mark 5e54ed23b2 Fix modeline for vmalloc.h 2019-09-18 17:32:00 +03:00
Mark c1c00e3285 [doc] Add spec for vmalloc, add file headers 2019-09-18 17:30:53 +03:00
Mark 99826db34f Fix include location for headers 2019-09-18 16:42:09 +03:00
Mark 07d158f2a6 [doc] Docs on heap 2019-09-18 16:23:11 +03:00
Mark b24297d248 [amd64] Add kernel heap 2019-09-18 15:34:59 +03:00
Mark 70e5b17753 Add heap specification header 2019-09-18 12:54:49 +03:00
Mark 65e7336d6c [amd64] Linker optimizations
Merged .rodata into .text section (don't think there's anything
magical/different from .text). Set max page size to 0x1000 (just in case
gcc tries to produce huge binaries), also removed shared-linkage .got
and .got.plt sections (+ removed .eh_frame section as there're no
exceptions).
2019-09-18 12:33:57 +03:00
Mark f5d99d6b2f [amd64] Stricter warnings for loader 2019-09-18 11:32:56 +03:00
Mark be9eba16ac [amd64] Add available memory to phys. pool 2019-09-18 11:29:16 +03:00
Mark 7c056aa005 [amd64] Add amd64_phys_alloc/free_page() 2019-09-17 18:56:03 +03:00
Mark a5c71af69c [amd64] Get memory map/GRUB info from loader 2019-09-17 16:37:03 +03:00
Mark 83fe3a58d8 [amd64] pool.c: kfatal -> panic 2019-09-17 15:56:07 +03:00
Mark df5803ed69 [amd64] Fix acpi signature checking 2019-09-17 15:50:14 +03:00
Mark ec6005054d [amd64] added HPET implementation 2019-09-17 14:38:17 +03:00
Mark c659189a76 [acpi] Add support for ACPI FADT/HPET location 2019-09-16 16:10:09 +03:00
Mark 51e0ac1374 [amd64] timer configuration 2019-09-16 13:57:53 +03:00
Mark bcd067a894 [test] Page mapping trace 2019-09-16 13:34:10 +03:00
Mark fb396e0010 Added mm_describe 2019-09-16 13:20:59 +03:00
Mark 256171f69a Restructure source files 2019-09-16 12:40:00 +03:00
Mark bf32ccb5b6 [amd64] add all irq mappings and stub for nyi irqs 2019-05-03 14:04:37 +03:00
Mark e565006abc [amd64] pool alloc/free clarify 2019-05-03 13:52:46 +03:00
Mark a18d16a19a [amd64] add 4K-page mapping + page pool allocation 2019-05-03 13:46:51 +03:00
Mark 545ce00021 [amd64] add page structure pool alloc/free 2019-04-03 12:31:53 +03:00
Mark cbab36dd2b [amd64] timer irq 2019-03-25 17:04:33 +02:00
Mark 29ebc06bee [amd64] idt and exceptions 2019-03-25 16:43:09 +02:00
Mark 4d27fcac0b [amd64] basic init 2019-03-23 13:12:50 +02:00
Mark f77bcef38e [amd64] kernel loading 2019-03-22 13:14:19 +02:00
Mark a0b723599d [amd64] loader debug printing 2019-03-21 17:40:19 +02:00
Mark 2b727fc7c6 [*] initial commit 2019-03-21 16:42:12 +02:00