0

实现一个“统一的”系统调用库有多实用?这样的库将是操作系统实际系统调用的包装器。这样,您可以编写使用此“​​统一系统调用库”的代码,然后该库将为您处理等效的特定于操作系统的调用(您需要为每个操作系统制作不同版本的库)。这将允许轻松创建便携式应用程序。

我想这就是 wine 所做的,但 wine 仅用于在 linux 上运行 windows 应用程序。我在问一些允许您在多个操作系统上运行任何兼容应用程序的东西。

这已经完成了吗?

编辑:

或者,更好的是,使用现有的流行标准(POSIX?)并为 windows、mac 等操作系统调用制作包装器,以便任何 POSIX 应用程序都可以在这些相应的操作系统上运行。

双重编辑:

经过一番思考,我意识到这已经是很多图书馆所做的。但是由于某种原因,似乎遗漏了一些调用(否则为什么不是所有应用程序都可以跨操作系统移植?)

4

1 回答 1

0

当然,Posix 的目标是统一操作系统。特别是,有一章是关于 C 函数的。在 Linux、BSD 和 *nix 下,glibc 与 Posix 保持一致。在 Windows 下,您必须安装 Cygwin。如果您编写符合 Posix 标准的程序,它将在 Linux + glibc、Windows + cygwin 等下运行......

不幸的是,Posix 没有定义与硬件的通信。与硬件的通信方式是异构的,并且取决于操作系统和硬件种类。

于 2013-06-26T15:10:08.743 回答