peredOS/kernel/logger.c
msh356 884b58f304 MULTIPLE: 2 изменения
CHORE: удалено лишнее
ROADMAP: закрыто 2 пункта
2026-07-01 19:18:37 +03:00

38 lines
1,010 B
C

#include "logger.h"
#include "../drivers/serial.h"
#include "../drivers/vga.h"
void logger_init(void) {
serial_init();
log_info(LOG_NORMAL, "Logger ready");
}
void klog(log_level_t level, const char* prefix, const char* message) {
// 1. Форматируем и отправляем в Serial в любом случае
kprint_serial("[");
kprint_serial(prefix);
kprint_serial("] ");
kprint_serial(message);
kprint_serial("\n");
// 2. Если уровень LOG_NORMAL, дублируем вывод на экран VGA
if (level == LOG_NORMAL) {
vga_print("[");
vga_print(prefix);
vga_print("] ");
vga_print(message);
vga_print("\n");
}
}
void log_info(log_level_t level, const char* message) {
klog(level, "INFO", message);
}
void log_warn(log_level_t level, const char* message) {
klog(level, "WARN", message);
}
void log_error(log_level_t level, const char* message) {
klog(level, "ERROR", message);
}