•  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  

GUI

최근 수정 시각 : 2024-06-15 12:59:45 | 조회수 : 218

GUI란 영상형 사용자 제어환경(Graphic User Interface)의 약자로, 시각적인 형태로 조작, 확인을 할 수 있는 인터페이스 전반을 지칭한다. 고전적인 텍스트 기반의 인터페이스와 구분되는 의미로 사용하며, 한국에서는 보통 ‘구이’정도로 발음해서 부르고 있다.

목차

1. 상세
2. 구성요소
3. 역사
3.1. 1960년대
3.2. 1970년대
3.2.1. 제록스 알토 컴퓨터
3.3. 1980년대
3.3.1. PERQ 웍스테이션
3.3.2. 제록스 스타
3.3.3. 애플 리사
3.3.4. Visi On
3.3.5. MS 윈도우
3.3.6. 맥킨토쉬
3.3.7. GEM
3.3.8. X-window
3.3.9. GEOS
3.3.10. 아미가 워크벤치
3.3.11. MS 윈도우 1.0

1. 상세

GUI는 의미적으로 텍스트 모드로 작동하는 TUI(혹은 CLI)와 대비적으로 사용되며, 키보드가 중심이되는 TUI 환경과 달리 그래픽적인 요소와의 상호작용을 위해 마우스, 터치스크린 등의 화면을 포인팅하는 입력장치를 중심으로 운용하게 구성되어있는 것이 특징이다. 텍스트 모드에서 마우스를 쓰는 등의 조합 형태, 예를 들어 MS사의 윈도우 초창기 버전의 쉘이나 Mdir 등도 광역적인 의미로는 GUI 환경으로 분류할 수도 있으나 텍스트로만 이뤄진 경우에는 용어적인 의미에서 그래픽요소가 없기 때문에 보통 TUI에 포함시키는 경우가 많다. 즉 GUI란 CLI처럼 ‘명령어’와 ‘결과출력’의 텍스트로 이루어지지 않고 시각적으로 조작할 수 있는 체계 전반을 지칭한다. 단지엽적으로 그래픽모드에서 그래픽이 함께 포함되지 않으면 GUI로 분류하지 않는다.

1960년대부터 기본 개념이 개발되기 시작했으며, 현재의 제대로 된 GUI환경을 처음 구축한 것은 1973년 제록스 산하의 팰로 알토 연구소(Palo Alto Research Center, 통칭 PARC)에서 개발한 제록스 알토 컴퓨터로 보고있다. 현재의 아이콘 개념이나 더블클릭, 버튼 조합 클릭 등의 개념을 도입한 것도 역시 PARC의 제록스 스타 컴퓨터였다. 때문에 아직도 일부에서는 PARC User Interface(PUI)라고 부르기도 한다.

일반적으로 알려진 개념과 달리 애플은 GUI개념의 개발자가 아니며 애플에서 GUI를 처음 채용한 애플 리사의 인터페이스는 전반적으로 제록스가 이미 구현한 기능의 열화 카피를 해놓은 것에 지나지 않는다. 일반에 애플이 GUI를 처음 적용한 것처럼 알려진 것은 애플의 언론플레이 능력이 뛰어났기 때문일 뿐이다.(1)

컴퓨터의 발달과 함께 다중 작업의 실행과 멀티미디어 기능의 활용도가 높아지면서 상당히 중요한 요소로 발달했으며, 현재는 대부분의 상용 OS가 GUI환경을 기본으로 제공하고 있다.

기본적으로 키보드로 명령어를 입력해야만 결과물을 볼 수 있는 CLI와 달리 GUI는 아이콘을 비롯한 시각적인 요소를 선배치하여 사용자가 아이콘을 비롯한 실행기를 선택하는 것만으로 프로그램을 실행할 수 있도록 하는 것이 가능하다는 점에서 직관적이고 접근성이 뛰어나다고 할 수 있다.(2) 때문에 일반 사용자들이 컴퓨터에 접근하는데 필요한 장벽을 낮추는데 큰 역활을 한다.

그러나 동시에 영상적으로 보여지는 것이기 때문에 사용자가 어떤식으로 접근하게 될지에 대한 고려가 필수적이 된다. UI와 UX에 대한 논의가 현재도 계속되고 있는 것은 이러한 고려를 끊임없이 진행하며 더 나은 방향을 모색하고 있기 때문이다. 체계화가 거의 끝나 다양한 프로그램이 거의 유사한 형태로 결론에 도달해있는 CLI를 비롯한 TUI와는 그런 면에서 상당히 구분된다 할 수 있다.

2. 구성요소

GUI의 주요 구성요소는 1970년대 알토 컴퓨터가 나온 이래로 'WIMP‘라고 불리우는 것으로 대표되고 있다. 이는 주로 다음과 같다.
  • 윈도우(Windows) : 멀티 태스크를 위해 다중 창을 열어 한 화면에 띄울 수 있는 개념을 가리킨다.
  • 아이콘(Icons) : 응용프로그램이나 특정 명령어 등을 미리 지정해놓은 바로가기 개념을 그래픽화 시킨 버튼.
  • 메뉴(Menu) : 명령어 입력 대신 선택할 수 있는 옵션, 분기, 실행 대상 등을 지정하는 전반을 포함하는 대상. 즉 아이콘을 제외한 선택기 전반
  • 포인터(Pointer) : 마우스를 비롯한 입력도구로 GUI 환경을 제어하는 요소. 예를 들면 마우스가 현재 화면의 어디를 가리키는가를 보여주는 시각적 표현요소.

즉 GUI는 그래픽 모드의 화면에서 마우스 등의 입력장치로 마우스 포인터 등의 좌표 입력계를 기반으로 아이콘을 클릭하거나 드래그 하는 등의 방식으로 프로그램을 실행시키고, 그 프로그램은 창 형태로 여러개를 띄워 제어하는 것이 가능하다. 또한 GUI환경의 프로그램은 실행 중에 옵션이나 분기 선택지를 마우스로 클릭하는 형태로 제어할 수 있는 메뉴를 내재하도록 구성된다는 것.

이 중 일부가 빠져도 GUI로서 인정 못하는 것은 아니나, 현재는 이러한 요소가 모두 모인 것을 일반적으로 GUI라고 부르고 있다. 현재는 워낙 기본적인 개념이라 윈도우나 맥킨토쉬를 사용하는 사람들에게는 익숙할 개념이지만, CLI 등의 명령어 기반 인터페이스를 사용하다보면 이러한 요소가 얼마나 혁신적인 것이었는지 어렵지 않게 유추해볼 수 있다.

3. 역사

GUI 환경의 역사는 1960년대로 거슬러 올라가서 70년대에 꽃을 피우게 된다. 간략하게나마 GUI환경의 역사를 살펴보자.

3.1. 1960년대

GUI의 기본 개념은 1960년 초 스탠포드 연구협회(SRI)에서 온라인 시스템에서 마우스를 이용해서 제어하는 텍스트기반의 하이퍼링크를 도입한데서 출발한다.

비슷한 시기인 1963년에는 이반 서덜랜드가 CAD(컴퓨터 지원 설계) 소프트웨어의 조상격에 해당하는 스케치패드는 최초로 그래픽모드에서 운용되는 소프트웨어였다.(단 조작계는 키보드와 조합해서 사용해야 하므로 완전한 GUI로 분류하기엔 약간 애매하다)

3.2. 1970년대

3.2.1. 제록스 알토 컴퓨터

  • 제록스 알토 컴퓨터 광고
  • 일본에서 방송된 알토 특집

GUI 방식이 처음 적용된 컴퓨터로 알려지고 있는 알토 컴퓨터는, 사실상 현재까지도 이어지고 있는 PC의 GUI 인터페이스의 기본 개념이 거의 모두 정립된 제품이기도 하다.

기본적으로 1960년대에 만들어진 하이퍼텍스트를 마우스로 조작하는 개념과 그래픽모드 상에서 돌아가는 프로그램이 더해져 하나의 완성된 형태로 구현된 것이 제록스 알토 컴퓨터라고 할 수 있다. 근원은 CLI방식의 조작계를 가지고 있지만, 그 위에 마우스와 하이퍼텍스트가 조합된 조작계로 프로그램을 실행하고 제어하는 것이 가능하며, 그 위에 돌아가는 프로그램은 그래픽모드 상에서 아이콘을 이용한 기능을 구현하는 등, 사실상 현재 구현된 GUI의 모든 인터페이스가 포함되어있다.

3버튼 마우스와 비트맵 그래픽모드 출력이 가능한 점, 창을 여럿 띄워서 운용하는 것이 가능한 점 등, 시대를 뛰어넘는 엄청난 진일보한 인터페이스를 선보였다.

단지 알아야 할 것은, 보통 퍼져있는 사진이 모니터와 키보드, 마우스만 비추고 있는 경우가 많아 데스크탑 컴퓨터로 인식하기 쉽지만 실제 본체는 모니터 4대를 합쳐놓은 것보다 큰 거대 장치이다. 저장장치도 백업 테이프 장치만한 형태인지라 현재 보면 정말 과거의 유물같은 느낌이 드는 장비이지만, 당시로서는 혁명 그 자체였다고 할 수 있다.

그러나 제록스 PARC는 기본적으로 연구소였고, 이 제품이 가정용 컴퓨터로서 대 히트를 칠 수 있을 거라고는 생각지 못했던 듯 하다. 가정용 컴퓨터로 상품화 시키려는 계획을 가지고 있지도 않았으며, 가격도 당연히 엄청났기 때문에(3) 당시 2000여대만이 팔렸다고 한다.

3.3. 1980년대

3.3.1. PERQ 웍스테이션

  • PERQ 웍스테이션 영상

1980년부터 발매가 시작된 PERQ 컴퓨터는 그래픽 웍스테이션으로 불리웠으며, 기본 인터페이스 자체는 알토 컴퓨터와 크게 다르지 않았으나 낮아진 가격으로 일반 사용자의 손에도 닿을 수 있는 수준으로 제품으로 선보인 첫 GUI 장비라고 할 수 있었다.

그러나 웍스테이션이란 이름에서도 알 수 있듯, 낮아진 가격이라고 해도 어디까지나 당시 기준의 ‘고성능 컴퓨터’ 중에 싸다는 것이지 가정용 컴퓨터, 애플2나 MSX2, IBM-PC등과는 가격의 격이 다른 것은 당연한 일. 때문에 널리 팔리거나 하지는 않았다.

게다가 이어서 이듬해 나온 제록스 스타 때문에 이름을 아는 사람도 별로 없는 것이 안타까운 잊혀진 장비이다.

3.3.2. 제록스 스타

1981년 발매된 제록스 스타 웍스테이션. 정식 명칭은 제록스 8010 정보 시스템으로, 1977년부터 개발되어 81년에 이르러서야 판매할 수 있는 형태로 완성되었다.

현재 운용되는 데스크탑 개념, 아이콘, 바로가기 개념, 윈도우 체계 및 스크롤바 개념을 비롯한 전반적 개념의 정리와 마우스 2버튼 체계, 싱글 클릭 선택, 더블 클릭으로 실행되는 개념, 다양한 폰트 사이즈를 혼용 사용이 가능한 등 기본적으로 GUI에서 필수적이라 할 수 있는 요소가 완성된 기념비적인 제품이다.

데스크탑 사이즈로 축소된 컴퓨터로, AMD의 2900 커스텀 프로세서를 장착하고 있다. 역시 일반인 대상의 제품은 아니며 웍스테이션 제품이다. 때문에 가격은 당시 기준으로 7만 5천 달러(…)로, 일반인이 손대기 힘든 수준의 가격을 자랑한다.

3.3.3. 애플 리사

  • 1984년 리사 시연(5분부터)
  • 애플 리사 데모

1983년 애플에서 내놓은 웍스테이션 장비로, 공식 명칭은 애플 리사 마이크로 컴퓨터. 일반인들이 최초의 GUI를 채용한 컴퓨터로 많이 오해하고 있는 기기이지만, 인터페이스 생김새 등은 제록스 알토와 제록스 스타의 인터페이스를 거의 그대로 복사시킨 수준이다. 그러나 메모리 클립보드 개념과 윈도우상의 각종 설정을 통한 제어체계, 아이콘을 비롯한 그래픽 중심의 관리 시스템과 쓰레기통 아이콘 등으로 만들어진 마우스를 통한 파일 제어 등 진일보한 시스템을 만들어낸 것은 사실이다.

스티브 잡스가 주도한 이 프로젝트는 인터페이스적으로는 제록스의 그것을 카피해 나름 저렴한 기기에서 돌아가도록 설계하는데 성공했다는데에 그 의미가 있다. 그렇다고 리사가 제록스 스타에 비해서 가격이 파격적으로 쌌냐하면, 그건 또 아니다. 리사의 초기 가격은 9995 달러로, 5달러 뺀 1만 달러였다. 제록스 스타의 1/7값이긴 했지만 일반적인 가정에서 구입해서 쓸만한 가격은 절대 아니었음을 알 수 있다.

성능이 좋았냐면, 그건 또 아니어서 5MHz의 68000프로세서로 돌아가는 리사에서는 창을 여러개 띄우거나(멀티태스킹이 아님에도 불구하고!) 서식이 있는 문서를 열람하는 것만으로도 버벅이는 문제를 가지고 있었다. 게다가 애플2용 소프트와의 호환성도 없어 소프트웨어 부족에 시달리며 말그대로 버림받은 기종이 되고 말았다.(4) 그러나 여기에서 쌓아둔 자원은 동사의 맥킨토쉬로 이어져가게 된다.

3.3.4. Visi On

  • Visi On 윈도우7에서 돌리기 영상

IBM-PC호환기종용으로 나온 Visi corp의 그래픽 인터페이스 소프트웨어이다. 나중에는 애플 리사용으로도 이식되었다. 자체적으로 부팅이 되는 OS를 포함하고 있으며 각종 기본 관리 유틸리티와 각종 유용한 응용프로그램을 묶은 패키지 상품. 워드 프로세서와 스프레드 시트 프로그램까지 들어있다. 시대를 생각하면 상당히 혁신적인 프로그램이었다.

처음에 이야기했던 대로 텍스트 기반으로 이루어져있어 일부에서는 TUI로 분류할 수도 있겠으나, 엄연히 그래픽 모드에서 구동되는 인터페이스이고, 단색이긴 해도 이미지나 그래프도 사용이 가능하기 때문에 GUI로 분류하는 것이 옳다.

3.3.5. MS 윈도우

1983년 정확하게는 ‘윈도우즈(Windows)‘의 초기 버전이 이 때 ‘발표만’ 되었다. IBM-PC 호환 기종에서 돌아가는 그래픽 쉘로서, 앞서 소개한 Visi On과 비슷한 구조로 이루어져 있으나 Visi On보다 특별히 나아보이는 것이 없다. 실 발매는 1985년에 이뤄지므로 해당 년도에 다시 다루도록 한다.

3.3.6. 맥킨토쉬

1984년 발표된 맥킨토쉬에 채용된 기본 그래픽 인터페이스. 리사를 말아먹은 잡스는 다음 프로젝트를 운용해야했는데, 제프 레스킨이 만들다가 퇴사한 중저가형 컴퓨터 프로젝트인 맥킨토쉬 파트에 끼어들어 개량한 것이 실 발매된 맥킨토쉬가 되었다. 원래 텍스트 인터페이스로 기획되어 제작된 맥킨토쉬에 리사에서 구축된 시스템을 기반으로 GUI환경을 얹고 최적화와 단순화를 시켜 낮은 사양에서 돌아갈 수 있도록 개량한 것이 맥OS의 인터페이스이다. 때문에 맥킨토쉬의 인터페이스 자체는 리사 인터페이스의 개량형으로 보면 적당하다.

1984년 애플의 광고와 더불어서 흔히 GUI환경의 선구자로 잘못 알려진 경향이 있는데, 앞서 설명했듯 맥킨토쉬는 GUI환경의 선구자도 아니고 동시기의 다른 GUI환경을 가진 다른 OS에 비해서 딱히 특출난 것도 없었다. 그러나 이 시기에 GUI환경으로 판매되던 컴퓨터들 중 단연 저렴한 가격을 선보였고, 아이콘을 드래그해 파일을 복사하는 등의 새로운 감각을 제공했다.

3.3.7. GEM

  • GEM 3 on DOS

1984년 처음 발매된 GEM은 디지털 리서치에서 내놓은 8086용 DOS기반의 그래픽쉘로서, 1.1버전까지 등장하며 마이크로소프트의 윈도우가 등장해 살해(!)당할 때까지 가장 유명한 그래픽 인터페이스 어플리케이션이었다.

맥킨토쉬의 인터페이스와 거의 비슷한 형태로 이뤄져 있으나, 근본적으로 도스 위에 기동되는 쉘이기 때문에 프로그램을 실행하면 해당 프로그램으로 전환되게 되어있다. 단 GEM 인터페이스 상에서 운용되는 서드파티 어플리케이션도 일부 발매된 바 있다.

그러나 일단 별매품이고, DOS환경의 특성상 널리 사용되진 않았다.

3.3.8. X-window

1984년 발표된 윈도우 중 현역으로 살아남은 유일한 윈도우 시스템은 사실상 이것 하나 뿐이다. (나머지는 모두 기반까지 다 갈아엎은 다른 녀석들) X윈도우는 IBM과 MIT, DEC에서 공동으로 제작한 ‘아테나 프로젝트’로서, MIT에서 런칭한 그래픽쉘 프로그램이다. 버전1부터 6까지는 DEC에서 만든 VAXen과 VAXstations 1과 2에서 돌아가는 VS100에서만 출력되는 한정된 어플리케이션이었다. 버전8부터 10까지는 VAXstation 11/GPX에서 돌아갔다.

X10은 처음으로 다양한 벤더 장비에서 돌아가는 첫 버전이었고, X11부터는 고성능에 특화해 재코딩이 되었으며, 이후 1988년 해당 컨소시엄이 해체되고 오픈소스중심의 XFree86프로젝트가 발족, 오픈소스 중심으로 개발되다가 상용라이센스와의 충돌이 자주 일어난 관계로 1999년에는 X.org가 발족되어 2004년에는 X.org 재단이 형성되어 계속해서 개발을 해나가고 있다. 현재는 X11을 기반으로 그 위에서 계속변경과 추가가 이뤄지고 있으며, 오픈소스이다보니 포크된 다수의 프로젝트가 있었으나 결국은 모두 X11에 재흡수되어 운용되고 있다.

처음에는 그래픽모드 상에서 다수의 터미널 창을 한번에 띄우는 것과 그래픽모드 상에서 돌아가는 간단한 어플리케이션을 돌릴수 있는 플랫폼으로 시작하여 현재는 다양한 윈도우 메이커의 근본이 되는 프레임웍으로서 활약하고 있다. 처음부터 네트워크 기반으로 작동되도록 디자인되어 여타 로컬기반으로 출발한 GUI환경에 비해 선진적인 구상을 기반으로 하고 있으나, 그러한 특성 탓에 주로 유닉스 계통에서 사용되고 발전되었으며 특정 상업개발사가 집중해서 밀어주는 환경에 비해서 발전이 더뎠다. 그러나 KDE나 GNOME 등의 윈도우 메이커가 발전하면서 공동발전하는 길을 걸어왔다.

3.3.9. GEOS

1985년 첫 선을 보인 GEOS(Graphic Environment Operating System)는 버클리 소프트웍스에서 제작한 애플2와 코모도어64에서 돌아가는 운영체제이다. 이 운영체제는 맥OS의 초기버전을 역어셈블하여 만들어지기 시작했다고 전해지며, 코모도어에서 그래픽운영체제를 돌리는데 그 목적이 있었다.

워드프로세서인 geoWriter와 그림판 프로그램인 geoPainter가 포함되어있었으며, 서드파티 어플리케이션도 꽤 발매되었다. 나중 버전에서는 코모도어128과 애플2에서도 작동되도록 개량되어 발매되었다.

맥OS에 비해서 더 가볍고 빠르게 작동되었으며, 더 많은 기종에서 작동되었기 때문에 그만큼 더 큰 영향력을 보였으나, 코모도어 시스템의 몰락과 IBM-PC호환기종의 급성장으로 인해 크게 빛을 보지는 못했다. 후일 IBM-PC버전에서 돌아가는 16비트 버전의 윈도우시스템인 PC-GEOS 16비트 버전이 발매되었다.

3.3.10. 아미가 워크벤치

1985년 코모도어에서 선보인 아미가1000 시리즈와 함께 선보인 OS에 포함된 그래픽 기반 인터페이스로, 이 OS는 현재로서는 당연하게 받아들여지는 멀티태스킹-점유권 할당식 멀티태스킹(Preemptive Multitasking)-을 지원하여 다수의 창과 어플리케이션을 동시 실행하고 오버랩시킬 수 있었으며, 세계 최초로 컬러 인터페이스의 도입과 스테레오 사운드 등 이전과 차별화되는 강력한 멀티미디어 기능, 서랍식으로 정리되는 아이콘 정리시스템, 작업 상황에 따라 이를 시각적으로 확인시켜주는 마우스 포인터 형태 변형 등 시각적으로 활용적으로 이전과 구분되는 강력한 요소를 잔뜩 갖추고 있었다.

동시기에 나왔던 맥OS에 비해 속도나 기능성에서 월등히 앞서며 사실상 GUI환경의 선두주자로 자리매김을 하였으며, 상대적으로 저렴한 1200달러라는 가격과 놀라울정도로 강력한 멀티미디어적인 요소가 결합되어 말그대로 일대 센세이션을 일으키는데 성공하였다. 이후 발매된 맥OS가 코모도어의 아미가 워크벤치를 본격적으로 벤치마킹하게되는 계기가 되기도 한다.

3.3.11. MS 윈도우 1.0

  • MS 윈도우 1.0

MS 윈도우 1.0은 말그대로 마이크로소프트가 이 분야에서 얼마나 부실했는지를 여실히 보여주는 축약판같았다. 업계 선두의 소프트웨어 제조사라는 간판에 걸맞지 않게 DOS환경에 얹혀진 그래픽모드의 쉘이라는 인상 이상을 주지 못하는 안타까운 소프트웨어였다. 같은해 발매된 코모도어가 각종 멀티미디어 기능과 멀티태스킹까지 지원하는데 반해서 MS 윈도우는 프로그램창의 오버랩이나 창의 드래그 기능도 지원하지 않았다.(타일단위로 배치되는 초창기 윈도우 시스템은 이 때 확립되었다)

윈도우 1.0을 기억하는 사람이 거의 없는 이유도 여기에 있는데, DOS중심이었던 IBM-PC환경에서 쓸모도 없고 기능적으로도 경쟁 서드파티 프로그램에 비해서 떨어지는 윈도우를 굳이 써야할 필요성이 없었기 때문이다. 이는 윈도우 3.0까지 사실상 그대로 이어지게 된다.

(1) 남의 지적재산권을 가지고 경쟁사를 소송거는 애플의 양심없는 행위는 이 때부터 시작되었다.
(2) 익숙해지면 CLI가 효율적인 부분도 많은 것은 사실이지만, 처음 컴퓨터를 접하는 사람이 기본적인 명령어를 알 수 없다는 점을 생각하면 이는 혁신이라기 보다는 혁명적인 변화이다.
(3) 73년에 이런 기능이 되는 컴퓨터는 이 제품이 유일했으며, 캐비넷형태의 초 대형 컴퓨터가 컴퓨터라는 명칭을 대표하던 시기였다. 당연하다면 당연한 일.
(4) 당시에는 이것때문에 ‘잡스가 리사를 두번버렸다’는 농담을 하기도 했다.