0

我想编写一个没有底层操作系统的 IO 密集型应用程序,在 x86 架构上运行并驱动任何现代网络接口控制器。

通过查看 Linux 的驱动程序源代码,我知道需要数千行代码来驱动例如 Intel e1000e 千兆位控制器。我认为这样的代码很难从 Linux 源代码中提取出来。

您是否知道任何解决方案/项目提供了一种驱动当今计算机(包括其 NIC)的方法,可能是通过包装 Linux 驱动程序?

非常感谢

4

2 回答 2

4

您必须编写一个驱动程序和一个操作系统(各种)来管理所有这些。调度、内存管理、带外 IO、IP 堆栈(如果您选择走那条路线)。为什么要重新发明轮子?获取实时 Linux 发行版,或获取 vxworks 或 QNX - 专为 IO 密集型需求而构建的东西。

于 2009-11-03T22:55:05.577 回答
1

UNDI是网络设备的通用编程接口,应该可以在所有支持 PXE 的网卡上工作(现在基本上都是这样)。

UNDI 设计为在真实(16 位无保护)模式下运行,这使得它无需操作系统即可轻松使用。(没有操作系统或像 DOS 这样的愚蠢操作系统比在 32 位或 64 位保护模式下运行的现代操作系统容易得多。)

于 2009-11-04T02:36:16.773 回答