프로젝트는 서로 다른 사용자 및 그룹에 대한 리소스 사용을 제한하는 방법을 제공합니다. 프로세스가 열 수있는 파일 수, 최대 파일 크기, CPU 사용량, 메모리 할당 등을 제한하는 데 사용할 수 있습니다. 모든 프로세스와 사용자는 하나 이상의 프로젝트에 속합니다. 사용자의 초기 프로젝트는 로그인시 결정되며 기본값 이거나이 모듈의 사용자 속성 섹션에 설정된 프로젝트입니다. newtask 명령을 사용하여 다른 프로젝트로 전환 할 수 있습니다.
각 프로젝트에는 액세스 권한이있는 사용자 및 그룹 목록이 있습니다 (예 : newtask 명령으로 프로젝트를 전환하여). 사용자가 프로젝트의 구성원이라고해서 반드시 로그인시 자동으로 프로젝트에 속한다는 의미는 아닙니다. 이것은 사용자 속성 섹션에서 설정해야합니다.
프로젝트의 가장 중요한 속성은 멤버 사용자에게 적용되는 리소스 제한입니다. 각각 다음과 같은 속성이 있습니다.
- 자원
- 작성 가능한 최대 파일 크기의 경우 process.max-file-descriptor 또는 프로세스가 소비 할 수있는 CPU 시간의 양인 process.max-cpu-time 과 같이 제어하는 자원입니다.
- 자원 유형
- 이 자원 한계를 수정할 수있는 사람을 결정하고 거의 항상 Privileged로 설정됩니다. 이 속성은 선택 사항입니다. <없음> 을 선택한 경우 리소스의 시스템 전체 제한이 대신 적용됩니다. 다른 옵션의 의미는 다음과 같습니다.
- 특권 -특권 (수퍼 유저) 호출자 만 수정할 수 있습니다.
- 시스템 -운영 체제 인스턴스 지속 기간 동안 수정되었습니다.
- 기본 -호출 프로세스 소유자가 수정할 수 있습니다.
- 상한
- 조치가 트리거되기 전에 프로세스가 소비 할 수있는 사용량의 상한입니다. 자원 유형에 따라 바이트, 초 또는 스레드 수로 입력됩니다.
- 초과시 조치
- 한계를 초과하는 프로세스에 발생하는 사항을 결정합니다. 일반적으로 이는 거부 로 설정되어 한계를 초과하려고 시도한 시스템 호출이 실패합니다. 그러나 문제를 일으키는 프로세스에 신호를 보내는 옵션도 유용 할 수 있습니다.