kprint.h 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. /**
  2. * @file kprint.h
  3. * @author longjin
  4. * @brief 内核日志打印程序
  5. * @date 2022-01-28
  6. *
  7. * @copyright Copyright (c) 2022 longjin
  8. *
  9. */
  10. #pragma once
  11. #include "printk.h"
  12. #define ksuccess(...) \
  13. do \
  14. { \
  15. printk("[ "); \
  16. printk_color(GREEN, BLACK, "SUCCESS"); \
  17. printk(" ] "); \
  18. printk(__VA_ARGS__); \
  19. printk("\n"); \
  20. } while (0)
  21. #define kinfo(...) \
  22. do \
  23. { \
  24. printk("[ INFO ] "); \
  25. printk(__VA_ARGS__); \
  26. printk("\n"); \
  27. } while (0)
  28. #define kdebug(...) \
  29. do \
  30. { \
  31. printk("[ DEBUG ] (%s:%d)\t", __FILE__, __LINE__); \
  32. printk(__VA_ARGS__); \
  33. printk("\n"); \
  34. } while (0)
  35. #define kwarn(...) \
  36. do \
  37. { \
  38. printk("[ "); \
  39. printk_color(YELLOW, BLACK, "WARN"); \
  40. printk(" ] "); \
  41. printk(__VA_ARGS__); \
  42. printk("\n"); \
  43. } while (0)
  44. #define kerror(...) \
  45. do \
  46. { \
  47. printk("[ "); \
  48. printk_color(RED, BLACK, "ERROR"); \
  49. printk(" ] "); \
  50. printk(__VA_ARGS__); \
  51. printk("\n"); \
  52. } while (0)
  53. #define kterminated(...) \
  54. do \
  55. { \
  56. printk("[ "); \
  57. printk_color(RED, BLACK, "TERMINATED"); \
  58. printk(" ] "); \
  59. printk(__VA_ARGS__); \
  60. printk("\n"); \
  61. } while (0)
  62. #define kBUG(...) \
  63. do \
  64. { \
  65. printk("[ "); \
  66. printk_color(RED, BLACK, "BUG"); \
  67. printk(" ] (%s:%d)\t", __FILE__, __LINE__); \
  68. printk(__VA_ARGS__); \
  69. printk("\n"); \
  70. } while (0)