【问题标题】:Is it possible a unix or linux for 80286 machine (or any machine without memory page mechanism)80286机器(或任何没有内存页面机制的机器)是否可能是unix或linux
【发布时间】:2011-06-30 01:41:25
【问题描述】:

是否可以为 80286 机器(或任何没有分页内存机制但具有分段内存的机器)提供 Unix 操作系统?

80286是没有TLB、Page tables的CPU;只有分段虚拟内存和内存分段保护。

这样的机器上可以装Linux吗?

UPD:处理器很旧,所以我只询问历史版本,而不是超现代的 linux 2.6.42.11 或 Solaris 13 或 FreeBSD 10 或 ...

【问题讨论】:

  • Linux 还是 Unix?请让您的问题与您的标题相符!
  • 任何与 unix 兼容或类 unix 的操作系统。 Linux 或 Unix 或 BSD 或任何类似 unix 的东西
  • 确实有个 Unix 可以在 80286 上运行——我想到了 Xenix——但我不知道是否有任何东西可以实现你所说的现代编程环境。
  • @Zack,它是 286 个 unix 兼容操作系统的示例,它使用段的内存保护。我不想使用这个旧操作系统,但我想知道 80286 上是否有任何带有内存保护的 unix。我确实阅读了一个常见问题解答,您只应提供 QA1 答案的引用。
  • 我不认为它是您问题的答案,我不会移动它。

标签: linux unix x86 segments


【解决方案1】:

Linux/Microcontroller project (µClinux) 是 Linux 到没有内存管理单元 (MMU) 的系统的一个端口。

还有较早的 ELKS 项目。

但是,由于缺少 MMU,许多标准 UNIX 功能(如 forkmmap)不受支持。

【讨论】:

  • 操作系统可以模拟带段的MMU吗?
  • @osgx 是的。这是可能的,但它使编程变得更加困难。
【解决方案2】:

今天的 Linux 只能编译为 486 或更高版本。所以不太可能。我确实记得 386 在 2.4.x 时代得到了一定程度的支持,但我不记得关于 286 的任何事情。

【讨论】:

  • Linux 从 0.01 版开始是为 386 编写的(看看每个 linux 用户圣经的第一句话:“这是一个免费的类似 minix 的内核,用于基于 i386(+) 的 AT 机器,”kerneltrap.org/node/14002 )。但是可以有一个反向移植项目。
【解决方案3】:

用户 Zack 说 Xenix(基于原始 UNIX)能够在 80286 上运行:

肯定有 Unix 运行在 80286 上——我想到了 Xenix——但我不知道是否有任何东西可以实现你所说的现代编程环境。

我查过了,Xenix 常见问题解答http://www.uni-giessen.de/faq/archiv/sco-xenix/msg00000.html

QA1 ... PC/AT 提供了硬件内存保护,SCO Xenix/286 充分利用了它。

所以它是一个 PC/AT (80286) unix,它确实使用了使用分段内存的内存保护(与使用基于页面的内存保护的现代 unix 不同)。

根据http://www.deinmeister.de/x86modes.htm 80286 仅对段进行内存保护,而不是页(页是在 80386 中添加的)。

【讨论】:

    【解决方案4】:

    不确定你对它的编程有多感兴趣(如果有的话),但我不久前在玩麻省理工学院的 OpenCourseWare 课程,他们有一个移植到 x86 的 Minix 版本(不确定它是否只是是否为 386+,似乎无法再找到链接)。无论如何,如果您有兴趣,可以在这里查看:MIT OpenCourseWare Operating System Engineering

    【讨论】:

      【解决方案5】:

      我怀疑。 From the very beginning,Linux 是为 386 设计的,使用 386 特有的功能。另一方面,MINIX 早于 386(和 286),因此应该有兼容 286 的版本。

      【讨论】:

      • 感谢 Linus 原始消息的链接。但我问的更广泛一点,只是关于 linux。
      猜你喜欢
      • 2016-07-25
      • 2015-08-12
      • 2012-07-24
      • 2015-05-22
      • 1970-01-01
      • 2016-09-29
      • 1970-01-01
      • 2018-06-21
      • 1970-01-01
      相关资源
      最近更新 更多