打印到屏幕内核基础知识

时间:2019-07-08 19:06:30

标签: c optimization flags video-card

此代码可与-O标志一起使用,但不能与-O标志一起使用,也不能与-O2和-O3标志一起使用:

void putc(char c)
{

  static char *video = 0xb8000;

  *video = c;
  //video+=2;

}

void puts(char * s)
{

  for(;*s;) putc(*s++);

}

void start_kernel(void)
{

  putc('a');

  for(;;);

}

尽管该代码在将字符写入缓冲区后相差一行,但该代码也没有标记-O标志和-O2标志,什么也不显示:

void putc(char c)
{

  static char *video = 0xb8000;

  *video = c;
  video+=2;

}

void puts(char * s)
{

  for(;*s;) putc(*s++);

}

void start_kernel(void)
{

  putc('a');

  for(;;);

}

我正在使用GRUB加载我的“内核”,所以我很确定A20线已解锁并且...

我不知道发生了什么事...

0 个答案:

没有答案