中文

基于 C# 的网卡驱动开发

软件工程 2021-07-28 v1

摘要

在开发者社区中,驱动程序具有特殊地位,被视为神秘且难以触及。我们认为其与硬件的广泛通信以及对高性能的需求是这一不佳声誉的成因。一种普遍观点认为,这两项要求无法使用高级语言满足。然而,近年来高级语言的编译器与运行时在提升程序性能方面取得了巨大进步。使用这些语言还能通过处理内存分配与访问等易错部分,显著减少程序员引入的缺陷与安全问题。我们也认为使用高级语言有助于揭开驱动开发的神秘面纱。在本项目中,我们尝试用 C# 为英特尔 82599 网卡开发驱动程序。我们的目标是探明此类开发的可行性及该驱动的性能。我们也将能指出当前 C# 在编写驱动程序方面所缺失的内容。我们的驱动基于 Pirelli (2020) 提出的模型及其 C 语言实现。

关键词

引用

@article{arxiv.2107.12833,
  title  = {Development of a NIC driver in C#},
  author = {Samuel Chassot},
  journal= {arXiv preprint arXiv:2107.12833},
  year   = {2021}
}