[kernel] Move the logger from kutil into kernel

Part one of a series of code moves. The kutil library is not very
useful, as most of its code is kernel-specific. This was originally for
testing purposes, but that can be achieved in other ways with the
current build system. I find this mostly creates a strange division in
the kernel code.

Instead, I'm going to move everything kernel-specific to actually be in
the kernel, and replace kutil with just 'util' for generic utility code
I want to share.

This commit:

- Moves the logger into the kernel.
- Updates the 'printf' library used from mpaland/printf to
  eyalroz/printf and moved it into the kernel, as it's only used by the
  logger in kutil.
- Removes some other unused kutil headers from some files, to help
  future code rearrangement.

Note that the (now redundant-seeming) log.cpp/h in kernel is currently
still there - these files are more about log output than the logging
system, and will get replaced once I add user-space log output.
This commit is contained in:
Justin C. Miller
2022-01-01 18:02:11 -08:00
parent 99de8454cd
commit 042f061d86
19 changed files with 1379 additions and 892 deletions

View File

@@ -26,6 +26,7 @@ kernel = module("kernel",
"interrupts.s",
"io.cpp",
"log.cpp",
"logger.cpp",
"memory_bootstrap.cpp",
"msr.cpp",
"objects/channel.cpp",
@@ -38,6 +39,7 @@ kernel = module("kernel",
"page_table.cpp",
"page_tree.cpp",
"pci.cpp",
"printf/printf.c",
"scheduler.cpp",
"serial.cpp",
"syscalls/channel.cpp",