Articles of API

最好的Linux文件系统filter选项?

我需要一个Linux文件系统filter来强制执行文件系统调用的ACL策略(允许/拒绝读/写基于运行时计算的东西)。 到目前为止,我偶然发现了DazukoFS和相关的工作 。 我不喜欢DazukoFS的是,它必须为每个内核版本进行编译。 有一些用户模式库可以dynamic地过滤文件系统调用吗? 如果没有,是否有一些内核模式库可以dynamic地过滤FS调用,而不是为每个内核版本编译? 如果没有, DazukoFS和其他的最好的select是什么?

有没有办法将进程locking到CPU?

我正在考虑开发一个应用程序,在六核机器上运行六个asynchronous任务,每个核心一个。 但是有可能将任务locking在自己的核心上吗? 这个想法主要是由他们自己来运行,但是有时候是通过共享内存区域进行通信。 但是,我希望这些任务尽可能不受干扰地运行。

如何获得Linux发行版的名称和版本?

在Windows中,我读取registry项SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProductName以获取操作系统的全名和版本。 但在Linux中,代码 struct utsname ver; uname(&ver); retVal = ver.sysname; 返回stringlinux ,而不是Ubuntu 9.04 。 我怎样才能得到Linux发行版的名称和版本?

Linux中的Win32 API相当于什么?

我不想知道在windows和linux的API函数之间是否有一对一的等价关系,也不想知道每个API函数。 我只想知道这两个基本的东西: 我想了解为什么Qt平台是独立的 我想知道我应该在linux中使用什么API来移植使用Win32 API编程的应用程序,或者换句话说,在Win32 API级别。 我知道这是不实际的,但我想知道这种等同性。

从Linux使用Windows DLL

我们需要接口到第三方应用程序,但公司背后的应用程序不公开消息协议,并只提供Windows DLL的接口。 我们的应用程序是基于Linux的,所以我不能直接与DLL沟通。 我找不到任何现有的解决scheme,所以我正在考虑在Linux和Windows之间编写基于套接字的桥接,但是我确定这不是一个独特的问题,有人应该这样做。 您知道任何允许从Linux上的C应用程序调用Windows DDL函数的解决scheme吗? 它可以使用葡萄酒或单独的Windows PC – 无所谓。 提前谢谢了。

在pipe道中获取命令输出,C为Linux

我需要运行一个Linux CLI命令,并从C中获取stdout输出 我可以使用pipe()来创build一个pipe道,然后fork / exec,在调用exec()之前将subprocess的stdout描述符redirect到pipe道中,并从父进程中的pipe道中读取数据。 另外我需要等孩子。 是否有一个简单的调用来做fork + redirect + exec + wait,就像system()做fork + exec + wait一样,只有system()不做redirect。 有popen(),它做叉+redirect+执行,但不做等待,所以我不能得到退出状态。

当进程尚未完成时,GetExitCodeProcess()返回1

如果我为它创build一个进程和两个pipe道集,并且该进程在某个时间需要一些用户input,则Windows C API中的GetExitCodeProcess()将始终返回1 。 作为一个例子,你可以采取Windows time命令,这将返回: The current time is: … Enter the new time: 然后立即退出而不等待input。 我不希望这个过程完成,直到它真的完成了,所以我可以input它。 我该如何解决这个问题。 我已经build立了这个循环(我仍然希望能够确定何时处理完成): for (;;) { /* Pipe input and output */ if (GetExitCodeProcess(…) != STILL_ACTIVE) break; } 提前致谢。

下载Windows API参考(MSDN)以供离线使用

我想有一个Windows API参考文档可以离线使用。 MSDN是好的,但我也需要这种信息,当我无法访问互联网。 PDF,CHM,帮助(对于Emacs)将没事的。 当然,我不是第一个想要这样的人,但我找不到任何东西。 有人能指点一个地方find那个吗? 我看到SDK中可能提供了这个参考,但安装它需要〜200 MB,我只想要文档。

用于运行其他.exe的win32 API

我想知道win32 API以编程方式运行regsvr32 。 我有一个应用程序,我可以通过它与COM端口设备进行通信,但为​​了实现通信,我必须使用regsvr32.exe注册MSCOMM32.ocx 。 但是现在我想在代码中添加这个规定,所以不需要手动运行regsvr 。

API,框架和中间件有什么区别?

只是随机把这个问题在我的脑海中! API,框架和中间件有什么区别? 基本上所有这些都为应用程序提供抽象的低级服务。 在这种情况下,为什么称为框架和Windows API的networking称为好.. API?