사전에서 "cache"란 단어를 찾아보면 "은닉처" 또는 "비밀스런 장소"로 나와있다. 메모리분야에서의 "캐시"란 색다른 의미가 부여된다.
캐시메모리는 메모리와 CPU사이에 존재하는 별도의 작은 메모리 공간이라 할수 있다. 왜 이런 공간이 필요할까.
그 유래를 살펴보자.
PC의 두뇌에 해당하는 마이크로프로세서는 작업에 필요한 모든 내용(심지 어명령어까지도)을 메모리로부터 불러들여 작동하게 된다.
프로세서는 메모리에 저장되어 있지 않은 내용을 스스로 창출할 수 없다.
전적으로메모리에 의존하고 있는 셈이다. 물론 메모리 내용은 CPU가 처리한 내용을 담기도 한다.
PC의 핵심요소가 되는 CPU와 메모리는 이같은 상호 의존성에 따라 가장 빈번한 교류(전기신호의 주고받음)를 갖게 된다.
여기서 말하는 "가장 빈번한 교류"가 얼마나 빠르게 진행되느냐에 따라 PC전체의 속도와 성능향상에 결정적인 역할을 하게 된다.
문제는 여기서 발생한다.
그동안 프로세서는 눈부시게 발전해온 반면 메모리는 프로세서와는 비교할 수 없을 만큼 발전사항(?)이 미미하다.
메모리는 집적도와 용량이 대폭 확대된 데 반해 처리속도(사이클)가 거의 변동이 없었기 때문이다.
프로세서의 처리속도가 엄청나게 빨라지는데 보조역할을 하게 되는 메모리가터무니없이 느려지게 됨으로써 CPU는 작업도중 대기해야 하는 상황이 자주발생한다. 결국 CPU의 처리속도가 아무리 빨라지더라도 메모리의 반응속도가 느리면 전체 PC시스템의 처리속도 향상은 기대할 수 없다.
이 때문에 메모리(메인)와 CPU사이에 특수한 용도의 작은 메모리 공간을 설치하게 되는데 이것이 캐시메모리이다.
캐시메모리는 메인메모리의 데이터 일부를 불러와 CPU가 작업에 필요로 하는순간 순간에 데이터를 빠르게 주고 받는다.
하드웨어적으로는 빠른 데이터처리에 알맞은 S램으로 구성된다.
IBM사의 컴퓨터 역사를 살펴보면 캐시메모리 탄생을 쉽게 파악할 수 있다.
지난 1954년 IBM은 "IBM650"이라는 컴퓨터를 발표한다. 이 제품에서는 마 이크로프로세서의 처리속도(사이클)가 메모리 사이클 시간보다 느리기 때문에프로세서가 메모리 응답을 기다리는 일이 없었다.
4년후 발표되는 "IBM7090"이라는 컴퓨터 단계에서는 각각의 사이클 시간이같아진다. 60년대 중반 컴퓨터 개발진들은 컴퓨터의 계산속도가 생각보다 느린 원인 을발견하고 프로세서에 어울리는 메모리의 개발을 서둘렀는데 이때 채택된 것이 캐시메모리이다.
69년 에 발표된 "IBM360/85"제품이 캐시메모리를 최초로 장착한 컴퓨터이다. 이후에 프로세서가 눈부시게 발전하면서 85년에 이르러 프로세서와 메모리 의반응속도차가 10배이상 벌어지게 된다.
그럼 PC에서 채택하고 있는 캐시메모리의 용량은 얼마나 되는가.
S램으로 구성되기 때문에 처리속도가 빠른 캐시메모리는 가격이 비싼 단점 이있다. 또 적은 용량으로도 충분히 캐시메모리 역할을 할 수 있다.
이같은 이유로 캐시메모리 용량은 메인메모리 용량의 1%수준에도 미치지못한다. 실례로 8M의 메인메모리 용량을 가진 386컴퓨터의 캐시메모리 용량은 64KB 로정확하게는 0.78%에 이른다. 물론 사용자 환경에 따라 캐시메모리와 메인 메모리의 용량이 달라지는 경우가 있으나 일반적인 현상이 이렇다는 것이다.
최근에는 S램 가격이 많이 하락되어 최고 5백12KB를 장착하는 경우도 많다. 똑같은 PC에 캐시메모리를 장착하는 경우와 그렇지 않은 경우의 성능차이 는얼마나 날까.
여러 유틸리티로 측정해보면 같은 성능의 PC에 캐시가 있는 경우 40%정도 의속도증가를 확인할 수 있다고 한다.
일반적으로 빠른 PC시스템은 빠른 CPU와 빠른 메인메모리를 결합했을 때얻어진다. 그러나 이같은 구색을 갖추려면 적지 않은 비용을 지불해야 한다.
그러나 캐시메모리를 사용하면 적은 비용으로도 고성능의 기능을 얻을수있다. 단 주의할 사항이 있다.캐시메모리의 역할은 하드웨어적으로 S램뿐만 아니라D램으로 구성이 가능하고 소프트웨어적으로도 처리할 수 있다.
캐시역할을 하는 모든 SW 및 HW를 캐시시스템이라 칭한다.
하드웨어로 구성된다는 것은 물리적으로 빠른 장치와 느린 장치사이에 완충적인 장치가 설치됨을 의미한다.
대표적인 것으로 위에서 설명한 CPU와 메인메모리(D램) 사이에 S램을 장착 는경우가 있다. 또 메인메모리와 보조기억장치인 하드디스크 사이의 데이터 교환을 빠르게 하기 위해 디스크 캐시용 D램을 장착할 수도 있다.
이때는 D램의 반응속도가 디스크보다 빠른 장점을 활용해 느린 디스크의 데이터 접근시간을 줄여주고 있는 원리이다.
소프트웨어적으로도 캐시시스템을 구성할 수 있다.단 소프트웨어 캐시시스 템은 CPU와 메인메모리사이에서의 구성은 불가능하고 디스크와 메인메모리 사이에서 일반적으로 활용된다.
소프트웨어로 구성된다는 뜻은 프로그램이 캐시역할을 한다는 것이다. 대표적인 것이 메인메모리에 디스크 캐시프로그램을 설치하는 경우가 있다. 이 때캐시메모리는 메인메모리 공간이 된다.
PC에서 CPU로 하여금 디스크에 데이터를 쓰게하는 일반 프로그램이 있다고가정해보자. 메모리에 상주된 캐시프로그램은 CPU와 디스크의 데이터교환에 상당한 시간 ? 이 소요되기 때문에 중간에서 각 내용을 가로채 보관하고 있다가 필요 한곳에 곧 꺼내주는 역할을 하게 된다.
운용체계인 DOS프로그램을 열어보면 smartdrv라는 파일이 나타난다. 이 프로그램을 이용하면 디스크 캐시시스템을 구성할 수 있다.
캐시시스템 가운데 디스크 캐시는 하드웨어와 소프트웨어적인 구성이 가능하고 CPU의 메모리 캐시시스템은 하드웨어적인 구성만 가능하다.
신영복 기자
오피니언 많이 본 뉴스
-
1
[ET시론]AI 패권의 새로운 질서
-
2
[ET단상] 양자와 AI 시대, K보안 도약을 위한 제언
-
3
[ET톡] 퓨리오사AI와 韓 시스템 반도체
-
4
[ET톡] AI와 2차 베이비부머의 미래
-
5
[최은수의 AI와 뉴비즈] 〈14〉AI '앱 경제'를 '에이전트 경제로' 바꾸다
-
6
[황보현우의 AI시대] 〈25〉고독한 사람들과 감성 AI
-
7
[부음] 김동철(동운아나텍 대표)씨 장모상
-
8
[부음] 유상임(과학기술정보통신부 장관)씨 장모상
-
9
[사설] 보안기능 확인제품 요약서 사안별 의무화 검토해야
-
10
[GEF 스타트업 이야기] 〈57〉더 나쁜 사람 찾기, 손가락질하기 바쁜 세상
브랜드 뉴스룸
×