为基于AT命令的调制解调器的串行端口开发Mac OSX网络驱动程序

时间:2017-12-24 06:39:07

标签: macos serial-port modem network-driver

首先请允许我说,我没有开发OSX驱动程序的经验,也没有开发Windows驱动程序的经验。所以,有很多事情我不了解司机的工作方式;我确信它在我的问题中很明显。

我有一个能够使用AT命令打开和关闭TCP / UDP套接字的调制解调器。我想创建一种实现网络驱动程序的程序(内核扩展?驱动程序?),将网络接口调用转换为AT命令串行消息。

这是它的基本要点。我基本上会问是否有人可以指出我正确的方向/给我一个高级别的概述,他们将如何接近它以及Apple指导的重点。

1 个答案:

答案 0 :(得分:0)

XNU网络堆栈 - 与大多数网络堆栈一样 - 期望网络设备直接发送和接收IP数据包。它不能与内部处理部分网络堆栈(如TCP或UDP)的网络设备一起工作 - 它无法实现使用该设备的网络驱动程序。

您可能有更多的运气将此设备公开为SOCKS proxy。您需要编写一个用户空间守护程序,该守护程序侦听localhost(在计算机上)上的TCP端口,并将流量中继到串行设备;完成后,您可以将计算机设置为在网络控制面板中将该设备用作SOCKS代理。

(顺便说一句:大多数实现此类接口的设备对开放套接字的数量限制很少 - 通常少于10.他们不太可能能够处理由此产生的网络负载桌面操作系统。)