커널과 배포판, 그리고 데스크탑 환경에 대해

category 아기 펭수 걸음마 | Posted by 오씨 부부 | 2013/12/27 21:45


 

어떤 사람들은 리눅스가 너무나 다양한 배포판이 있어서 혼란스럽다고 합니다. 그러나 이 말은 약간의 어폐가 있습니다. 먼저 리눅스라는 운영체제는 정확히는 없습니다. 굳이 따지자면 리눅스 커널을 쓰는 다양한 운영체제가 있을 뿐이죠. 커널은 하드웨어와 다양한 프로그램을 연결하는 핵심 고리에 해당하는 입출력 명령어 세트라고 할 수 있겠습니다. 고려 시대로 치면 왕명을 출납하던 추밀원쯤 된다고 보면 될 것입니다. 수많은 커널들 중에 무료로 공개되어 위키피디아처럼 전 세계 프로그래머들이 계속해서 수정할 수 있는 게 바로 리눅스 커널이라고 보면 될 것입니다.

 

그 리눅스 커널을 사용해서 만드는 운영체제들을 통칭하여 리눅스라고 부르는 것이지, 리눅스라는 OS가 있고 그것에서 배포판이라 불리는 변종들이 있는 게 아닙니다. 따라서 리눅스 생태계가 혼란스러운 것이 아니라 다양한 운영체제들이 서로 자신만의 장점을 내세우며 성장해 간다고 표현해야 맞습니다. 인간이 자신의 신체구조를 이용하여 의미를 담아 일정한 발음을 하는 것을 통칭하여 언어라고 부르는 것이지, '언어'라고 불릴 뭔가가 따로 있고 거기서 한국어가 갈라져 나오고 영어가 갈라져 나온 게 아니잖습니까.

 

리눅스 커널만 있다고 OS가 되는 것이 아닙니다. 커널이 자동차의 엔진이라면 당연히 차체도 있어야 하고, 굴러가도록 기어와 엑셀과 브레이크가, 앉을 수 있도록 시트가 있어야 합니다. 능력 되는 분들은 그것을 하나하나 구해서 조립할 수도 있지만, 그렇지 않은 유저들을 위해 그것을 미리 완제품으로 조립해서 내놓습니다. 그래서 저마다 다른 부품으로 다르게 조립을 해서 시장에 내놓는데, 그것이 배포판입니다. 조건은 소스를 공개하라는 것입니다. 무료 여부는 중요하지 않습니다. 돈을 벌겠다면 비법을 공개하지 않았겠죠. 즉, 무료라는 것은 결과이고, 중요한 것은 소스 공개입니다. 요즘으로 치면 음식 재료의 원산지 공개를 넘어 조리법까지 다 공개한 음식점인 셈이죠.

 

윈도우도 윈도우 커널만 있는 게 아니라 컴퓨터 내의 파일과 폴더를 이용하기 위한 탐색기를 비롯하여 익스플로러, 미디어 플레이어 등등 다양한 프로그램을 엮고 게임도 몇 개 넣어서 완성품을 내놓듯이, 리눅스 커널을 쓰는 무료 공개 운영체제 진영에서도 다양한 부품(소프트웨어)을 저마다 조립해서 완성품, 즉 배포판(distribution)을 내놓습니다. 따라서 각 배포판은 정확히는 리눅스 커널을 쓰며 오픈 소스라는 같은 정신을 가진 사람들이 서로 자기네 편한대로 모여 만드는 다른 운영체제입니다. 그걸 혼란스럽다고 하면 곤란하죠. 똑같은 축구공을 가지고 어떤 사람들은 족구를 하고, 다른 사람들은 축구를 하고, 또 어떤 사람들은 발야구를 하는데, 그걸 보고 혼란스럽다고 하면 얼마나 우스운 일입니까. 공의 재질이 사람이 맞아도 큰 부상 없어야 하고, 적당한 공간이 있어야 하며, 사람들은 발을 써야 하지만 경우에 따라 신체의 다른 부위를 사용해도 된다는, 공통의 룰을 지키는 것이 중요할 뿐입니다.

 

리눅스도 마찬가지입니다. 리눅스 커널이라는 같은 입출력 명령어 체계를 공유하고 있고, 같은 오픈 소스 정신을 가지고 있으며, 비슷비슷한 부품 덩어리들을 구동시키는 방식이라는 근본적인 유사성 때문에 대략 어슷비슷한 디렉토리 구조와 작동 방식으로 돌아갑니다. 사실 거슬러 올라가면 결국 리눅스, OSX와 윈도우도 결국 뿌리는 하나겠죠. Yes or No의 신호로 움직이는 이분법적 순서도에 의해 움직이는 것이니 원리는 매한가지이고 동시대 인간의 상상력이 다 거기서 거기니까 이치만 알면 달라 보이는 것도 실은 다르지 않음을 알 수 있습니다.

 

그렇다면 리눅스 커널을 쓰는 운영체제들은 어떤 프로그램들을 조합하여 배포판을 완성하는 걸까요? 당연히 그건 저마다 다 다릅니다. 아무튼 프로그램 조합을 위한 커다란 틀, 자동차로 치면 차체쯤 되는 메인 프레임이 바로 데스크탑 환경입니다. 윈도우 역시 MS가 만드는 데스크탑 환경의 일종입니다. 윈도우 하다 보면 명령 프롬프트 상태에서 명령을 내려야 하는 경우가 있는데, 이것이 역설적으로 윈도우는 MS에서 만드는 여러 데스크탑 환경 중의 하나임을 말해 줍니다. 리눅스 커널을 쓰는 리눅스 생태계에서도 마찬가지입니다. 윈도우 서버와 윈도우 7, 윈도우 8.1 등이 서로 비슷하지만 다르듯이 리눅스 배포판들도 서로 비슷한 면도 있고 다른 면도 있습니다. 윈도우에도 테마팩과 스킨팩이 많듯이 리눅스도 그렇습니다. 혼란스러운 게 아닙니다. 엔진만 빼고는 애당초 서로 다른 자동차인데 혼란스러울 게 없죠. 오히려 윈도우 7과 윈도우 8.1이 더 혼란스럽습니다.

 

데스크탑 환경은 한마디로 프로그램 종합 선물세트라고도 할 수 있는데, 종류가 참 많습니다. 독일 사람들이 만드는 KDE는 짜임새 좋고 기능도 많으며 디자인이 화려하지만 복잡하고 무겁습니다. 반면에 가장 많은 사람들이 쓰는 Gnome2는 그에 비해서는 단순 깔끔해서 사용에 편리하고 대신 기능은 적습니다. Gnome3는 리눅서들의 기본 성향인 '자유'를 상당히 제한한 느낌입니다. 운영체제에 신경 쓰지 말고 컨텐츠를 즐기라는 애플의 유전자가 들어간 느낌입니다. Xfce와 LXDE는 가벼워서 비교적 구형 컴퓨터에서도 매끈하게 돌아간다고 합니다만, 그것도 옛날 말인 듯합니다. 더 매끈할 것도 더 무거울 것도 없다고 보면 될 것 같습니다. Xfce는 좀 불편한 느낌인 듯합니다. Cinnamon은 깔끔하고 윈도우 유저들도 금방 사용 가능합니다. Fluxbox는 초반 설정이 어렵지만 속도가 빠르다고 하며, Mate는 Gnome2와 큰 차이가 없고, Unity는 점점 안정화하고 있지만 싫어하는 사람들도 많다고 합니다. Enlightment, Window Maker, MatchBox 등등이 있습니다만 사용자도 적고 이제는 업데이트가 잘 안되는 것들도 있는 모양입니다.

 

배포판 제작 그룹들마다 자기네들의 소신과 사정에 따라 데스크탑 환경을 골라서 음악 플레이어는 A를 넣고, 웹브라우저로는 F를 넣고 등등 알아서 밥상을 차린 것이 바로 리눅스 배포판이라고 보면 되는 셈이죠. 그러다 보니 어떤 그룹은 최고의 컴퓨팅 환경을 가진 사람들을 위한 최고의 프로그램 세트를 조합하기도 하고, 반면에 어떤 그룹은 가난한 제3세계 사람들을 위해 낮은 사양에서도 잘 돌아가는 세트를 만들기도 하며, 그밖에 기능과 보안에 중점을 두거나 사용편의성이나 속도를 더 중시하는 등 서로 다른 특징들이 나타납니다. 게다가 같은 데스크탑 환경이라고 하더라도 디자인 요소를 수정해서 완전히 달라 보이게도 하는데, Gnome2임에도 Gnome3처럼 보이게끔 고친 배포판부터 의료용 프로그램들을 잔뜩 집어넣은 배포판, 그야말로 데스크탑 환경만 넣고 아무 것도 넣지 않은 배포판, 혹은 그것조차 없는 배포판, 나아가 KDE와 Gnome, Unity 등이 모두 같이 들어있는 배포판, 애플 OSX와 똑같이 생긴 배포판, 데스크탑 환경조차 없는 배포판 등등 그야말로 터미널식당의 길고 긴 메뉴판 같은 상황이 바로 지금의 리눅스 생태계입니다. 그러다 보니 Gnome2를 썼는지 Fluxbox를 썼는지는 중요할 수도 있고 중요하지 않을 수도 있습니다.

 

사람마다 먹성이 달라서 어떤 이는 터미널 식당이나 골목길의 싸구려 선술집이 속 편하고 대충 먹을 수 있어 좋다고 하고, 또 어떤 이는 맛 없어도 집에서 먹어야 제일이라는 사람도 있고 시골밥상도 여러 가지여서 해물이 최우선일 수도 있고, 그냥 대충 아무거나 먹는 사람들도 있고, 정말 다양합니다. 수십 만 가지의 프로그램을 제각각의 용도나 디자인에 맞게 조합해서 튜닝하고 그것을 다시 사용자가 무한정의 스킨과 테마팩과 프로그램들로 다시 꾸미다 보니 리눅스 생태계에서는 같은 데스크탑이 없다고까지 일컬어질 정도입니다. 하지만 아무리 가짓수가 많더라도 사람들이 제일 많이 쓰는 것들은 있게 마련입니다. 그냥 21세기를 살며 컴퓨터라는 도구를 쓰는 대다수의 사람들에게 통용되는 직관에 따라 이것저것 만질 수 있도록 만들어졌다면 그걸로 족합니다. 막상 써보면 다 거기서 거기거든요. 중요한 것은 사용자가 자신에게 맞는 배포판을 잘 골라서 써야 하는데, 적어도 2~3종은 간단히라도 다뤄보길 권합니다.(계속)

 

진보블로그 공감 버튼트위터로 리트윗하기페이스북에 공유하기

Trackback

Trackback Address :: 이 글에는 트랙백을 보낼 수 없습니다

Comments