[컴퓨터 길잡이] PC대탐험 (23);상위메모리 (12)

그동안 설명해온 기본메모리 1M는 8086(8088이 실제 PC에 적용됨)이후 PC가채택하고 있는 모든 메모리의 실제 지정의 한계를 나타내는 매우 중요한 사항이 되고 있다는 점을 잊어서는 안된다.

이후에 등장하는 80286 80386 80486 펜티엄칩의 메모리 지정방법의 원류가8088에서 유래하기 때문이다.

지난호에는 PC가 지정할 수 있는 메모리한계인 1M가운데 도스의 작업영역 이자 프로그램과 데이터를 기록하는 6백40KB의 내용을 살펴보았다.

이번호에서는 1M가운데 6백40KB를 제외한 3백84KB의 용도를 알아보자.

앞에서 살펴보았듯 이 부분은 64KB메모리 블록 6개로 구성된다. 64KB를 6으로 곱하면 3백84KB가 되는 셈.

6백40KB가 데이터와 프로그램을 저장하기위한 영역이라 하위메모리라 불린다면 3백84KB는 PC작동을 위한 가장 기본적인 데이터를 보관하기 위해 할당 된메모리이기 때문에 상위메모리라 한다.

무엇보다도 관심을 끄는 사항은 이곳이 메모리 확장의 산실이라는 것이다.

PC가 등장하던 초기에는 이 부분이 여러가지 목적으로 쓰기 위해 예약되었거나 쓰이지 않는 곳이 있었다.

그러나 PC의 메모리 보유량이 늘어나면서 처음 계획과 달리 전혀 쓰지 않는부분을 조금씩 활용하기 시작했고 기본메모리가 많이 필요한 요즈음에는 매우 유용하게 쓰이고 있다.

이 때문에 이곳을 시스템 영역이라 부르기도 한다.

3백84KB 메모리블록은 여섯개이므로 각각을 A,B,C,D,E,F라고 명명해 본다.

그렇다면여섯개의 메모리 블록은 어떻게 쓰였을까.

시스템 기본용도인 비디오메모리, 롬바이오스, 그리고 확장용 하드웨어를 위한 메모리등으로 쓰인다.

우선 6개의 메모리 블록중 맨위의 A와 B의 두개 블록, 즉 64KB 두개를 합친1백28KB는 비디오메모리를 담당하고 있다.

정확하게 말하면 그래픽카드(VGA카드)위에 있는 비디오 롬바이오스의 데이터내용을 옮겨와 저장하는 곳이다.

실례를 들어보자.

VGA카드를 구입해 PC의 확장슬롯에 설치할 때 PC의 사용환경을 설정해주는CMOS프로그램에 이를 등록시켜야 한다.

등록작업시 CMOS프로그램은 비디오 롬바이오스데이터 내용을 PC의 시스템 메모리(1백28KB)로 옮겨놓을지의 여부를 묻게 된다.

대부분의 PC사용자들 처럼 YES라고 대답하면 VGA카드에 있는 비디오롬바이 오스의 데이터내용이 기본메모리의 상위메모리로 자동으로 옮겨진다.

참고로 시스템 롬바이오스가 PC를 처음 켰을 때 PC작동을 위한 가장 기본적인 역할을 담당하는 프로그램이라면 비디오롬바이오스는 비디오칩에서 작업하기 위한 가장 기본적인 데이터를 보관하고 있는 롬임을 구분해 두자.

흔히 컴퓨터 화면에 뿌려지는 내용, 즉 우리가 모니터상에서 보는 각종 화상이나 텍스트를 구성하는 데이터는 VGA카드내에 장착된 비디오램이라는 전용반도체에 저장된다.

그런데 화면상의 각종 작업을 하기 위한 기초적인 데이터신호 (실제는 신호값설정 칩의 운용기준, 파라미터라 불리나 용어의 어려움과 초보자에게 혼란을 주는 것을 방지하고자 여기서는 생략한다)는 PC의 기본메모리내에 별도로 저장된다.

엄밀히 말하면 초기 VGA카드에 저장된 내용가운데 일부가 PC의 기본메모리 상위메모리 3백84KB가운데 1백28KB내)로 옮겨지는 것이다. 왜냐하면 화면에 뿌려지는 속도를 더욱 향상시키기 위한 메모리 관리방법이기 때문이다.

그렇다면 VGA카드의 비디오램의 데이터도 시스템 메모리로 옮겨오면 어떨까? 물론 처리속도는 더더욱 빨라진다. 그러나 이것은 현실적으로 불가능하다.

1M에 불과한 기본메모리 가운데에서도 시스템 영역은 3백84KB에 불과하기때문이다. 비디오램에서 한꺼번에 다루는 메모리 용량은 1M가 넘는 것도 흔하다. PC를 역사적으로 살펴보면 비디오메모리 A와 B블록중 오리지널PC(탐험 1회 참조)에서는 B영역(64KB)만 화면을 위해 쓰였고, A영역은 빈공간으로 남아부가적으로 이용되었다.

A영역을 사용하는 것은 PC계열의 설계개념과 충돌현상이 일어나기 때문이다. 단 A블록이 공식적으로 사용된 것은 80년대 이후 IBM의 EGA(Enhanced Grap hics Adapter)그래픽카드가 등장한 후부터이다.

EGA는 그 이전의 디스플레이 보드보다 더많은 메모리를 필요로 했기 때문에두개의 블록을 사용하게 된 것이다.

EGA는 VGA카드가 나오기 전단계의 그래픽카드다. 자세한 내용은 추후에 그 래픽카드란에서 설명키로 한다.

비디오롬바이오스에 할당된 두개의 메모리는 일반램과 작동원리가 같지만시스템메모리의 특성을 살리고 속도 향상을 위해 새로운 기능이 추가되어 있다. 그것은 하나의 메모리에 두개의 회로가 연결될 수 있는 듀얼포트로 구성되었다는 것이다. 듀얼포트는 데이터가 화면에 데이터를 뿌리는 동시에 또 다 른통로를 통해 CPU와 데이터를 주고 받을 수 있음을 의미한다.

PC의 모니터 작업에 할당된 A와 B블록에 이어 특수한 목적의 C와 D블록이 있다. 확장롬 영역이라고도 불리는 이 영역은 처음에는 사용되지 않다가 PC계열 의역사에 따라 여러가지 용도로 사용된다.

확장롬이라 불리는 이유는 상위메모리 마지막에 있는 E,F블록에 있는 롬바 이오스를 확장할 때 C,D블록이 사용되기 때문이다.

실례로 새로운 주변장치가 추가되면 그것을 지원하는 내장 프로그램이 필요한데 그때 부가되는 롬바이오스 프로그램이 이 영역에 추가되었다.

이영역에서 가장 중요한 사항은 뒤에서 다루게 될 확장메모리에 이용된다는점이다. 확장메모리야 말로 메모리지정의 한계를 벗어나게하는 메모리지정 방법이기때문이다. 다음호에 다루게될 확장메모리는 여기서 그 유래가 발생됨을 유의하자. 8086이후 등장하는 80286컴퓨터부터 프로세서가 다룰 수 있는 메모리가 4G B로 확장된 것도 실제모드의 확장, 곧 메모리의 확장에 있는 것이다.

마지막으로 E와 F는 롬바이오스가 들어있는 메모리 블록 공간이다. 롬바이 오스는 PC를 처음 켰을 때 PC작동을 위한 가장 기본적인 역할을 담당하는 프로그램을 롬에 저장해둔 곳.

단 롬바이오스는 별도의 란에서 다루기로 한다. 결국 기본메모리 가운데 3백84KB의 상위메모리는 메모리 확장의 근간을 이루게 되고 PC시스템의 가장기본적인 데이터를 저장하는 중요한 메모리 공간이라 할 수 있다.

신영복 기자

브랜드 뉴스룸