Linux 如何编写操作系统

Linux 如何编写操作系统,linux,operating-system,Linux,Operating System,我是一个中国女孩,我是一个高中生,所以我需要做毕业设计,我想写一个简单的操作系统,它可以运行和做一些简单的事情。我希望你能提供一些有用的书籍和网站来学习,以便完成这项工作。我也只有半年的时间来完成它。非常感谢。你必须定义,确切的意思是什么-简单操作系统: 该系统是否只在特定的硬件上工作?例如嵌入式平台? 您希望使用哪些用户空间程序? 您打算使用Linux的一些组件吗? 是否要实现设备驱动程序? 关于它有很多问题。首先,您必须考虑到,即使您编写自己的文件系统, 您必须编写一个能够根据文件系统结构等

我是一个中国女孩,我是一个高中生,所以我需要做毕业设计,我想写一个简单的操作系统,它可以运行和做一些简单的事情。我希望你能提供一些有用的书籍和网站来学习,以便完成这项工作。我也只有半年的时间来完成它。非常感谢。

你必须定义,确切的意思是什么-简单操作系统:

该系统是否只在特定的硬件上工作?例如嵌入式平台? 您希望使用哪些用户空间程序? 您打算使用Linux的一些组件吗? 是否要实现设备驱动程序? 关于它有很多问题。首先,您必须考虑到,即使您编写自己的文件系统, 您必须编写一个能够根据文件系统结构等格式化磁盘的程序。 例如,对于libc这样的库,情况也是如此。所以首先要考虑的是,哪些应用程序能够在这个系统上运行。 如果您想要编写它们,或者您想要使用用于其他系统的应用程序。在第二种选择的情况下, 你的系统有支持,至少是Linux系统的一部分如果你想启动Linux应用程序调用,有什么不容易做的,尤其是 当我们进行诸如epoll、select等系统调用时。我认为如果你只有半年的时间,那么就写一些类似于DOS的东西。 然后,您不必实现自己的驱动程序来从磁盘读取某些内容或在屏幕上打印某些内容。你可以看看这些数据的来源 使用bios的引导加载程序grub1会中断它的执行方式。接下来实现简单的内存管理和进程调度。那可能很基本
文件系统。这是我个人关注的,但仍然没有足够的信息

据我所知,大多数操作系统学期项目都采用最小的开源操作系统,如MINIX,并添加/重新设计一个主要组件,如任务调度器。这是一项重大任务,但比完成整个操作系统更容易实现。首先是一个很好的开始。非常感谢。我希望这个系统在x86中工作。我想使用Linux的一些组件,还想实现设备驱动程序。但是就像你说的,我只有半年的时间。也许完成它很困难。