【发布时间】:2012-04-30 18:46:49
【问题描述】:
我需要创建一个 Cocoa 应用程序,该应用程序将创建一个可供其他应用程序使用的虚拟串行端口,这意味着在 IO Kit Registry 中注册。
应用要点:
- 创建一个虚拟串行端口(在 /dev 中列出并在 IOKit 注册表中注册)
- 向另一台计算机发起 tcp 连接
- 将虚拟串行端口上收到的所有内容代理到 网络,反之亦然。
此应用将由与计算机上的串行端口通信的第三方应用使用,从而允许通过网络定位特定的串行设备。 Cocoa 和网络部分没有问题,我已经编写了几个通过网络通信的应用程序。我的挂断是串口。
我已经使用 socat/netcat/minicom 进行了测试,以验证它是否可以通过网络代理 pty/tty 流量,但我使用的 tty 并没有显示为可供随机应用程序使用,因为它没有注册IO 工具包注册表。
虽然我可以使用 pty/tty 主/从进行通信,但我需要这个从 tty 才能显示给 Mac 应用程序。非常方便的是在 IO Kit Registry 中注册 tty 的方法。
我真的需要创建一个在 Cocoa 应用运行时注册的自定义 IOKit kext 驱动程序吗?如果是这样,我前面有一个很大的学习曲线。我应该从哪里开始阅读?或者,我可以使用 IOKit 创建一个虚拟串口并将其注册为应用程序的可用串口,而无需加载任何内核扩展?
感谢您提供的任何帮助,
有状态的
【问题讨论】:
标签: macos serial-port iokit