古代硬件上的现代操作系统(i486SX,8 MB RAM)

Sla*_*ter 24 linux bsd distribution-choice

我最近购买了一台带有 8 MB RAM 和 Intel 486SX 的旧 Packard Bell 机器。我需要在该硬件上安装操作系统。我知道 FreeDOS 可能在这个系统上运行,但自然地,我对 C 提示符不像对bash.

所以,我想知道是否仍然维护着可以在该硬件上运行的类 Unix 操作系统?

MC6*_*020 22

如果您有可能在任何其他系统上进行交叉编译,我知道的唯一解决方案是 \xe2\x80\xa6 从源代码中自行完成,您将需要:

\n
    \n
  • Linux 内核。5.4版本应该适合。如果您非常小心地只选择您需要的驱动程序,它应该很适合 2 M

    \n
  • \n
  • Busybox(将许多常见的 UNIX 实用程序集成到一个小的可执行文件中),大小应约为 1 M

    \n
  • \n
  • 选择您的init系统(我会选择openrc,但是,正如评论中所建议的 busybox' init 可能会很好地满足您的需求)并使用最少数量的服务对其进行配置。

    \n
  • \n
\n

然后考虑可以用剩余的约 4 M 做什么

\n

当然,您必须忘记 X 服务器后面运行的所有内容。

\n

如果半图形化对你来说足够了,那么ncurses是恕我直言的遵循方式,我什至听说过基于 ncurses 的桌面环境,但从未尝试过。

\n

  • 换句话说,构建一个定制的 Linux 发行版。这可能有用。 (11认同)
  • X 应该能够在其上运行。也许不太好,但它应该运行。如果现代 X.org 版本太耗内存,90 年代中后期的 XFree86 版本应该可以解决问题。X 协议已经稳定了 3 多年,新客户端将“正常工作”。 (2认同)
  • 我不会选择 openrc;您将在无用的功能上浪费内存和磁盘空间。使用 busybox init 或最小的 init,它除了运行没有运行级别、服务管理等的平面启动脚本外什么也不做。 (2认同)
  • ncurses 链接是法语的有什么原因吗? (2认同)

Abd*_*lan 17

您可能需要做一些调整才能使用 sf。

更新:阅读这个Retrocomputing SE 问题


Ste*_*itt 10

阿卜杜拉·伊本·富兰\xe2\x80\x99s 答案给出了支持您的 CPU 的 BSD 和 Linux 发行版的指针,但是您\xe2\x80\x99 会发现 8MiB 的 RAM 太小了,无法对现代系统做任何有用的事情。

\n

另一种可能性是在 FreeDOS 之上运行 Unix 风格的程序(包括 Bash)。例如,DJGPP 项目提供了许多 GNU 程序的端口,包括 Bash 4.1。

\n

主要限制是缺乏多任务处理能力;如有必要,您还可以运行多任务程序(Windows 3.1、DESQview 等)。

\n


Edg*_*net 9

MC68020 建议您通过源代码交叉编译来构建自己的 Linux 系统。我不知道这是否是您的最佳解决方案\n但是,如果您打算探索这条路线,我建议您看看\nBuildroot项目。Buildroot 是一个针对嵌入式系统的 Linux 发行版。或者更确切地说,它可以被描述为用于构建您自己的自定义系统的工具箱。基本用法是:

\n
cd buildroot\nmake menuconfig\nmake\n
Run Code Online (Sandbox Code Playgroud)\n

Buildroot 负责下载、构建所有组件并将其集成到一个随时可用的磁盘映像中。

\n

默认配置(如果你不make menuconfig)仅为 i586 构建\n根文件系统。因此,在配置阶段,您至少应该:

\n
    \n
  • 选择 i486(菜单:目标选项 \xe2\x86\x92 目标架构变体)
  • \n
  • 选择加入 Linux 内核(菜单:内核)
  • \n
  • 选择引导加载程序(菜单:引导加载程序)
  • \n
\n

默认构建基于uClibc-ngBusybox 的系统,\n包括 Busybox 初始化系统。但您可以选择使用 muslglibc 来代替 uClibc;GNU coreutils 代替\nBusybox;systemV、OpenRC 或 systemd 而不是 Busybox 初始化系统;\n并安装一系列软件包。对于真正的最小系统,您可以\nt修剪内核 ( make linux-menuconfig)、libc ( make uclibc-menuconfig) 和 Busybox ( make busybox-menuconfig)。

\n

作为示例,下面是运行 dropbear ssh 服务器、nginx Web 服务器和 htop 进程查看器的嵌入式主板上的 Buildroot:

\n

htop 在 Buildroot 上运行

\n

请注意,此配置尚未针对小 RAM 占用空间进行优化。它使用 Linux 和 Buildroot 的默认设置,并添加了一些额外的软件包(特别是 dropbear、nginx 和 htop)。

\n

编辑:停止Web服务器和dropbear并登录\n串行控制台后,htop将内存使用情况报告为\xe2\x80\x9c7.53M/498M\xe2\x80\x9d,\nhtop本身是最大的进程,记忆方面。

\n

  • @TobySpeight:如果使用相同的配置(针对 i486 进行调整),确实,RAM 将相当满。但我没有尝试针对小 RAM 进行优化,因为主板有足够的内存。 (3认同)

Art*_*nov 8

以下是“轻量级”Linux 发行版的精彩概述:https://en.wikipedia.org/wiki/Light-weight_Linux_distribution

我刚刚尝试过 Damn Small Linux,不幸的是它只有在你有 12MB RAM 时才能工作。即使在我的虚拟机中,它也永远不会以 8MB RAM 启动expert vga=normal。也许你会更幸运。

  • @GuntramBlohm 那台机器可能在某个时候安装了 Windows 3.1、Trumpet Winsock 和 Mosaic 或 Netscape。如果现在仅限于命令行,那就很有趣了。 (6认同)
  • 问题是 - 不需要任何“现代”驱动程序,也不需要 X11,无论如何,用户会注意到 15 年旧系统和当前系统之间有什么区别?基本的 shell 命令和 ncurses 还没有发展那么多。当然,如果没有 TLS,互联网或多或少是不可能的,但是如果没有 GUI,您将使用哪种互联网服务呢? (2认同)