加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

如何在golang中调用Linux/UNIX的系统调用

发布时间:2020-12-16 19:04:34 所属栏目:大数据 来源:网络整理
导读:出于某些原因,我需要调用系统的一些系统调用( Linux) 我检查了’syscall’软件包的文档,但找不到任何相关信息. 然后我刚看到一个包裹windows apis的项目(https://github.com/AllenDang/w32/blob/master/kernel32.go).我读了一下它的源代码. 它用 modkernel32
出于某些原因,我需要调用系统的一些系统调用( Linux)
我检查了’syscall’软件包的文档,但找不到任何相关信息.

然后我刚看到一个包裹windows apis的项目(https://github.com/AllenDang/w32/blob/master/kernel32.go).我读了一下它的源代码.

它用

modkernel32 = syscall.NewLazyDLL("kernel32.dll")

加载动态库.但是,没有函数NewLazyDLL()的文档

我确信Linux / UNIX应该有类似的功能.有没有人能说出来
我在Golang或者中调用函数的名称或调用Linux系统调用的方法
从libc.so加载函数?

更多细节

我想调用系统调用’守护进程’或’fork'(我想守护进程),因为我找不到golang库提供它们.

目前Go标准库中没有守护程序样式函数.有 an open bug about adding such a feature,但它已推迟到Go 1.1发布之后.我建议阅读错误报告,因为它有些原因并不像最初出现的那么简单.

除了拥有守护进程fork之外,还有其他方法可以运行守护程序进程.例如,像Upstart和Systemd这样的现代init守护进程可以为您管理这样的守护进程.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读