Media Log

리눅스 3.0 시대

2011.05.25 23:16 | Softwares
나는 RSS 피드 500여개 정도를 등록해서 구독하는데, 그 중에 내가 특히 좋아하는 피드 2개는 네이버캐스트 IT 분야h-online의 피드이다.

네이버캐스트에는 IT분야 말고도 여러 주제에서 주옥같이 잘 쓰여진 글들이 많이 올라오는데, 아쉽게도 RSS 피드를 제공해주지 않는다. 이전 회사에서 같이 일했던 동료 하나가 피드를 만들어서 제공하고 있는데 나는 그 피드를 이용해서 꼬박 꼬박 잘 구독하고 있다. 여기에 가면 볼 수 있다.

h-online은 오픈 소스 프로젝트의 동향에 관해서 좋은 정보들을 많이 제공해 주는데, 별 볼일 없는 프로젝트들 맑고 굵직 굵직한 메이저 프로젝트들만을 다뤄줘서 좋다. 오픈 소스를 좋아하는 사람이라면 이 뉴스 피드를 구독함으로써 많은 새로운 프로젝트들을 알게되고 소식들을 접할 수 있게 될 것이다.

얼마전에 Gnome 3.0도 나오고 리눅스가 이제 좀 쓸만해지려나 하고 요즘 기분이 좋았었는데, 어제는 h-online에서 리눅스 3.0이 나올지도 모른다는 소식을 듣고 마음 속으로 비명을 질렀다. 그것도 바로 내일 모레!
오래전부터 쭉 3.0을 설계해 왔던 것은 아니고 그냥 다음 버전부터 2.8.0이나 3.0으로 이름을 붙이자는 이야기가 오가고 있는 것이기 때문에 조금 실망스럽기는 하지만 어쨌거나 설레이는 일이고, 리누스 토발즈의 말을 읽어 보면 정말 3.0으로 진행될 확률이 꽤 높은 것 같다.

예전에 리눅스 2.8이 나오면 어느 정도 윈도만큼 쓸만해지지 않을까 하고 생각을 한 적이 있었는데 내가 참 순진했다.
곧 3.0이 나올텐데도 이렇게 꼬졌다니!
Linux is only free if your time has no value.
누군가 이런 말을 했는데, 리눅스에서 삽질하고 뭔가가 잘 안 돌아갈 때마다 내가 이 빌어먹을 것을 왜 쓰고있지? 하고는 저 말에 고개를 끄덕끄덕 거리게 된다.
그럼에도 불구하고 나는 계속 리눅스를 쓴다. 리눅스에서는 그렇게 시간 낭비 하는 것도 즐거우니깐.
저작자 표시 비영리 동일 조건 변경 허락
신고

'Softwares' 카테고리의 다른 글

2011년 최고의 오픈소스들  (0) 2011.09.10
구글 플러스의 무제한 사진 업로드 정책  (0) 2011.07.14
리눅스 3.0 시대  (0) 2011.05.25
ACE 6.0 static build  (2) 2011.03.06
프로세스 모니터 사용법  (6) 2011.01.14
2010년 분야별 최고의 오픈소스들  (5) 2011.01.09

submit
한달 쯤 전에 집에서 사용하는 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할 공간이 없는 것을 알고 메세지를 보여주는 등 예외처리를 시도하겠지만, 그렇지 않은 프로그램들도 참 많다. 이럴 경우에 사용자는 문제의 원인도 찾지 못하고 골탕만 먹게 될 수가 있다.

램디스크를 몇 일 사용해본 후, 나는 운영체제가 그냥 자연스레 캐시로 사용하게 하는 것이 훨씬 낫겠다 싶어서 다시 램디스크 설정을 제거해버리고 말았다.
저작자 표시 비영리 동일 조건 변경 허락
신고
  1. Favicon of http://sisioo.tistory.com/ BlogIcon 장영희 at 2010.11.01 18:25 신고 [edit/del]

    적당한 삽질이였 네요~ ㅎㅎ

    머 컴터 껐다 켜도 남아 있다면........ 음.. 게임 할땐 좀 어떨라나.. 테스트는 게임을 통해서...

    Reply
    • Favicon of http://www.benjaminlog.com BlogIcon 김재호 at 2010.11.01 19:32 신고 [edit/del]

      컴터 껐다 켜도 남아있게 리부팅될 때 디스크로 복사해주는 드라이버들도 있을꺼야. 난 그런 것은 쓰기 싫지만. 램디스크에 올라가는 데이터는 지워져도 상관없을 임시 데이터여야 제 맛이지.

  2. kkkkjul at 2010.11.10 17:26 신고 [edit/del]

    그럴리가 없을텐데.... 제가 윈도우 환경 넷북에 램디스크써서 인터넷하는데 데탑보다 더빠른기분 들만큼 빠르거같앗는데요.. 물론 한번들어간사이트에서 빠르지요.. 그래서 ssd가진리에요 ㅎㅎ

    Reply
  3. kafka at 2010.11.14 19:08 신고 [edit/del]

    전 익스플로러, 크롬 캐시파일 램디스크로 옮기면서 엄청난 속도 차를 느꼈는데, 사람마다 다르나 보네요.

    Reply
  4. gigi at 2010.11.14 21:57 신고 [edit/del]

    램디스크 저장기능사용하고 크롬및 캐시점부 램디스크로 사용하면 웹브라이저로딩부터 서핑이 확실히 빨라집니다...다만 컴퓨터 부팅과종료가 약간 느려지고여...이것저것 다해보다 전 후자가 싫어서 램디스크에 임시파일과 임시 인터넷파일만 사용합니다.지워져도 상관없고 정리할필요없이 컴터부팅하면 알아서 사라져주니~

    Reply
  5. gwangyi at 2011.11.02 06:17 신고 [edit/del]

    사실 리눅스라 그런 것 같아요. 윈도에 비해서 리눅스가 파일 시스템을 캐쉬하는 양이 훨씬 큰거 같더라구요...

    Reply
  6. 지나가다 at 2012.09.17 10:19 신고 [edit/del]

    신형 컴퓨터로 램디스크 잡는것은 바보같은 짓이죠. 구형 컴퓨터로 일정량 램디스크 잡는것은 좋으나 용량적 한계가 있어서 말씀하신 부분이 찜찜하죠.
    인터넷 서핑 위주의 컴퓨터라면 램디스크 해놓아도 좋습니다.

    Reply

submit
코드로 읽는 리눅스 디바이스 드라이버 - 8점
스리크슈난 벤카테스와란 지음, 박재호 옮김/에이콘출판
에이콘 출판사에서 코드로 읽는 리눅스 디바이스 드라이버라는 새 책이 출간되었다.
이 책의 원제는 Essential Linux Device Drivers이며 2008년도에 발매되었다.

나는 아마존에서 'device driver' 로 자주 검색을 해보는데 이 책은 언제나 1위로 검색이 되어서 잘 기억하고 있다.

리눅스건 윈도우건 디바이스 드라이버에 대한 책은 그렇게 많지 않은데다가 2000년대 초반, 심지어 90년대의 책들이 수두룩하다. 생각해보니 윈도우가 리눅스보다 더 심한 것 같다.
디바이스 드라이버 세계에서 2008이라는 숫자는 엄청난 최신 버전이므로 이런 책이 번역되어져 나왔다는 것은 참 반가운 일이 아닐 수 없다.

지금은 윈도우 드라이버만 만들고 있지만 앞으로 리눅스에서 드라이버를 개발하게 될지도 모르고, 언제나 그렇듯이 다른 플랫폼을 공부하는 것은 현재 플랫폼을 잘 이해하는데 큰 도움이 되기 때문에 이 책도 꼭 읽어볼 생각이다.

책 목차를 보면 상당히 방대한 부분을 다루고 있는데, 얼마나 자세한 내용인지는 모르겠다.
나는 FUSE를 통해 파일 시스템을 만드는 것에 특히 관심이 있는데 이런 내용은 없는 것 같아서 좀 아쉽긴 하다.

반가운 점이 또 하나 있는데 바로 책의 가격이다.
이 책의 정가는 35,000원인데, 나는 책의 가격과 출판사를 몇번이나 눈알을 왔다 갔다 하며 쳐다보았다.
에이콘의 책은 가격이 아주 비싼 편인데, 이제부터는 가격을 좀 낮게 책정하기로 결정한건지는 모르겠지만 어쨌거나 독자들에게는 좋은 일이다. 앞으로도 잘 부탁해요 에이콘. 크크.

오늘 아침에 잠시 조엘의 책을 읽는데 재밌는 내용이 있었다.
그가 인터뷰를 하거나 혹은 이력서를 읽을 때의 이야기이다.

나는 자바보다 한결 오래된 언어인 OCaml 로 작업한 사람을 보고 매우 감동 받은 적이 있다. 또 아득한 향수가 깃든 어셈블러나 디바이스 드라이버 또는 커널로 작업한 프로그램을 보면 비주얼 베이직이나 PHP로 작업한 것보다 한결 가슴이 뭉클해진다.

디바이스 드라이버를 만드는 사람들이나 공부하는 사람들에게 조금이나마 힘이되는 글 아닌가? 크크.

좋은 책을 번역해주신 역자께 감사한다.


저작자 표시 비영리 동일 조건 변경 허락
신고
  1. Favicon of http://jhrogue.blogspot.com BlogIcon jrogue at 2010.08.28 17:41 신고 [edit/del]

    이벤트 당첨 선물을 보내드리려고 합니다. 우편물 받으실 주소를 jrogue 에뜨 쥐메일.com으로 보내주시면 감사하겠습니다. ;)

    - 박재호 올림

    Reply
  2. at 2010.09.01 17:35 [edit/del]

    비밀댓글입니다

    Reply
  3. Favicon of http://namoda.springnote.com BlogIcon 나모 at 2010.10.28 14:10 신고 [edit/del]

    박재호님이 옮기신 책을 김재호님이 블로깅하셨군요. ^^

    Reply

submit
리눅스*그냥 재미로 - 10점
리누스 토발즈 & 데이비드 다이아몬드 지음, 안진환 옮김/한겨레출판

나는 도서관에서 책을 고르는 시간을 매우 좋아한다.
우리 동네에 있는 도서관에서는 한번에 3권까지 책을 대여할 수 있다.
나는 보통 가볍게 읽을 수 있을 만한 책을 2권 고르고, 기술 서적을 1권 선택한다.

작년 봄에 도서관에서 책을 고르다가 이 책을 발견했다.
아주 낡은 책이었는데 그냥 제목에 끌려서 책을 꺼내서 훑어 봤다.
신기하게도 리누스 토발즈가 직접 쓴 책이었다.
정말 가볍게 읽을 생각으로 빌렸지만, 내용은 기대 이상이었다.

리누스처럼 무언가에 미쳐 있는 사람은 아름답다.
내가 내 자신에게 항상 가지고 있는 의문은 내가 정말 프로그래밍에 미쳐있는가였다.

고등학교 때 나는 책을 읽는 것에 미쳐있었다.
대학교 1학년 때 나는 스타크래프트와 당구에 미쳐있었다.
군대에 있는 동안은 축구에 빠져 잠자기 직전에도 축구하는 것을 생각하며 잠들었다.

복학하고 나서 어쩔 수 없이 프로그래밍을 시작하게 되었고, 나는 이미 과에서 훌륭하게 자리를 잡고 있던 내 친구들에게 지지않기 위해 억지로 프로그래밍을 공부했다.
그렇게 공부하다보니 참 재밌었다. 당구와 스타크래프트, 그리고 축구를 즐겼던 것 만큼 재밌었다. 다시 생각해도 정말 좋았던 행복한 시간들이었다.
프로그래밍에 대한 이야기만 나오면 오감이 꿈틀 거리는 것을 보면서 나는 아마도 지금 프로그래밍에 미쳐있다고 말할 수 있을 것 같다.

이 책을 읽으면서 리누스 토발즈에 열정에 감탄했다.

"그 해 여름 나는 단 두가지 일만 했다. '아무것도 하지 않는다.'와 '719페이지 분량의 '운영체제:디자인 및 실행'을 읽는다.' "

나는 항상 내가 열심히 공부했다고 자부 했지만, 리누스 토발즈에 비하면 내 열정은 너무나도 가벼웠다.

이 책을 읽으면서 많은 생각을 가졌었다.
삶에 있어서 가장 중요한 것은 무엇일까.
가족? 돈? 사랑?

바로 이 책의 제목처럼 just for fun 이다.
그냥 즐기자. 하루하루를.
신고
  1. sabaragi@empal.com at 2008.08.31 01:59 신고 [edit/del]

    나는 이미 과에서 훌륭하게 자리를 잡고 있던 내 친구들에게

    <-- 이거 나?? ㅋ

    Reply

submit