Articles of 进程

当Windows可以访问的总内存也被限制为4GB时,Windows如何为多个进程分配4GB的地址空间?

当Windows可以访问的总内存也被限制为4GB时,Windows如何为多个进程分配4GB的地址空间? 上述问题的解决scheme,我发现在Windows内存pipe理(作者:Pankaj Garg) 解: 要实现这个Windows使用称为分页的x86处理器(386及以上)的function。 分页允许软件使用与物理内存地址不同的内存地址(称为逻辑地址)。 处理器的分页单元将这个逻辑地址透明地转换成物理地址。 这使得系统中的每个进程都有自己的4GB逻辑地址空间。 任何人都可以帮助我以更简单的forms来理解它吗?

检测Windows进程使用C#而不使用WMI启动和退出事件

使用WMI的ManagementEventWatcher / EventArrivedEventHandler将导致创build另一个线程,我试图避免。 WMI也知道它的延迟。 所以我的问题是:如何检测Windows进程创build/终止与C#没有WMI? 有没有办法从非托pipe代码做到这一点?

如何改变正在运行的java进程的优先级?

在一个相关的问题中,我们探讨了如何使用ProcessBuilder使用与操作系统相关的命令以低优先级启动外部进程。 我还发现,如果一个父进程是低优先级的,那么它所产生的所有进程都将以低优先级启动。 所以我的新问题是关于以低优先级启动一个java文件(通过双击Windows中的可执行jar),或者在运行期间以编程方式改变它的优先级。 我已经尝试改变线程优先级,但是这对windows进程优先级没有影响。 我已经尝试了以下,但它不会更改任务pipe理器中的进程优先级 public class hello{ public hello(){ try{ Thread.currentThread().setPriority(1); Thread.sleep(10000); }catch(Exception e){e.printStackTrace();} } } 我能想到的另外一件事就是使用batch file来运行程序,但我宁愿把它留在家庭中。 那么有没有人知道基于java的方式来改变当前的进程优先级? 理想情况下,在程序运行时能够响应用户input来改变进程的优先级将是很好的。

在一个batch file里面,我怎么知道一个进程是否正在运行?

我想编写一个batch file,检查一个进程是否正在运行,如果是,则执行一个操作,如果没有则执行另一个操作。 我知道我可以使用任务列表来列出所有正在运行的进程,但有没有一种更简单的方法来直接检查特定的进程? 这似乎应该工作,但它不: tasklist /fi "imagename eq firefox.exe" /hn | MyTask IF %MyTask%=="" GOTO DO_NOTHING 'do something here :DO_NOTHING 使用atzz提供的解决scheme,这是一个完整的工作演示: 编辑:简化,并修改在WinXP和Vista下工作 echo off set process_1="firefox.exe" set process_2="iexplore.exe" set ignore_result=INFO: for /f "usebackq" %%A in (`tasklist /nh /fi "imagename eq %process_1%"`) do if not %%A==%ignore_result% Exit for /f "usebackq" %%B in (`tasklist /nh /fi "imagename […]

环境variables强制.NET应用程序运行为32位

我被告知有一个环境variables可以设置为强制.NET应用程序在x64版本的Windows上作为32位应用程序运行。 你知道它是什么,或者知道它的一个参考吗? 恐怕我的google-fu今天失败了(或者它不存在)。 我正在使用Resolver One(一个.NET电子表格),并希望访问一些32位唯一的function,而无需修改可执行文件。 如果我可以从一个环境variablesconfiguration这个,那么我可以在需要的时候访问32位的function,而且在需要的时候也可以作为一个64位的应用运行 (注意:我希望能够在启动时切换应用程序以32位还是64位运行,而不是在编译时强制执行)。 谢谢

使用Python进行Windows进程pipe理

我需要一个脚本来检查一个特定的进程是否正在运行,如果找不到,就返回一些东西。 我知道这可以使用subprocess完成,但有一个更简单的方法来做到这一点?

Anaconda Python 32位正试图加载Anaconda 64位库

我在Windows 7 64位,并试图在同一个系统上使用pythonPython 64位和32位分布。 我希望能够构buildWindows 32位可执行文件以进行分发(使用py2exe),这需要使用32位Python解释器。 我以前已经安装了Anaconda Python 64位到C:\ Anaconda。 我现在已经安装了32位的Anaconda Python发行版到C:\ Anaconda32。 但是,当我尝试从C:\ Anaconda32 \ python.exe运行python解释器时,它正在将64位环境加载到我的sys.path中。 结果是很多库调用失败,由于32位进程试图执行64位库(我认为)。 我也尝试编辑cmd.exe会话中的path,只包含C:\ Anaconda32和C:\ Anaconda32 \ Scripts。 结果如下: C:\Anaconda32>echo %path% C:\Anaconda32;C:\Anaconda32\Scripts C:\Anaconda32>python.exe Python 2.7.7 |Anaconda 2.0.1 (64-bit)| (default, Jun 11 2014, 10:41:43) [MSC v.1500 32 bit (Intel)] on win32 Type "help", "copyright", "credits" or "license" for more information. Anaconda […]

如何在VB6中执行进一步的代码之前等待shell进程完成

我有一个小型的VB6应用程序,我使用Shell命令来执行程序。 我将程序的输出存储在一个文件中。 然后我读取这个文件,并使用VB6中的msgbox将输出放在屏幕上。 这是我的代码现在看起来像: sCommand = "\evaluate.exe<test.txt " Shell ("cmd.exe /c" & App.Path & sCommand) MsgBox Text2String(App.Path & "\experiments\" & genname & "\freq") 问题是VB程序使用msgbox打印的输出是文件的旧状态。 是否有一些方法来执行VB代码,直到我的shell命令程序完成,以便我得到输出文件的正确状态,而不是以前的状态?

Win32:如何枚举subprocess?

在Win32下枚举当前正在运行的进程的subprocess的最好方法是什么? 我可以想到一些方法来做到这一点,但他们似乎过于复杂和缓慢。 以下是解决scheme的要求: 具体而言,我需要知道是否有任何当前正在运行的进程是由当前进程启动的。 将运行在WinXP上,不应该要求分发特殊的DLL。 不应该需要大量的CPU开销(它将在后台定期运行)。 我最终会用Delphi写这个,但是我可以从任何你有代码的语言中进行转换。大多数情况下,我正在寻找最有效的一组Win32 API来使用。 谢谢!

通过GCC的Win64的Python扩展

有没有人有使用mingw64编译Windows的64位Python扩展模块的运气? 我已经成功地为VS2008编译了这个平台的扩展。 我也用mingw32(用一个32位的python)编译它。 我宁愿两个版本都使用GCC。 我已经使用Cygwin安装了mingw64-x86_64-w64 GCC 4.5.1工具集,并说服Python使用它们。 但是,链接到python本身失败。 所以我拿起pexports 0.44,用它来转储一个python26.def文件,并创buildlibpython26.a 。 现在,正如在这个问题中 ,我从Python获得的唯一链接错误是关于__imp_py_InitModule4 。 浏览def文件,我看到一个Py_InitModule4_64符号。 有任何想法吗?