加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
kernel.cpp 575 Bytes
一键复制 编辑 原始数据 按行查看 历史
sunbingteng 提交于 2021-07-27 20:09 . add types.h
#include "types.h"
void printf(char* str)
{
static uint16_t* VideoMemory = (uint16_t *)0xb8000;
for(int32_t i = 0;str[i] != '\0';i++)
{
VideoMemory[i] = (VideoMemory[i] & 0xFF00) | str[i];
}
}
using constructor = void(*)();
extern "C" constructor start_ctors;
extern "C" constructor end_ctors;
extern "C" void callConstructors()
{
for (constructor* i = &start_ctors;i != &end_ctors;i++)
(*i)();
}
extern "C" void kernelMain(const void *multiboot_structure, unsigned int magicnumber)
{
printf((char*)"Hello World");
while(1);
}
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化