L'utilizzo delle risorse può venire limitato tramite la funzione setrlimit() descritta sotto. Ogni risorsa viene controllata da una coppia di limiti: un limite soft ed uno hard. Il limite soft è il limite corrente, e può essere eccezionalmente diminuito od aumentato da un processo. Il limite soft non può mai eccedere il limite hard. Il limite hard può venire diminuito fino ad un qualunque valore superiore a quello del limite soft, ma non può essere aumentato. (Solamente i processi con l'UID effettivo del super utente possono aumentare un limite hard.)
Il tipo di risorse che possono venire limitate dipendendono dal sistema. Vengono descritte nella pagina del manuale di getrlimit(2). Le risorse mostrate sotto vengono supportate quando il sistema operativo sottostante a sua volta le supporta; le risorse che non possono venire controllate o gestite dal sistema operativo non vengono definite in questo modulo su quelle piattaforme.
resource) |
(soft, hard)
con i limiti
correnti soft ed hard della risorsa resource. Solleva
l'eccezione ValueError se viene specificata una risorsa
non valida, o error se la chiamata di sistema
sottostante fallisce inaspettatamente.
resource, limits) |
(soft, hard)
di due numeri interi che descrivono i
nuovi limiti. Si può utilizzare un valore di -1
per
specificare il limite superiore massimo possibile.
Solleva l'eccezione ValueError se viene specificata una risorsa non valida, se il nuovo limite soft eccede il limite hard, o se un processo tenta di aumentare il proprio limite hard (a meno che il processo non possieda un UID effettivo di super utente). Può anche sollevare l'eccezione error nel caso la chiamata di sistema sottostante fallisca.
Questi simboli definiscono le risorse il cui consumo può venire controllato utilizzando le funzioni setrlimit() e getrlimit() descritte sotto. I valori di questi simboli sono esattamente le costanti usate dai programmi C.
La pagina del manuale Unix di getrlimit(2) elenca le risorse disponibili. Notate che non tutti i sistemi utilizzano lo stesso simbolo e lo stesso valore per denotare la medesima risorsa. Questo modulo non tenta di mascherare le differenze tra le piattaforme -- i simboli non definiti per una piattaforma non saranno disponibili in questo modulo su quella piattaforma.
Vedete Circa questo documento... per informazioni su modifiche e suggerimenti.