9. 필요한 메모리의 양

프레임 버퍼 램이 얼마만큼인가에 따라 컬러 혹은 흑백 디스플레이에서의 해상도가 제한됩니다. 대부분의 경우, 그레이 음영을 가지지 않는 흑백 디스플레이의 경우에는 메모리 양은 큰 문제가 되지 않습니다.

256 컬러의 디스플레이에서는 도트 하나를 표현하는 데에는 한 바이트의 비디오 메모리가 필요합니다. 256 컬러의 디스플레이에 있어 한 바이트는 그 도트 한개의 적, 녹, 청의 배합비에 관한 정보를 담습니다. 필요한 메모리의 총량을 구하기 위해서는 라인당 가시도트의 수와 가시라인의 수를 곱하면 됩니다. 1024x768 해상도의 디스플레이에서는 1024 x 768 = 786432 가 화면상의 가시도트의 갯수입니다. 또, 한 도트당 한 바이트가 필요하므로 786432 바이트 만큼의 비디오 메모리가 필요한 것입니다.

따라서, 일반적으로 올림해서 (HR * VR)/1024 Kbyte 의 비디오 램이 필요합니다(이 예제에서는 정확히 768K 가 됩니다). 필요한 정확한 양보다 더 많은 양의 메모리를 가지고 있다면 그 여분만큼은 가상 스크린 panning 에 쓸수 있습니다.

하지만 비디오 카드에 512k 만 있다면 1024x768 해샹도를 쓸수 없습니다. 설사 좋은 모니터를 가지고 있다고 하더라도 충분한 비디오 램이 없다면 모니터의 잠재능력을 다 이용하지 못하는 것입니다. 반면, SVGA 카드가 1 M 를 가지고 있어도 모니터가 기껏해야 800X600 밖에 지원하지 못한다면 마찬가지로 고해상도는 불가능한 것입니다(가능한 방법이 있기는 합니다. 비월주사(interaced mode)방식 편을 보세요).

필요한 만큼의 메모리보다 더 많은 양을 가지고 있다고 해서 걱정할 필요는 없습니다; XFree86 은 그 여분의 메모리를 사용하여 가상화면을 스크롤할 수 있습니다(Xconfig 화일 문서의 가상화면에 대한 파라메터 부분을 보세요). 또한, 512k byte의 메모리를 가진 카드라도 실제로는 512,000 byte 만 가진 것은 아니라는 점에 주의하십시요. 512 x 1024= 524288 byte 를 가진 것입니다.

만일 S3 카드를 가지고 있고 X/inside 를 쓴다면, 16 컬러(픽셀당 4bit)를 쓸 경우 Xconfig 에서 depth 4 로 설정해서 카드가 다룰수 있는 해상도의 2 배의 해상도를 쓸 수 있습니다. 예를 들어 S3 카드들은 보통 1024x768x256 을 사용합니다. 이를 depth 4 를 써서 1280x1024x16 로 사용할 수 있는 것입니다.