2012-12-14 14 views
7

Ulimit und nproc werden beide zur Begrenzung der Systemprozesse und Ressourcen für einen bestimmten Benutzer oder eine Anwendung (korrigieren Sie mich, wenn ich falsch liege) im * nix-System verwendet. Was ist der Hauptunterschied zwischen den beiden?Unterschied zwischen nproc und ulimit?

+0

Stack Overflow ist eine Website für Programmier- und Entwicklungsfragen. Diese Frage scheint off-topic zu sein, weil es nicht um Programmierung oder Entwicklung geht. Siehe [Welche Themen kann ich hier fragen?] (Http://stackoverflow.com/help/on-topic) in der Hilfe. Vielleicht [Super User] (http://superuser.com/) oder [Unix & Linux Stack Exchange] (http://unix.stackexchange.com/) wäre ein besserer Ort, um zu fragen. – jww

Antwort

14

nproc von coreutils druckt die Anzahl der Prozessoren. Von man nproc:

NPROC(1)       User Commands      NPROC(1) 

NAME 
     nproc - print the number of processing units available 

SYNOPSIS 
     nproc [OPTION]... 

DESCRIPTION 
     Print the number of processing units available to the current process, 
     which may be less than the number of online processors 

Allerdings begrenzt die nproc Einstellung in /etc/security/limits.conf in der Tat die Anzahl der Prozesse:

Von man limits.conf:

 nproc 
      maximum number of processes 
2
both are used for limiting the system processes and resources 

Nr Beide sind für nicht verwendet der gleiche Zweck. ulimit wird zum Abrufen/Festlegen von Ressourcengrenzen verwendet.

Zum Beispiel die Stapelgröße für jeden Prozess bekommen:

$ulimit -s 

die Stapelgröße auf 1 MB ändern:

$ulimit -s 1024 

Ändern der Stapelgröße unlimited:

$ulimit -s unlimited 

Während nproc nur die verfügbaren Prozessoren auflistet. Beachten Sie, dass ulimit seit POSIX 2008 veraltet ist.

+0

Die C-Funktion "ulimit" wurde als veraltet markiert; Der Shell-Befehl "ulimit" hat nicht. – Jesin