Articles of pipe理员

操作系统重新启动,关机,hibernate,睡眠,唤醒(Windows Python)

我正在寻找一种自动执行Windows电源pipe理function的方法: – 重新启动 – 关机 – hibernate – 睡眠 – 唤醒 有没有一个Python模块来覆盖这个function? 当然任何其他的解决scheme也赞赏…

在Windows上的os.pipe上无阻塞读取

这个问题 – 如何从os.pipe()读取而不被阻塞? – 显示了一个解决scheme如何检查os.pipe是否有Linux的任何数据,为此,您需要将pipe道置于非阻塞模式: import os, fcntl fcntl.fcntl(thePipe, fcntl.F_SETFL, os.O_NONBLOCK) 在Windows上,我们有这样的: ImportError: No module named fcntl 但os.pipe在那里: >>> os.pipe() (3, 4) 那么,是否可以在Windows上进行非阻塞式的读取或os.pipe的内容呢?

Windows上命名pipe道与IPC的UDP

为什么命名pipe道在本地Windows机器上通过UDP更适合IPC(进程间通信)? 或UDP有时可能会更好?

(Windows)C中的特定进程的CPU和内存消耗情况?

我想监视一个给定的进程在Windows(nt体系结构 – XP中,Vista,WIN7)的CPU和内存消耗,每隔几秒做一个图,我已经search周围,但只发现非C解决scheme(Java,C# C ++等)我知道有一个PerformanceCounter类,但显然它不是在C中可用。 谢谢

如何从用户空间访问内核空间?

用户内存和内核内存在Linux内核中究竟有什么区别 (就内核空间的安全性而言)? 有什么不同的方式可以在用户空间的内核地址空间写入? 我知道的一个方法是通过系统调用 。 有多个系统调用我们可以使用,但最后他们都是系统调用。 即使在系统调用中,我们也发送一个数据到内核空间,在那里它(驱动程序或相应的模块)调用函数copy_from_user()将数据从用户空间复制到内核空间。 这里我们完全没有写入地址空间。 我们只是传递一个包含需要复制到内核缓冲区的数据的用户指针。 我的问题是有什么办法可以访问内核空间中的物理地址,并对其进行操作? 其次, 除了系统调用之外,还有其他的方式可以从用户应用程序写入内核空间吗? 我从stackoverflow引用这个链接 。 但是我觉得我的问题没有在那里回答,而是从不同的angular度来看。 因此我想问一个不同的问题。 请分享你的知识…谢谢。

什么时候由.NET进程分配的内存被释放回Windows

安装程序 .NET为分段的每一代堆(0,1,2,LOH)分配内存,以便在启动时获得连续的内存块,并在收集之后尝试满足分配请求。 这个分配给每个堆的内存可能会随着应用程序“升温”而平稳下来,除了第2代和大对象堆以外。 在垃圾收集期间,每个堆(0,1,2)都被扫描和压缩,除了刚刚扫过的大对象堆(LOH)之外。 我理解集合的“扫描”部分意味着GC确定哪些对象不再是根源,并且可用于收集(或定稿),而“紧凑”意味着在堆中仍然活着的地址被重新组织可用的剩余堆有更多可用的连续内存。 由于超过了堆中每个段的预算,.NET将分配另一个段来完成分配(如果可能的话)。 问题 我的问题归结为每个堆中的内存会发生什么情况,而不是由应用程序 (提交)使用,但仍保留.NET? 什么时候释放回操作系统? 。 我相信这是一个过程可能会消耗大量内存的情况(虚拟大小非常大,但是私有字节很小),但是在检查其堆时大部分是可用空间 。 另外需要注意的是,堆的总大小也可能相当小 ,并且不考虑进程消耗的内存。 没有阻塞的终结器,所有看起来都很健康的进程 – 它可能已经运行了几个星期,然后触发监视器警报(例如)。 尝试进一步澄清问题,如果您阅读了Tess .NET内存pipe理 – 餐厅类比 ,如果表是堆段,那么餐厅是否会丢失表(例如,免费的堆段)? 编辑 删除了工作组和鸡只的混淆参考 添加了对Tess餐厅类比的参考

如果我调用GlobalLock(),然后调用GlobalUnlock(),会发生什么?

在Win32中,为了将数据粘贴到剪贴板,我必须调用GlobalAlloc() ,然后使用GlobalLock()来获取指针,然后复制数据,然后调用GlobalUnlock()和SetClipboardData() 。 如果代码是用C ++编写的,那么在调用GlobalLock()和GlobalUnlock()之间可能会抛出一个exception,如果我不关心这个GlobalUnlock()将不会被调用。 这是一个问题? 如果我调用GlobalLock() ,出于什么原因跳过配对的GlobalUnlock()调用,到底发生了什么?

如何创build一个右键单击上下文shell快捷方式“编辑Emacs”?

记事本+ +自动添加一个shell快捷方式,以便当您在Windows资源pipe理器,您可以右键单击一个文件,并select“用记事本++编辑”。 我该怎么做与emacs一样? 我正在使用Windows的GNU Emacs 22.3。

如何增加内存来处理超大Lua表

我有一个Lua函数,给定n,生成从1到n的系列的所有排列,并以表格forms将每个唯一序列存储在容器表中。 这个生成的表的大小非常快(非常快)。 关于我尝试n = 11的时候,脚本会运行几秒钟,然后才会失败“lua:内存不足”。 我有16GB的物理内存,但是在Windows任务pipe理器中观察性能监视器允许我在运行时观察内存使用情况,在脚本以内存错误结束之前,它只能达到20%左右。 我发现这个post看起来像我需要的方向: 在Lua中logging一个进程 由于我用Lua.exe运行我的脚本,我假设我只限于Windows为Lua.exe分配多less内存。 我可以增加这个数额吗? 我可以使用一个C#包装程序来简单地运行Lua脚本(这个想法是,它将有一个更高/更less限制的内存分配)? 还是我看错了方向?

C#钩入Windows资源pipe理器文件夹更改事件

我一直在search,没有运气,看看是否有办法挂钩到Windows资源pipe理器文件夹更改事件。 我想要的是:如果我浏览我的资源pipe理器(Windows 7)我想在文件夹已经改变后运行一组特定的代码(键组合发送)。 任何人都知道这是可能的吗? 谢谢 :)