首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用于信号处理和用户管理的Python Unix/Windows抽象层

用于信号处理和用户管理的Python Unix/Windows抽象层
EN

Stack Overflow用户
提问于 2012-10-12 01:51:44
回答 1查看 372关注 0票数 4

我想问一个问题,我广泛的网络搜索表明答案是‘不’,但可能我忽略了一些东西……

在Unix和Windows信号处理(用于衍生的独立进程)和用户管理(获取用户和组条目,比较它们等)之上,是否存在Python抽象层?

是的,我知道Windows和Unix在这两个方面都有根本的不同,但操作系统特定的方法确实完成了相似的任务。因此,创建抽象层似乎不是一个坏主意。

我找到的最接近我正在寻找的东西,至少对子进程管理(在一定程度上与那些子进程“发信号”),是python-multiprocessing,即http://docs.python.org/dev/library/multiprocessing.html -它是我正在寻找的那种抽象,但它并不能完全达到我想要的效果。

在这个方向上有什么建议吗?

让Windows上的信号处理/用户管理看起来像Unix或反之亦然的模块也是可以的。

EN

回答 1

Stack Overflow用户

发布于 2013-05-02 01:55:02

Python已经有了一种信号处理的抽象,但在Windows上,您仅限于:

signal()只能使用SIGABRT、SIGFPE、SIGILL、SIGINT、SIGSEGV或SIGTERM调用。在任何其他情况下都将引发ValueError。

用户管理是一个完全不同的动物:如果你想在两个平台上进行类似的处理,你必须自己编写一个包装器:

对于windows,请查看win32api (例如http://timgolden.me.uk/python/win32_how_do_i/check-a-users-credentials.html)

同样,在Linux/Windows上,也没有太多用于此目的的工具,这实际上取决于如何进行身份验证(PAM本地,NIS等等)。Debian和派生程序使用了libuser,但我自己从未使用过它。(http://linuxsoft.cern.ch/cern/slc6X/x86_64/yum/updates/repoview/libuser-python.html)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12845606

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档