如何为 Mac 编写虚拟帧缓冲驱动程序?

Arv*_*ind 8 c++ macos kernel framebuffer kernel-extension

所以,我想为mac编写一个虚拟监视器驱动程序。这类似于屏幕回收器应用程序所做的事情。我已经阅读了很多关于驱动程序编程和 kext 的一般资源,我已经完成了苹果的基本 iokit 驱动程序教程,但是从哪里开始呢?

本教程提供了对驱动程序的非常基本的了解,但对于我的用例来说,这绝对是不够的。我知道我们必须实现 IOframebuffer 标头,但我不知道其余的?此外 IOframebuffer 标头有一些非常复杂的方法,我不太清楚如何实现这些方法。有人可以向我提供一些关于需要做什么的有用指示吗?

我已经看过这个问题

为 OS X 创建虚拟显示器驱动程序的指针

这些回购,

https://github.com/tSoniq/displayx

https://github.com/mkernel/EWProxyFramebuffer

但问题是,这两个项目在 MAC OS 10.12 中都不起作用,因为它们很长时间没有更新。

我正在寻找一些我需要遵循的指南来编写这样的驱动程序,而苹果文档并没有真正的帮助。