让我们假设我使用汇编语言编写了一个原始的bootloader。 计算机仍处于实模式。现在我想用C语言编写原始内核和shell。 问题:
1.我是否需要在这个新操作系统的程序集中编写C语言编译器,还是可以使用在不同操作系统上运行的C编译器?我猜它可能都是!
2.如果我使用来自不同操作系统的C编译器,可以编译printf()等函数来定位BIOS的函数而不是OS的API以避免依赖吗?
3.如果我的bootloader 将计算机切换到保护模式,内核需要实现与BIOS功能相同的功能吗?
4.对问题3假设是:如果我使用来自不同操作系统的C编译器,那么使它成为新的OS内核函数的目标是什么?重写头文件?
(EDIT)PD:这些是理论问题。我不需要有关实际实现的具体细节。我只想验证这些概念。不觉得有责任回答所有这些问题!
答案 0 :(得分:1)