우분투의 프로그램들을 모두 해체하고 나면 그 속에는 커널(Kernel)배쉬(Bash) 라는 이름의 셸(Shell)이 남을 것입니다.


사람으로 생각하면 커널은 뇌간의 역할을 합니다. 뇌간은 심장박동, 호흡, 혈압을 조정하는 기관입니다.

커널은 컴퓨터를 켜면 하드드라이브(HDD)에서 메모리로 읽혀진 후, 메모리에 남아 각종 주변기기를 통제하고 그 주변기기에서 발생한 신호를 소프트웨어나 다른 주변기기에 주고 받는 역할을 합니다.

뇌간이 손상되면 사람이 살 수 없듯이 커널이 손상되면 혹은 커널이 없다면 리눅스는 작동할 수 없습니다.


리눅스 커널은 1991년 핀란드 대학생인 토발즈 리누스(Linus Tovalds)에 의해 처음 만들어져 '리눅스'란 이름이 붙었습니다.   


셸(Shell)은 컴퓨터에게 사람의 명령을 전달하는 역할을 합니다.  셸은 사람이 입력한 명령어를 해석해 컴퓨터가 이런 저런 기능을 하도록 합니다.

셸을 이용한 컴퓨터와 대화는 터미널(terminal)을 이용해 가능합니다.

사용자는 터미널에 문자로 미리 정해진 명령을 입력해 셸에게 명령을 전달하고 셸은 그 명령에 따라 컴퓨터가 작동하도록 합니다.

예를 들어 터미널에서 'ls'를 입력하면 셸은 목록(list)을 입력하라는 명령으로 알아듣고 목록을 보여줍니다.

ls 같이 문자를 이용한 명령 방식을 '명령 줄 방식(Command Line Interface: CLI)' 이라고 부릅니다.


'명령 줄 방식'은 우리말 쓰기를 위해 작성자가 제안하는 말입니다.    


리눅스에서 사용되는 배쉬 셸은 'Bourne Again SHell'의 약자로 Bourne 은 1978년 리눅스의 기반인 유닉스 쉘을 프로그래밍 한 스티븐 본(Stephen Bourne)씨를 기리는 의미에서 사용됐습니다.

동시에 Bourne 발음은  영어단어 born과 발음이 같은 점도 이용됐습니다. born again은 '부활'을 뜻하기 때문에 배쉬 셀은 유닉스 쉘을 부활시켰다는 의미도 갖고 있습니다.

배쉬 셸은 1987년 브라이언 폭스(Brian Fox)에 의해 프로그래밍 됐고 1990년 부터 체트 라메이(Chet Ramey) 씨가 관리를 하고 있습니다.

리눅스를 오랫동안 사용해온 사람들은 배쉬 셸 사용에 익숙합니다.


그러나 사용자가 '정해진 명령'에 무엇들이 있는지 모를 경우, 명령 줄 방식은 사용하기에 불편합니다.  모든 사람들이 배쉬 셸을 익히고 터미널 명령어를 모두 외울 수는 없습니다.

사용자에 대한 배려(user-friendly 환경)가 중요해지면서 명령을 그림으로 바꾸고 이 그림들을 보여주어 어떤 기능이 있는지 보면 바로 알 수 있게 해주는 그림을 이용한 사용자 명령방식(GUI)이 등장했습니다.

곧 명령줄 방식에 비해 훨씬 편한 GUI방식은 모든 OS에 확산됐고 리눅스 역시 X윈도우 를 통해 GUI방식을 사용하기 시작했습니다.


X윈도우는 리눅스 사용자들 사이에서 간단하게 'X' 또는 'X11'으로 불립니다.


X윈도우는 '디스플레이 프로토콜(Display protocol)'의 일종입니다. 간단히 풀이하자면 화면표시(display)를 어떻게 해줄지 약속(protocol)이 담긴 프로그램이라고 할 수 있습니다.

즉 X윈도우에는 자판이나 마우스로 입력된 명령에 대해 어떻게 반응해 화면에 어떤 정보를 보여줄 것인가 하는 내용이 정리돼 있습니다.


X윈도우는 1984년에 처음 등장했고 엑스 닷 오그 재단(X.Org foundation)이 관리하는 11번째 개정판인 X11은 1987년에 등장했습니다.      


X윈도우는 리눅스에서 윈도우를 사용할 수 있게 해주었지만 몇 가지 면에서 부족했습니다.

사용자들은 좀 더 화려하고 효과와 편리한 기능이 더해진 환경을 원했고 그 결과가 1.2 우분투의 자매들과 친척들에서 설명한 데스크탑 환경을 구현해주는 프로그램들이 등장했습니다.

우분투는 그놈(Gnome)을 X윈도우 위에 사용하고 있으며 KDEXfce 도 데스크탑 환경으로 사용할 수 있습니다.

우분투에서 사용하는 프로그램은 그놈에서 효과적으로 보여질 수 있도록 설계됩니다만 KDE나 Xfce환경에서 사용할 수도 있습니다. 그 반대도 마찬가지 입니다.

이렇게 호환이 가능한 이유는 앞서 3가지 기초- 커널, 배쉬 셸, X윈도우를 공통적으로 사용하고 있기 때문입니다.


같은  데스크탑 환경에 속한 프로그램에 의존성이 높은 일부 프로그램의 경우 다른 데스크탑 환경에서 오작동을 하기도 합니다.  


우분투에는 데스크탑 환경에 컴피즈-퓨전(Compiz-Fusion) 이 더해져 있습니다.

컴피즈-퓨전은  X윈도우상에 윈도우에 화려한 특수효과나 색상과 모양을 적용하고 바꿀 수 있는 종합적인 윈도우 관리자(composting window manager) 역할을 하는 프로그램입니다.

데스크탑을 상자로 만들어 돌리기(Cube효과), 화면에 낙서하기, 화면을 그림으로 잡아놓기(capture) 등을 구현해 줍니다.

현재 컴피즈-퓨전은 우분투에 완벽하게 흡수된 것은 아닙니다. 달리 말하면 기능면에서 그놈과 겹치는 부분과  설정과 관련해 가끔 충돌이 생기는 부분이 있습니다.

이런 부분이 사용자에게 혼란을 주는 요소가 되기도 합니다.

우분투는 7.10 이런 혼동을 최소화 하기 위해  데스크탑의 모양과 기능 설정을 '모양새'로 모아놓았습니다.

한편 컴피즈-퓨전 이전에는 컴피즈와 베릴이 같은 기능을 하는 프로그램으로 존재해 왔습니다. 컴피즈가 원조이고 여기서 베릴이 하나의 가지로 개발돼 따로 자라나왔습니다만 다시 컴피즈-퓨전으로 통합돼 7.10에 탑재된 상태입니다.

저사양 컴퓨터를 사용중이거나 특수효과에 관심이 없다면 속도 개선을 위해 컴피즈-퓨전 기능을 꺼놓는 것을 권합니다.


정리하면 우분투는 리눅스 커널에 배쉬 셸을 사용하며 그 위에 X윈도우와 그놈, 컴피즈-퓨전이 설치돼 기본적인 사용환경을 구성하고 있습니다.


© 1.3장에 사용된 이미지는 각 개발사/단체에 귀속돼 있습니다.

설명서 처음으로 돌아가기

설명서 다음 장으로 넘어가기

신고

+ Recent posts