void printk_color(real_color_t back, real_color_t fore, const char *format, ...) { va_list args; va_start(args, format); const char *string = get_printk_string(format, args); va_end(args); console_write_color(string, back, fore); }
void cprintk(real_color_t color, const char * format, ...) { static char buf[10240]; va_list args; int len; va_start(args, format); len = vsprintf(buf, format, args); va_end(args); if (len > 0) { console_write_color(buf, rc_black, color); } }
void printk_color(real_color_t back, real_color_t fore, const char *format, ...) { // 避免频繁创建临时变量,内核的栈很宝贵 static char buff[1024]; va_list args; int i; va_start(args, format); i = vsprintf(buff, format, args); va_end(args); buff[i] = '\0'; console_write_color(buff, back, fore); }