【问题标题】:How to write an operating system [closed]如何编写操作系统[关闭]
【发布时间】:2014-09-26 12:36:31
【问题描述】:

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

【问题讨论】:

  • 据我所知,大多数操作系统学期项目都采用最小的开源操作系统,例如 MINIX,并添加/重新设计一个主要组件,例如任务调度程序。这是一项艰巨的任务,但仍然比完成整个操作系统更容易实现。
  • osdev.org 是一个好的开始

标签: linux operating-system


【解决方案1】:

您必须定义确切的含义 - 简单的操作系统:

  1. 此系统是否只能在特定硬件上工作 - 例如嵌入式平台?
  2. 您想使用哪些用户空间程序?
  3. 您打算使用 Linux 中的某些组件吗?
  4. 您要实现设备驱动程序吗?

有很多关于它的问题。首先,您必须考虑到,即使您编写自己的文件系统, 您必须编写一个能够根据您的文件系统结构等格式化磁盘的程序。 例如,对于像 libc 这样的库,情况也是如此。所以首先要考虑的是,什么应用程序能够在这个系统上运行 如果您想编写它们,或者您想使用适用于其他系统的应用程序。在第二种选择的情况下, 你的系统有支持,至少有一部分 Linux 系统(如果你想启动 Linux 应用程序)调用,什么都不好做,尤其是 当我们进行诸如 epoll、select 等这样的系统调用时。我觉得如果你只有半年,那就写一些类似DOS的东西。 然后您不必实现自己的驱动程序来从磁盘读取某些内容或在屏幕上打印某些内容。你可以看看源码 使用 bios 的引导加载程序 (grub1) 会中断它是如何完成的。接下来实现简单的内存管理和进程调度。然后可能非常基本 文件系统。这是我个人会关注的,但仍然没有足够的信息。

【讨论】:

  • 首先。非常感谢。我希望这个系统在 x86 上工作。我想使用 Linux 的一些组件,也想实现设备驱动程序。但是像你说的那样,我只有一半一年。也许完成它非常困难。
猜你喜欢
  • 1970-01-01
  • 2012-10-07
  • 2011-11-19
  • 2013-08-18
  • 2011-10-31
  • 2019-07-04
  • 1970-01-01
  • 2022-10-01
  • 2018-10-19
相关资源
最近更新 更多