I progetti forniscono un modo per imporre limiti sull'uso delle risorse per utenti e gruppi diversi. Possono essere utilizzati per limitare il numero di file che un processo può aprire, le dimensioni massime dei file, l'utilizzo della CPU, l'allocazione della memoria e altro ancora.

Ogni processo e utente appartiene a uno o più progetti. Il progetto iniziale di un utente viene determinato al momento dell'accesso e sarà `predefinito` o impostato nella sezione Attributi utente di questo modulo. Gli utenti possono passare a diversi progetti utilizzando il comando `newtask` .

Ogni progetto ha un elenco di utenti e gruppi a cui è consentito accedervi, ad esempio passando ad esso con il comando `newtask` . Solo perché un utente è membro di un progetto non significa necessariamente che apparirà automaticamente ad esso al momento del login - questo deve essere impostato nella sezione Attributi utente .

Gli attributi più importanti di un progetto sono i limiti di risorse che si applicano agli utenti membri. Ognuno ha i seguenti attributi:

Risorsa
  La risorsa che controlla, come `process.max-file-descriptor` per la dimensione massima del file creabile o `process.max-cpu-time` per la quantità di tempo della CPU che un processo può consumare.
Tipo di risorsa
  Determina chi può modificare questo limite di risorse ed è quasi sempre impostato su Privilegiato . Questo attributo è facoltativo: se si seleziona <Nessuno> , verrà invece applicato il limite globale di sistema per la risorsa. I significati delle altre opzioni sono:
  - Privilegiato : può essere modificato solo da chiamanti privilegiati (superutente).
  - Sistema : risolto per la durata dell'istanza del sistema operativo.
  - Base : può essere modificato dal proprietario del processo di chiamata.
Limite superiore
  Il limite massimo di utilizzo che è consentito consumare un processo prima che l'azione venga attivata. Questo viene inserito in byte, secondi o numero di thread, a seconda del tipo di risorsa.
Azione superata
  Determina cosa succede a un processo che supera il limite. In genere, questo è impostato su Nega , il che fa semplicemente fallire la chiamata di sistema che ha tentato di superare il limite. Tuttavia, possono essere utili anche le opzioni per inviare un segnale al processo offensivo.