Unix (Linux) 系统能否像 (Apple/Microsoft) DOS 一样从 CLI 启动 GUI?

Unix (Linux) 系统能否像 (Apple/Microsoft) DOS 一样从 CLI 启动 GUI?

我第一次接触 CLI(以及通常的计算机)涉及启动到命令提示符,通常插入光盘,然后加载全屏 GUI 程序,该程序在我们今天通常看到的基于 GUI 的操作系统中没有窗口。

事情是这样的。开机>>提示>>装载洛奇的靴子>>
启动洛基的靴子 >> 退出 >> 提示

我从未见过这种情况发生在基于 Unix / Linux 的系统上,直接加载到图形程序而不是在窗口操作系统环境中 - 只有基于 ascii 的程序,如 Space Invaders 或 VIM。是否有能力执行前面提到的类似 DOS 的 8 位图形程序加载(我强调,不是在 OSX 或 Unity 等窗口中)?如果不是,为什么会不同?

答案1

是的,有些程序(历史上)在 *nix 系统上的工作方式类似。

我能立即想到的两个很好的例子是最初的经典地震(已经有 20 多年的历史了,而且仍然很糟糕!),当然还有 X windows 系统。

第一个是相当明显的 - 它在 DOS 系统上以这种方式工作,并且使用 *nix 您可以进行软件渲染并使用 SVGALIB 二进制文件,并且您可以从纯命令行系统启动到游戏中,正如您在问题中所描述的那样。不需要 X 窗口。

但是我所说的 X windows 系统是什么?您必须记住,X 不是操作系统的一部分,它本身就是一个(主要是)用户态应用程序。如果您启动 X 服务器并且不告诉它查询登录服务器(即,通过 XDMCP 的远程设备或什至本地计算机)来启动/显示显示管理器/登录/问候语,您只会得到一个灰色的哈希标记屏幕用你的光标。甚至可以配置图形应用程序以使用该根级窗口(第一个“窗口”)作为其显示,并且如果没有运行窗口管理器,您将无法获得关闭/最小化/最大化按钮,可能也无法获得滚动条,没有标题栏可供抓取和拖动等。信息亭系统、销售点系统等往往会这样做。不完全是您在问题中引用的内容(尽管雷神之锤是......),但行为非常相似。

答案2

你的问题很难完全理解,但我认为你是在问在 Linux 中是否可以从文本模式控制台启动图形程序,而无需典型的(基于 X 或 Wayland 的)GUI。

答案是肯定的,而且一直都是(至少在 Linux 上)。多年来,实现这一目标的机制已经发生了变化。目前,支持此类功能的程序通常使用帧缓冲区(又名fbdev,通常使用名为libdirectfb.示例包括 VLC 和 mplayer,因此您无需运行 X 或 Wayland 服务器即可播放视频。 X和Wayland也是例子,它们也支持fbdev,但它们通常使用其他机制(带有DRM的KMS,或特定驱动程序)。

过去,许多游戏使用名为 SVGAlib 的库来支持此功能,但很长时间以来都没有得到支持。这方面的例子包括《末日》、《雷神之锤》、《滥用》……

相关内容