【问题标题】:What is XV6 operating system used for?XV6 操作系统是用来做什么的?
【发布时间】:2020-02-16 08:14:00
【问题描述】:

我一直在上操作系统的在线课程,听他们说,XV6操作系统可以用来学习操作系统的实现,仅此而已。但是我在网上搜索后没有足够的资源,这会让我开始使用它。 我的问题是,我为什么要使用它,以及它将如何帮助我理解操作系统。 (请对您向我提供的信息保持温和,我是新手:()

感谢任何努力

【问题讨论】:

  • 有趣的是,几天前我从另一个问题打开了它的链接。它似乎是麻省理工学院制作并用于他们的课程的教育版 linux。 pdos.csail.mit.edu/6.828/2019/xv6.html
  • 它可能与Linux无关,除了工具链。了解这些东西如何在教学/学习中发挥作用的最佳方式是阅读 A. Tanenbaum 的经典著作:en.wikipedia.org/wiki/…
  • @Eraklon 它不是 Linux 的一个版本,而是一个 Unix 克隆(不像 BSD 或 Mac OSX 那样,不是 Unix 的直接后代)

标签: c operating-system trigonometry software-design xv6


【解决方案1】:

只有两种可能:

  • 太复杂了,不适合教学

  • 太简单了,对教学没用

诸如花哨的特性/增强功能、缓解安全问题、处理硬件错误/勘误表、性能、可扩展性以及支持非常广泛的不同硬件之类的事情都会增加代码的复杂性;如果你看一个真正的商业操作系统(例如 Linux 可能),它必须关心所有这些事情,那么很难了解一件事(例如内存管理)而没有所有的复杂性阻碍并使其学习变得更加困难.

如果您有一个简单的操作系统,它什么都不做(没有花哨的功能,没有缓解安全问题,...),那么从中学习基本原理要容易得多;但也无法使用它来了解花哨的功能、缓解安全问题、处理硬件错误/勘误表,...

解决方案是从一个简单的操作系统(例如 XV6)开始学习基础知识,然后切换到真正的操作系统来学习其他所有内容。

但是;大多数大学的操作系统课程都不是为了教你编写操作系统。相反,它们旨在为您提供有关操作系统的基本信息,以便您在为现有操作系统编写应用程序时可以使用这些知识。出于这个原因(并且因为有时间限制),他们只做第一部分(使用像 XV6 这样的简单操作系统),然后课程结束。

【讨论】:

    【解决方案2】:

    1.XV6 用于许多大学的教学。

    2.它也是许多程序的工具操作系统

    【讨论】:

    • 请注意,您回答的问题已经有一个被接受的答案,他们都是 4 岁,您的回答并没有真正添加任何新内容。如果答案实际上为提出问题的人或遇到相同问题的其他人提供了一些见解,则 StackOverflow 效果最好。请尽量在以后的帖子中记住这一点,非常欢迎您这样做。哦,热烈欢迎 StackOverflow。
    猜你喜欢
    • 1970-01-01
    • 2022-01-21
    • 2011-02-16
    • 2016-04-15
    • 2022-01-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-18
    相关资源
    最近更新 更多