9得票11回答
哪个适合初学者内核开发的轻量级Linux发行版最好?

在我的操作系统课上,我们打算用C语言修改Linux内核,加入一些简单的系统调用。 哪个发行版适合这个目的呢?我们不需要任何花哨的东西,没有图形界面,只要一个原始的内核等等。基本的越简单越好。

116得票20回答
如何在旧台式电脑上构建一个小型操作系统?涉及IT技术。

我知道写一个操作系统非常复杂,尤其是一个人。 我不指望能建立下一个Linux或Windows。 我知道它会很糟糕、很多错误,并且无法正常工作,但这没关系。 我想用Assembly、C和(一些)C++自己编写所有东西。 这是一个未来的项目,因为我现在忙于其他事情,没有立即的时间,但我想...

308得票4回答
如何在没有操作系统的情况下运行程序?

如何在没有操作系统运行的情况下单独运行程序?您可以创建汇编程序,使计算机能够在启动时加载和运行它们,例如从闪存驱动器引导计算机并运行CPU上的程序吗?

7得票1回答
内存映射显示的RAM比实际可用的RAM更多

我正在开发一个小型的x86内核。我正在访问并尝试读取GRUB在multiboot头中提供的内存映射。我的计算机使用Intel i3处理器和4 GiB内存。在此计算机上运行时,我正在读取以下内存映射: --Base Address-- --Length-- --T...

7得票1回答
使用grub2创建一个简单的多引导内核

我正在尝试按照此处的说明构建一个简单的操作系统内核:http://mikeos.sourceforge.net/write-your-own-os.html 但是,我想创建一个基于grub的ISO镜像,并在模拟器中启动multiboot CD。我已经根据该页面上列出的源代码添加了以下内容,用...

9得票4回答
如何将一个512字节的bin文件写入软盘的第一扇区(第0扇区)?

如何将 .bin 文件写入软盘/虚拟软盘/软盘镜像的第一个扇区? 我正在尝试引导一个简单的512字节引导加载程序。无处都标明大小为“512字节”,所以应该已经很好了。 附加信息: 引导加载程序只是显示一个字符串,我正在学习简单汇编语言。有些工作在 Windows 上完成,有些在 Ubu...

610得票28回答
操作系统开发的入门资源有哪些?

我一直想做的事情是开发自己的操作系统(不一定像Linux或Windows那样花哨,但比我已经完成的简单引导程序要好)。 我很难找到超过编写简单的“Hello World”操作系统的资源/指南。 我知道很多人可能会推荐我看Linux或BSD;但是像那样的系统代码库(据推测)非常庞大,我不知道...

19得票17回答
对于内核/操作系统,C仍然是主要语言吗?

我喜欢操作系统,并希望最终成为一个主要从事内核开发的操作系统开发者。在未来,C语言还会是首选语言吗?我应该学习什么其他的东西呢?

7得票1回答
在预处理器宏中理解行内汇编与在函数中的行内汇编

GGC的内联汇编实现起来可能很困难,容易出错1。从更高层面来看,内联汇编有一些规则必须考虑,超出了内联汇编语句可能发出的指令asm。标准认为C/C++是一个选项和实现定义。GCC文档记录了实现定义行为包括以下内容:documented in GCC 即使使用volatile限定符,也不要期...

16得票3回答
x86汇编中的保护模式键盘访问

我正在开发一个非常基础的内核,需要实现键盘输入功能,但是我遇到了困难。我在网上找不到任何能够提供我所需信息的资料。 我的内核目前在保护模式下运行,因此无法使用实模式键盘例程而不必跳转到实模式再返回,这正是我想要避免的。我希望能够从保护模式中访问我的键盘。有人知道该如何实现吗?到目前为止,我只...