시스템 요구사항

컴퓨터에서 효율적으로 사용되려면 모든 소프트웨어는 특정 하드웨어 구성 요소나 다른 소프트웨어 리소스가 존재해야 한다. 이러한 전제 조건은 (컴퓨터) **시스템 요구사항**(System requirements)으로 알려져 있으며, 절대적인 규칙이 아닌 지침으로 자주 사용된다. 대부분의 소프트웨어는 최소 및 권장 두 가지 시스템 요구사항 세트를 정의한다. 소프트웨어의 새 버전에서 더 높은 처리 능력과 리소스에 대한 수요가 증가함에 따라 시스템 요구사항은 시간이 지남에 따라 증가하는 경향이 있다. 업계 분석가들은 이러한 추세가 기술 발전보다 기존 컴퓨터 시스템 업그레이드를 유도하는 데 더 큰 역할을 한다고 제안한다. 시스템 요구사항이라는 용어의 두 번째 의미는 이 첫 번째 정의를 일반화하여 시스템 또는 하위 시스템 설계에서 충족되어야 하는 요구사항을 제공하는 것이다.

## 권장 시스템 요구사항

종종 게임 제조업체는 소비자에게 소프트웨어를 실행하는 데 필요한 것과는 다른 요구사항 세트를 제공한다. 이러한 요구사항은 일반적으로 권장 요구사항이라고 불린다. 이러한 요구사항은 최소 요구사항보다 훨씬 높은 수준이며, 소프트웨어를 실행하기에 이상적인 상황을 나타낸다. 일반적으로 이는 해당 소프트웨어로 완전히 사용 가능하고 즐거운 경험을 하기 위한 최소 시스템 요구사항보다 더 나은 지침이다.

## 하드웨어 요구사항

모든 운영체제 또는 소프트웨어 애플리케이션이 정의하는 가장 일반적인 요구사항은 물리적 컴퓨터 리소스, 즉 하드웨어이다. 하드웨어 요구사항 목록은 종종 하드웨어 호환 목록 (HCL)과 함께 제공되며, 특히 운영체제의 경우 그러하다. HCL은 특정 운영체제 또는 애플리케이션에 대해 테스트되고 호환되며 때로는 호환되지 않는 하드웨어 장치를 나열한다. 다음 하위 섹션에서는 하드웨어 요구사항의 다양한 측면을 다룬다.

### 아키텍처

모든 컴퓨터 운영체제는 특정 컴퓨터 구조를 위해 설계된다. 대부분의 소프트웨어 애플리케이션은 특정 아키텍처에서 실행되는 특정 운영체제로 제한된다. 아키텍처 독립적인 운영체제 및 애플리케이션이 존재하지만, 대부분은 새로운 아키텍처에서 실행하기 위해 재컴파일되어야 한다. 일반적인 운영체제 및 지원 아키텍처 목록도 참조하라.

### 처리 능력

중앙 처리 장치(CPU)의 성능은 모든 소프트웨어의 기본적인 시스템 요구사항이다. x86 아키텍처에서 실행되는 대부분의 소프트웨어는 처리 능력을 CPU의 모델 및 클럭 속도로 정의한다. 버스 속도, 캐시, MIPS 등 CPU의 속도와 성능에 영향을 미치는 많은 다른 기능은 종종 무시된다. 이러한 성능 정의는 종종 유사한 클럭 속도에서 다른 제조사 및 모델의 CPU가 다른 처리량 속도를 갖기 때문에 오류가 있다.

### 메모리

모든 소프트웨어는 실행될 때 컴퓨터의 랜덤 액세스 메모리(RAM)에 상주한다. 메모리 요구사항은 애플리케이션, 운영체제, 지원 소프트웨어 및 파일, 기타 실행 중인 프로세스의 요구사항을 고려하여 정의된다. 다중 작업 컴퓨터 시스템에서 실행되는 다른 관련 없는 소프트웨어의 최적 성능도 이 요구사항을 정의할 때 고려된다.

### 보조 저장 장치

데이터 저장 장치 요구사항은 소프트웨어 설치 크기, 소프트웨어를 설치하거나 실행하는 동안 생성 및 유지되는 임시 파일, 그리고 스왑 공간 (RAM이 부족한 경우) 사용 가능성에 따라 달라진다.

### 디스플레이 어댑터

그래픽 편집기 및 고급 게임과 같이 평균 이상의 컴퓨터 그래픽스 디스플레이를 요구하는 소프트웨어는 종종 시스템 요구사항에 고급 디스플레이 어댑터를 정의한다.

### 주변기기

일부 소프트웨어 애플리케이션은 특정 주변기기를 광범위하게 또는 특별히 사용해야 하므로, 해당 주변기기의 더 높은 성능이나 기능을 요구한다. 이러한 주변기기에는 CD-ROM 드라이브, 키보드, 포인팅 장치, 네트워크 장치 등이 포함된다.

## 소프트웨어 요구사항
소프트웨어 요구사항은 애플리케이션의 최적 기능을 제공하기 위해 컴퓨터에 설치되어야 하는 소프트웨어 리소스 요구사항 및 전제 조건을 정의하는 것을 다룬다. 이러한 요구사항 또는 전제 조건은 일반적으로 소프트웨어 설치 패키지에 포함되어 있지 않으며 소프트웨어를 설치하기 전에 별도로 설치해야 한다.

### 플랫폼

컴퓨팅 플랫폼은 소프트웨어를 실행할 수 있도록 하는 하드웨어 또는 소프트웨어 형태의 프레임워크를 설명한다. 일반적인 플랫폼에는 컴퓨터의 아키텍처, 운영체제, 또는 프로그래밍 언어 및 해당 런타임 라이브러리가 포함된다.

운영체제는 시스템 요구사항(소프트웨어)을 정의할 때 언급되는 요구사항 중 하나이다. 소프트웨어는 동일한 운영체제 계열의 다른 버전과 호환되지 않을 수 있지만, 어느 정도의 하위 호환성은 종종 유지된다. 예를 들어, Microsoft Windows XP용으로 설계된 대부분의 소프트웨어는 Microsoft Windows 98에서 실행되지 않지만, 그 반대는 항상 참이 아니다. 마찬가지로, Linux Kernel v2.6의 새로운 기능을 사용하여 설계된 소프트웨어는 일반적으로 Kernel v2.2 또는 v2.4를 사용하는 Linux 배포판에서 제대로 실행되거나 컴파일되지 않는다 (또는 전혀 안 된다).

### API 및 드라이버

고급 디스플레이 어댑터와 같은 특수 하드웨어 장치를 광범위하게 사용하는 소프트웨어는 특별한 API 또는 최신 장치 드라이버가 필요하다. 좋은 예는 Microsoft 플랫폼에서 멀티미디어, 특히 게임 프로그래밍과 관련된 작업을 처리하기 위한 API 모음인 DirectX이다.

### 웹 브라우저

대부분의 웹 애플리케이션 및 소프트웨어는 시스템에 설치된 기본 브라우저를 사용하기 위해 웹 기술에 크게 의존한다. Microsoft Edge는 취약점에도 불구하고 ActiveX 컨트롤을 사용하는 Microsoft Windows에서 실행되는 소프트웨어의 일반적인 선택이다.

## 기타 요구사항

일부 소프트웨어는 적절한 성능을 위해 다른 요구사항도 가진다. 인터넷 연결 (유형 및 속도) 및 디스플레이 화면의 해상도가 주목할 만한 예이다.

## 예시

다음은 인기 있는 PC 게임의 시스템 요구사항 정의와 끊임없이 증가하는 리소스 요구 사항의 추세에 대한 몇 가지 예시이다. 한술 더 떠서 동일한 게임도 패치가 거듭됨에 따라서 사양이나 운영체제 버전이 상승하는 일이 있다. 스타크래프트2는 공허의 유산 즈음부터 시스템 요구사양이 높아졌다. 2024년말 부터는 윈도우7에서 제대로 실행이 되지 않는다.

예를 들어, 스타크래프트 (1998)는 다음을 요구한다.

둠 3 (2004)는 다음을 요구한다.

스타워즈: 포스 언리쉬드 (2009)는 다음을 요구한다.

그랜드 테프트 오토 V (2015)는 다음을 요구한다.

## 같이 보기
* 요구사항
* 요구사항 분석
* 소프트웨어 요구사항 명세
* 시방서
* 시스템 요구사항 명세 (SyRS)

## 각주

분류:소프트웨어 요구사항