Media Log

한달 쯤 전에 집에서 사용하는 PC를 새로 교체했다.
다른 PC 부품들에 대해서는 별로 욕심이 없는 편인데, 램에는 조금 욕심이 있다.

이제 PC용도 4G짜리 램이 나와서 4G짜리 램 2개를 구입했다. 메인보드는 그래픽 기능이 내장되어 있고 램 슬롯은 2개가 달려있는 아주 싼 저가형 보드를 구입했는데, 그래픽 카드나 비싼 메인보드 값 대신 램에 투자했다고 할 수 있겠다.

기존에 사용하던 PC보다 램이 조금 더 충족해지면서, 1~2기가 정도는 램디스크로 써볼까 하는 생각이 들었다.

램디스크를 설정하기 전에 몇 가지들을 검색해보니, 사람들은 주로 웹브라우저의 임시 파일을 캐시하는 용도로 많이들 사용하고 있었다.

윈도에서는 램디스크를 설치하기 위해 따로 프로그램(램디스크 드라이버)을 구해야 하지만 리눅스에서는 아주 간단하게 설정할 수 있다.
/tmp는 컴퓨터를 껐다켜면 지워지는 장소이므로 리눅스에서 램디스크로 잡아 쓰기에 적당한 곳이라고 할 수 있다.

/etc/fstab 파일을 연 뒤 다음 한 줄을 추가해주면 된다.
ramdisk  /tmp  tmpfs  mode=1777,size=1g

재부팅하면 /tmp가 1기가바이트 크기로 마운트 된다.
이 위치에 실제로 파일 복사등을 해보면서 dstat 같은 유틸리티로 I/O 를 살펴보면 램디스크로서 잘 동작하고 있음을 확인할 수 있다. -똑같은 파일을 또 복사하면 캐시에서 읽어오는 것에 유의해서 확인해야 한다.

웹브라우저가 이 곳을 캐시 저장소로 사용하게 하기 위해서는 브라우저의 캐시위치를 이 위치로 변경해주어야 하는데 구글 크롬을 사용하고 있다면 바탕화면 아이콘을 우클릭해서 속성을 열어 다음처럼 편집해주면 될 것이다.

/usr/bin/chromium-browser %U --disk-cache-dir="/tmp"

이제 원하던대로 웹의 리소스들이 디스크에 쓰여지지 않고 램에 저장된다.
웹페이지에 새로 들어갈 때마다 /tmp의 용량이 조금씩 늘어난다. 잘 동작하는 것 같고 끝내주게 빠른 것 같은 느낌이다.

그렇다면 실제로도 엄청난 속도 변화가 있었을까? 아니다. 그냥 원래 속도와 비슷하다.

웹에서 리소스를 다운로드 받을 때는 램디스크에 저장하던지 하드 디스크에 저장하던지 속도가 똑같다. 램의 쓰기 속도가 하드 디스크보다 훨씬 빠르기는 하지만, 네트워크에서 데이터가 한없이 느리게 읽혀지는데 어떻게 빨리 쓴단 말인가.

일단 한 번 캐시 해두었다면, 그 리소스를 다시 읽을 때는 램디스크에서 읽는 것이 물론 훨씬 빠르다. 컴퓨터를 껐다켜기 전까지는 계속 약발이 통한다. -물론 램디스크 드라이버가 언로딩 되기 직전에 하드디스크로 복사해줄 수도 있지만 이것도 부팅속도나 셧다운이 많이 느려지는 단점이 있다. 램디스크는 램처럼 쓰는 것이 어울린다.
그럼 하드 디스크의 경우에는 램디스크보다 항상 느리냐하면 그것도 아니다. 운영체제가 I/O를 할 때 캐시를 잘 해주기 때문에 최근에 사용된 많은 데이터들이 램 상에 올라가있고 실제로는 디스크 I/O를 하지 않고 램에서 읽는다.

그럼 컴퓨터를 껐다 다시 켜게 되면?
애써 받아놓았던 램디스크의 임시 인터넷 파일들이 날라가고 다시 다운로드를 받아야 한다.
그래서 커다란 용량의 트위터 바탕화면을 사용하는 페이지 같은 곳에 가면 이미지가 새로 다운로드 받아지는 것을 눈으로 확인할 수 있다. 그냥 하드디스크에 저장했으면 다운로드는 다시 안받아도 됐을텐데 말이다.

램디스크를 사용해서 웹서핑을 할 때 미친듯한 속도를 느끼고 있다는 글들이 많이 봤는데, 그들은 도대체 어떻게 속도가 빨라진건지. 내가 모르는 뭔가가 있는것인지 궁금하다.

리눅스의 경우에는 많은 프로그램들이 임시파일을 생성하여 작업할 때에 관례적으로 /tmp 위치에서 한다. 이런 애플리케이션들이 많으면 많을수록 /tmp 를 램디스크로 잡아 놓은 것이 더욱 효과가 있을 것이다.
하지만 용량을 얼마로 잡을것인지가 고민인데, 너무 크게 잡으면 안쓰는 램이 예약되어 버리는 것이 아깝고, 또 너무 작게 잡으면 애플리케이션들의 구현에 따라 오동작 할 수가 있기 때문에 찜찜하다. 잘 만들어진 애플리케이션이라면 I/O할 공간이 없는 것을 알고 메세지를 보여주는 등 예외처리를 시도하겠지만, 그렇지 않은 프로그램들도 참 많다. 이럴 경우에 사용자는 문제의 원인도 찾지 못하고 골탕만 먹게 될 수가 있다.

램디스크를 몇 일 사용해본 후, 나는 운영체제가 그냥 자연스레 캐시로 사용하게 하는 것이 훨씬 낫겠다 싶어서 다시 램디스크 설정을 제거해버리고 말았다.

며칠 전에 우리회사 최고의 해커 중 한 명인 누군가에게 뭘 좀 물어보러 갔다가, 우분투를 이상한 UI로 사용하고 계시는 것을 보고는 뭔가 여쭤봤더니 Mac4Lin 이라고 가르쳐주셨다.

간단하게 설명하면 리눅스 UI를 MacOS 처럼 바꿔주는 프로그램이다.

아래 링크에서 다운로드 받아서 설치해볼 수 있다.
http://sourceforge.net/projects/mac4lin

나는 어떤 프로그램을 사용할 때 디폴트 설정을 바꾸지 않고 쓰는 것을 좋아한다. 게다가 이런 Mac4Lin 처럼 따로 설치해주어야 하는 프로그램이라면 더 꺼려하는데, 귀찮기도 하고 또 뭔가 지저분하게 덕지덕지 붙는 것 같은 느낌이 너무 싫기 때문이다.

그럼에도 불구하고 이번에는 눈 딱감고 한 번 설치를 해보았는데, 그 이유는 요즈음 블로그에서 보면 사람들이 하도 MacOS가 좋으니 예쁘니 어쩌구들 하니깐 나도 한 번 간접적으로나마 느껴보고 싶었기 때문이다.


설치 후 느낌은 뭐... 예쁘긴 예쁘다.
그래도 이제 한 번 써봤으니 아마 다음 번에 운영체제를 다시 설치하게 되면 다시 우분투 기본 UI 그대로^^

나는 2004년도에 처음으로 리눅스라는 것을 설치해봤다.
그 때는 제대해서 처음 컴퓨터를 공부할 때 였는데, 왠지 모든 사람들이 쓰는 윈도우즈 보다는
리눅스라는 것이 뭔가 내게 주는 특별한 느낌이 좋았기 때문이다.

그 때 설치했던 것은 Suse 9 배포판이었다.
멀티 부팅으로 사용했었는데, 나는 몇 일 지나지 않아 윈도우즈 XP만 사용하기 시작했고 곧 내 Suse는 지워져 버렸다.

얼마전에 집에서 사용하는 운영체제를 우분투로 바꾸었다.

현재는 70%정도를 우분투를 쓰고, 나머지는 윈도우즈 비스타를 사용한다. 뭐 집에서야 할게 그다지 없으니까 우분투로도 충분하다.

내가 한 달여 동안 우분투를 쓰면서 새삼 놀란 것이 2가지가 있는데, 리눅스 데스크탑이 벌써 이렇게 많이 발전했구나 하는 것이고,
또 다른 하나는 윈도우즈로 부팅 했을때, 윈도우즈가 이렇게 예쁘고 좋은 운영체제였구나 하고 깜짝 놀라게 되는 것이다.

분명히 윈도우즈(XP보다는 Vista)는 지금 현존하는 데스크탑 운영체제 중 가장 쓸만한 운영체제이다.
솔직하게 말하면 앞으로도 10년 정도는 있어야 리눅스가 윈도우즈를 따라 잡을 수 있을 거라 생각한다.

하지만 나는 윈도우즈보다는 리눅스의 팬이다. 윈도우 개발자이면서도.

내가 오픈 소스를 좋아하게 된지는 1년도 채 되지 않았다.
내가 사용자로서 오픈 소스를 좋아하는 가장 큰 이유는 빠른 업데이트이다.
또 크랙된 프로그램을 어렵게 구하는 것이 아니라 공식 홈페이지에 가서 최신 버전을 바로 다운 받을 수 있는 것도 아주 큰 매력이다.
이제 나는 귀찮게 이런 저런 유틸리티들을 설치하면서 시디키를 집어 넣고, 최신 버전이 나오면 또 다시 같은 짓거리를 반복하는 것에 질려 버렸다.
반면에 오픈 소스는 이런 귀찮은 짓들을 할 필요가 없다. 필요할 때 마다 공식 홈페이지에 가서 최신 버전을 다운 받으면 그만이다.
조금 큰 프로젝트들은 자동업데이트를 지원해주기 때문에 이마저도 할 필요가 없다.
게다가 잘 유지되고 있는 오픈 소스 소프트웨어는 그 성능도 상용 프로그램에 못지 않다. 아니 그보다 더 훌륭하다.

나는 최신 버전의 소프트웨어를 사용하는 것을 유난히도 좋아하는데,
이 빌어먹을 습성으로 인해 회사 프로젝트에서도 이런 짓거리를 자주 시도 하다가
낭패를 몇 번 본 이후로는 집에서만 만족하려고 하고 있다.

어쨌든,
오픈 소스는 하루 하루 발전하고 있다.

나는 얼마전까지 어떤 소프트웨어 회사가 기술력을 갖추고 있다는 의미는 그에 대한 소스 코드를 가지고 있다는 것으로 생각했었다.
즉 '기술력 == 소스 코드 저장소에 들어있는 코드의 양과 질' 이라고 말이다.

사람들은 웹 2.0이라는 것이 개방, 공유, 참여의 결합이라고 종종 이야기 하곤 하는데,
나는 여기서 개방을 데이터의 개방으로 생각했지 기술의 개방으로는 절대 받아들이지 않았다.
기술의 개방이라는 것은 있을 수가 없는 일이(었)기 때문이다.

하지만 요즈음에는 이해할 수 없는 재미 있는 일들이 많이 벌어지고 있다.
내 생각에 따르면 오픈 소스 프로젝트는 기술(= 코드) 자체를 개방 하고 있다.
그럼에도 불구하고 오픈 소스는 하루 하루 승승장구 하고 있다.

그래서 요즘은 뭐가 뭔지 통 모르겠다.
정말 어렵고도 흥미로운 문제이다.

그 답은 아마도 시간이 가르켜 줄 것이다.
10년 후 즈음에 말이다.

'에세이' 카테고리의 다른 글

삼성 YEPP YP-U4 사용기  (2) 2008.11.16
구글 핑서비스  (1) 2008.11.02
내 블로그의 방문자 경향을 확인하기  (8) 2008.10.05
집에 오는 길.  (7) 2008.05.10
구충남대 서버에서 가졌던 스타크래프트의 추억  (38) 2008.05.06