限制Linux中程序的内存使用

限制Linux中程序的内存使用,linux,memory,limit,ulimit,setrlimit,Linux,Memory,Limit,Ulimit,Setrlimit,我不熟悉Linux和终端(或者它使用的任何命令提示符),我想控制进程可以使用的RAM数量。我已经找了好几个小时来寻找一本易用的指南。我有一些限制它的要求: 程序的多个实例将运行,但我只想限制一些实例 我不希望进程一旦超过限制就崩溃。我希望它使用HDD页面交换 该程序将在WINE下运行,并且是.exe 那么,是否有人可以帮助您在Linux中使用命令来限制进程上的RAM使用?在这个特定的上下文中,您使用Wine并没有什么区别,这就留下了需求1和2。要求2- 我不希望进程一旦超过限制就崩溃。我希望它使

我不熟悉Linux和终端(或者它使用的任何命令提示符),我想控制进程可以使用的RAM数量。我已经找了好几个小时来寻找一本易用的指南。我有一些限制它的要求:

  • 程序的多个实例将运行,但我只想限制一些实例
  • 我不希望进程一旦超过限制就崩溃。我希望它使用HDD页面交换
  • 该程序将在WINE下运行,并且是.exe

  • 那么,是否有人可以帮助您在Linux中使用命令来限制进程上的RAM使用?

    在这个特定的上下文中,您使用Wine并没有什么区别,这就留下了需求1和2。要求2-

    我不希望进程一旦超过限制就崩溃。我希望它使用HDD页面交换

    –被称为限制进程的常驻集大小或rss,在Linux上这样做实际上是非常重要的,如所示。你需要准备一下。幸运的是,本文简要介绍了如何做到这一点。注意

    • 您应该使用自己的Unix用户名,而不是
      jlebar
    • 您应该使用
      wine/path/to/Windows/program.exe
      ,而不是
      your/program

    使用cgroup还可以满足您的其他要求–您可以根据需要启动任意多个程序实例,但只有那些以
    cgexec-g memory:limited
    启动的实例才会受到限制。

    请看:我已经多次查看该源代码,但它并没有提供完整的代码“$pdftoppm”。