如何用Javascript编写设备驱动程序?
可以用Javascript编写硬件驱动程序吗?这项任务需要采取哪些步骤如何用Javascript编写设备驱动程序?,javascript,driver,linux-device-driver,ecmascript-5,Javascript,Driver,Linux Device Driver,Ecmascript 5,可以用Javascript编写硬件驱动程序吗?这项任务需要采取哪些步骤 此外,我不确定在哪里发布此消息,因此欢迎对此提出任何建议。我希望这是问题的准确位置。不,不是真的。我的意思是,你可以写一些东西把Javascript编译成C,但那太疯狂了。有点像用勺子当电锯 学习C。这是工作的正确工具。哦,天哪。在js中编写驱动程序?为什么?我的意思是,你可以为C或C++中的东西编写一个javascript包装器,但你为什么要这么做呢?设备驱动程序以相当低的级别(硬件级别)与机器通信。Javascript没
此外,我不确定在哪里发布此消息,因此欢迎对此提出任何建议。我希望这是问题的准确位置。不,不是真的。我的意思是,你可以写一些东西把Javascript编译成C,但那太疯狂了。有点像用勺子当电锯
学习C。这是工作的正确工具。哦,天哪。在
js
中编写驱动程序?为什么?我的意思是,你可以为C
或C++
中的东西编写一个javascript包装器,但你为什么要这么做呢?设备驱动程序以相当低的级别(硬件级别)与机器通信。Javascript没有。Javascript是一种web语言(嗯,主要是)
正如Rich Bradshaw所说,这就像用勺子做电锯一样。虽然对我来说,这更像是试图用独木舟作为坦克。哇,这个想法是没有意义的,我想你应该选择一种编程语言来解决问题或任务,而不是反过来。我使用设备驱动程序和操作系统内核相关的东西,但仅仅因为我可以用C编程,我不使用C来完成其他任务,比如嵌入式设备的Linux管理;相反,我使用一些高级的东西,比如Bash、Perl或Python(取决于我的心情:)
你为什么对js感兴趣?实际上,您应该了解编程语言的内部结构,以了解您试图实现的目标,还需要知道您的程序将如何与操作系统交互,以与设备寄存器和中断等进行通信。听起来很傻,但现在正在为各种物联网设备执行此操作。但在我所看到的所有情况下,该设备本身都包含了V8 JS引擎的修改版本。Mozilla手机公开了一个硬件访问接口,但它并不是真正的“真正”设备驱动程序,而是一个向JS公开的框架API 我强烈建议您学习对象Pascal或C/C++,因为它们是唯一适合这类工作的真正的“真实”语言。传统上,C是使用最多的语言,但C和Pascal本质上是同一种语言,但语法不同。C++ Builder和对象Pascal甚至共享同一个代码,在顶部有不同的解析器/词素。 话虽如此,没有真正的理由说明为什么一些自定义驱动程序可以在NodeJ中编码。在Linux下,许多硬件中间件最初是用Python编写的,但最终是用C语言完成的。因此,只要有人调整了有关硬件访问的运行时,一切都是可能的。FreePascal和Python使Raspberry PI 1-2上的GPIO访问变得非常简单。但毫无疑问,像C/C++和Object Pascal这样的真正语言占据了上风
“真实”的意思是编译为平台的机器代码,不真实的意思是指python和javascript等脚本引擎。任何语言都可以用来编写设备驱动程序,但必须满足以下几个条件:
我们面临着类似的问题,我们需要通过我们的在线平台访问硬件并进行现场演示,因此我们的解决方案是购买一个适配器,为硬件端口提供ip,这样我们就可以使用node.js与硬件进行对话。也许您可以找到类似的解决方案关于各种平台上存在的许多用户模式驱动程序框架呢?:-)@JasonMalinowski到目前为止是实现itI最简单的方法,我现在想在FUSE上编写一个文件系统驱动程序,因为我可以!阿特伍德定律!据我所知,您仍然不会在UMDF中使用Javascript。就我个人而言,我喜欢JS,但是在这种情况下,最好找到合适的工具,在它的位置尝试使用不同的工具。JS最初是作为web浏览器的一部分实现的,因此客户端脚本……您应该检查一下这应该是公认的答案@AnttiHaapalaI想知道Linux的东西最初是在Python中编写的C语言的定稿来自。我自己也做过一些内核开发,认识很多人,他们每天都在做内核开发。我想他们会很难过的