메뉴 바로가기 검색 및 카테고리 바로가기 본문 바로가기

한빛출판네트워크

IT/모바일

리눅스 배포판에 대한 고찰(2)

한빛미디어

|

2007-07-20

|

by HANBIT

11,241

제공 : 한빛 네트워크
저자 : George Belotsky
역자 : 조성재
원문 : Rethinking the Linux Distribution

[이전 기사 보기]
리눅스 배포판에 대한 고찰(1)

자유 웹 OS

위에서 재차 설명한 논리의 결론은 웹 OS 입니다. 하지만 이것은 자유(FOSS) 웹 OS가 되는 것이지 비용을 지불하는 유료 데스크탑이 되는 것이 아닙니다. 이제부터는 기술이 넓게 적용될 것입니다. 만약 단순히 몇몇 큰 공급자가 그러한 제한된 서비스를 제공한다면 사용자들이 서비스를 통한 데이터 편집을 꺼려하는 것을 극복해야만 할 것입니다. 그것은 마이크로소프트사의 헤일 스톰이 겪게 될 저항감이며, 구글 응용프로그램에 대해서도 위험할 수 있습니다. 하지만 자유 웹 OS는 개발에 대해 다른 사용자들의 요구에 더 부응하는 도구들을 지원합니다.

예를 들어, ISP들은 리눅스를 잘 압니다. 잠시동안 이 플랫폼에서 관리되는 호스팅을 제공하면서 몇몇 군데에서는 가상 개인 서버를 추가하는 곳도 있습니다. 그들을 위해서 여기서 설명된 논리를 통해 도달한 웹 OS를 제공하기 위해 다른 리눅스 배포판을 설치하는 것보다 더 어려운 것을 하지 않아도 됩니다. 많은 작고 중요한 기관들은 대형 공급자들보다 더 나은 개인 서비스를 지역의 믿을 수 있는 ISP로부터 공급받기 원합니다.

유사한 요인들을 기업 데이터센터 내부에서 적용할 수 있습니다. 자유 웹 OS를 구동하는 일반 리눅스 박스로 기관들은 최대의 이익을 얻을 수 있으며, 반면에 그들의 데이터에 대한 제어를 모두 보유할 수 있습니다.

물론 윈도우즈 라이브나 구글 응용프로그램들과 같은 대기업의 상품들은 엄격한 규정을 갖을 것입니다. 하지만 그들은 다양한 웹 OS 우주의 일부가 될 것이며, 만약 그들이 홀로서는 것보다 더 많은 막대한 성공을 만들 요소가 될 것입니다.

자유 웹 OS가 어떻게 작용할까요? 어떤 웹 OS를 전체적으로 이해하기 위해 여러분은 적어도 클라이언트 머신에 대해 고려해야만 합니다. 추가적으로 접속할 서버에 대해서도 말이죠. 클라이언트의 관점에서 3가지 주요 방법으로 소프트웨어를 사용하는 것이 가능합니다.
  • 전체 응용프로그램을 지역응용프로그램으로 사용 (리눅스 커널과 같이)
  • 몇몇 요소들은 로컬(예를들어, 파이어폭스 플러그인), 다른 것들은 온라인
  • 전체프로그램을 온라인에서 구동
그 외도 지역 코드를 바이너리 형태로 다운로드 받는 것이나 소스를 다운로드 받아 컴파일 하는 것(젠투에서 사용하는 접근방법)을 포함한 여러 브라우저나 단일 브라우저를 지원하는 온라인 코드들을 포함합니다.

명백하게 순수한 웹 OS는 불가능합니다. 예를 들어, 커널은 클라이언트에서 전체적으로 실행되어야만 합니다. 하지만, 정확한 요소들의 혼합은 자유 웹 OS에서 아주 유연할 수 있습니다. 이것은 다양한 시스템의 향기를 통합할 수 있습니다. 미래에는 이것이 신뢰할 수 있는 사이트에서 간단히 가능할 것이며 브라우저에서 어떤 응용프로그램도 바로 사용할 수 있고, 심지어 어떤(혹은 모든) 요소들을 처음 실행할 때 지역적으로 설치할 수도 있을 것입니다.

고급 사용자들은 그들의 워크스테이션에서 더 많은 소프트웨어를 실행하도록 선택할 것이며, 그들이 가진 온라인 요소들의 집합들을 선택할 것입니다. 다른 사용자들도 단일 웹 OS 공급자들을 선택할 것이며 제공자의 응용 프로그램 집합을 실행할 것입니다. 단지 오늘날 ISP들을 쉽게 전환하는 것처럼 경쟁적인 Web OS환경은 고객들이 다른 밴더로부터 부분적으로 서비스를 선택할 수 있도록 허용할 것입니다.

통제에 대한 주의점

앞에서 언급했다시피 여기에서 나타낸 요소들은 저의 희망이며, 토론을 만들어내고, 뛰어난 개선점으로부터 통합될 것입니다. 마지막으로 프로젝트 통제와 자연스러운 토론에 관한 중요한 것들을 언급할 필요가 있습니다.

통제는 세계적으로 가장 중대한 주제이며, FOSS에서도 예외가 아닙니다. 최근 인터뷰에서 데비안의 창설자가 진행의 마비는 배포판에 차질을 빚는다고 불평했습니다. 또한 서브버전 팀의 맴버는 프로젝트에서 "독이 되는 인간"을 다루는 것에 관해 전체적인 구글 토크를 주었습니다. 때때로 온라인 토론은 비창조적이며 더 심각하게 만듭니다. Kathy Sierra에 대한 처리가 그러합니다. 팀 오라일리는 그 사건의 대답으로 블로거들이 직접 소스코드를 작성하는 것을 제안했었습니다.

그러나 적절한 통제는 기능하기 위한 모델인 건전한 철학 정신을 요구합니다. 물론, 커뮤티니의 형평성과 정의에 대한 요구없이 아무것도 성취될 수 없습니다.

FOSS 통제와 온라인 토론을 생각해봤을 때, 그러한 리눅스 배포판의 미래는 과학적인 조사의 개념이 부분적으로 적용될 수 있습니다. 단순히 대학에서 (비즈니스 영역을 포함한) 다른 영역까지 FOSS가 혼합되었듯이 과학의 기본 수행은 연구의 영역을 떠나 프로젝트를 알릴 수 있습니다.

여기 과학적인 접근의 가장 좋은 부분이 있습니다.
  • 모르는 것, 일반적이지 않은 생각, 진실과 관련된 연구를 탐험하기 위한 의지
  • 실패할지라도 이해는 가치있는 정보를 제공
  • 공개의 허용, 모든 토론이 명확함과 논리적인 기초를 가짐
  • 모든 공헌자들의 인식을 명확히 하기
  • 현재 완성한 노력의 결과보다 더 나은 노력의 결과를 얻기 위한 노력
  • 어려운 검증과 다시 생산할 수 있는 결과들을 모으는 것에 대한 강조
새로운 참가자에게 패치를 보내도록 격려하는 공통적인 FOSS의 노력은 과학적인 접근의 한 예입니다. 새로운 아이디어들을 언제나 반기지만, 실제로 작동하는 것을 보여주는 것도 중요합니다.

부정적 결과의 값어치를 인식하는 것은 실패에 대한 개인적인 반복되는 잘못된 점의 지적을 극복하는 것과 대조적입니다. 부정적 결과의 값어치를 인식하면서 그 결과를 반복하지 않도록 제한하고 부정적 결과가 도출되는 부분의 시작에서 잘못된 결과에 대해 상기하도록 유도합니다. 항공안전보고시스템(ASRS)은 실수로부터 배우는 것의 좋은 예를 제공합니다. 비행의 영역에서 ASRS를 자세하고 오류의 보고에 벌점이 없도록 유도하고, 익명으로 결과를 공개하도록 NASA에서 운영합니다. 아이디어는 당연히 잠정적으로 여러 학문을 뛰어넘습니다. Kim Vicente의 책, Human Factor(인간적 요소)에서는 개인의 단점에 관점을 전통적인 관점 대신에 ASRS 스타일의 기술을 적용하면서 의학적 오류가 90%가 줄을 것을 보여주었습니다.

만약 우리가 과학적인 접근의 사고를 적용한다면 결과로 나온 토론은 새로운 형태의 플랫폼의 적용을 이해해나갈 기회를 갖게 될 것입니다. 주제는 친근한 "데스크탑에서의 리눅스"나 심지어 "기업을 위한 리눅스" 토론들보다 더 깊게 변경될 것입니다. 이런 과정 이후, 단순히 기존의 흐름을 따르는 것보다 FOSS 코드기반의 광범위함과 공개성이 나은 것입니다. 이러한 과정은 새로운 사고의 발자취들을 찾아낼 것입니다.

추가로 읽을 만한 부분

이 부분은 기사에서 참조한 몇몇 항목들을 강조하고 추가적인 요소들을 제공합니다. URL들은 텍스트로 전체적으로 기록되어있어서 어떤 매체에서도 볼 수 있습니다.

Pardus 리눅스 배포판은 그들의 작업에 관하여 몇몇 기사들을 공개했습니다. 특별히 "Speeding up Linux: One step further with Pardus"는 많은 관점을 제공합니다. (http://www.pardus.org.tr/eng/projeler/comar/SpeedingUpLinuxWithPardus.html)

또한 "Python in Pardus"도 중요합니다. 이것은 언어를 이용한 팀의 경험을 자세하게 다룹니다. (http://www.pardus.org.tr/eng/projects/comar/PythonInPardus.html)

IPython 문서는 시스템 관리에 이 도구들을 사용하기 원하는 사람들에게 필수입니다. (http://ipython.scipy.org/moin/Documentation)
"시스템 쉘로서의 IPython"부분은 특별히 다음과 관련되어 있습니다. (http://ipython.scipy.org/doc/manual/node12.html)

이 주제에 도움이 되는 부분을 다음의 곳에서 찾을 수 있습니다. http://brianray.chipy.org/Python/IPythonShell.html

만약 여러분들이 (이 기사에서 보여준 것과 같이) Matplotlib를 IPython과 같이 사용하길 원한다면 출력 명령에 대한 레퍼런스를 포함하는 프로젝트 홈페이지를 보십시오. 그 내용에 도달할 때까지 스크롤을 넘기십시오. (http://matplotlib.sourceforge.net/)

여러분은 또한 그들의 튜토리얼로부터 도움을 얻을 것입니다. (http://matplotlib.sourceforge.net/tutorial.html)

오라일리 네트워크 기사 "웹서버 로그를 위한 새로운 가상화" 또한 고수준 언어와 시스템 관리에 대한 가상화를 포함하고 있습니다. (http://www.linuxdevcenter.com/pub/a/sysadmin/2007/02/02/3d-logfile-visualization.html) 이것은 Gnuplot 과 perl을 사용한 접근을 기술합니다. 모질라 OS의 mozilla.dev.planning 토론은 많은 통찰력 있는 아이디어를 제공합니다. 또한 PC 매거진으로부터 파이어폭스 3.0 의 전체보기 "파이어폭스 3.0 알파 3 inside: Gran Paradiso" 도 유용합니다. (http://www.pcmag.com/article2/0%2C1895%2C2109401%2C00.asp) 모든것에 대한 (응용프로그램의 목록을 포함한) SaaS를 사용한 특별한 경험을 다룬 것은 다음의 주소에서 볼 수 있습니다. http://www.lifehack.org/articles/technology/firefox-os-why-my- hard-drive-software-are-obsolete.html

X 윈도우를 이용한 실험을 훌륭한 소개글을 읽으시려면 리눅스 저널 칼럼 "Cooking with Linux--Can"t Get Enough Desktops!" (http://www.linuxjournal.com/article/7298)를 보십시오.

통제에 대한 주제들은 "Call for a Blogger"s code of conduct"(http://radar.oreilly.com/archives/2007/03/call_for_a_blog_1.html)를 읽어보십시오.

가장 중요한, 넓게 퍼진 개인에 대한 불만의 전략은 FOSS와 온라인 토론 적대감의 원인이 됩니다.Kim Vincente의 책, Human Factor(인간적 요소)는 엄청난 결과(http://www.amazon.com/gp/product/0415970644/)를 가져온 ASRS의 접근의 매력적인 중요성을 제공합니다.

색인 A : 특별한 부분

오늘날 리눅스 배포판의 패키징과 전달은 가장 어려운 문제입니다. 현재 배포판들은 배포판 크기 때문에 호스트에 대해 너무 비싸고, 복잡합니다. 지난해 Mepis는 이 문제에 직면했습니다. (집필하는 시점에서 과거 12개월동안 DistroWatch에서 다섯 손가락 안에 꼽히는) 가장 인식높은 배포판은 모든 바이너리에 대한 소스코드를 전달하지 않음으로써 GPL을 위반했습니다.

물론 Mepis는 어떤 것(완전한 소스코드를 어디에서든 구할 수 있었지만)도 숨기려고 노력하지 않았으나 그것은 GPL에 반하는 것이었습니다. 이곳에서의 결점은 Mepis나 FSF가 아닙니다. 이것은 실제로 (과거에 제공되었던 것과 같은) 호스팅, 미러링, 패키징과 시스템 전달 등의 요소들이 그러한 결과를 이끌어낸 원인입니다. 이제는 다음의 것을 생각하는 시기입니다.

이 기사의 처음에서 언급했던 것처럼, 다양성은 FOSS의 강점입니다. 이것은 새로운 배포판일 수록 더 쉬울 것입니다. 동시에 여러 유사성을 가진 프로그램들과 거의 유사한 프로그램들은 인터넷에 어지럽고 혼란스럽게 범람하고 있습니다. 어떤 버전이 정식적인 버전이며, 프로젝트 제작자에 의해 배포된 것인지, 다른 제작자가 제작한 부분과 다른 점을 어떻게 알고 사용할 수 있을까요?

패키지 관리자 유틸리티가 있다면 비트토렌트를 통해 어떤 정식 프로젝트 소스를 받을까요? 이 유틸리티들은 특정 배포판에 대한 코드를 "개인화"를 위해 사용할 수 있었을 것입니다. 이 접근은 오늘날 젠투가 어떻게 접근하는가와 유사합니다.

패키지 관리자 내에서 비트토렌트를 사용하는 것은 사용자가 직접 토렌트를 관리하는 것으로부터 해방시켜줍니다. 이것 또한 많은 배포판이 공유할 수 있는 패키지 수준의 토렌트 시드의 저장소를 만드는 것도 가능합니다.

소스 배포에 있어서 "원본들"은 배포된 코드에서 바로 가져다 쓸 수 있습니다. 바이너리 배포들에 대해 또한 배포판의 목적간의 리눅스 바이너리 호환성을 만드는 리눅스 표준 기본은 필요한 원본 저장소들을 운영할 수 있도록 합니다.

이러한 FOSS 원본소스 은행은 최소한의 자원들을 소비할 것입니다. 비트토렌트를 통해 다운로드 하는 것은 전통적인 호스트와 미러 접근보다 더 나은 네트워크의 사용을 하도록 만들어 줄 것입니다. 실제로 미러링에 대한 요구는 눈에 띄게 줄었습니다.

보통 우리는 인터넷을 통해 FOSS 코드의 위치와 변화에 신경을 더 씁니다. 더 나은 FOSS 기반 코드 전체의 구성물은 프로젝트간의 명백히 보이는 계보와 함께, 모든 사람들이 이 광범위한 자원의 우주를 더욱 효율적으로 사용하도록 합니다.

구글은 이미 코드 검색을 제공하였으며, 라이센스에 대한 마이크로포멧 또한 존재합니다. 또한 몇몇 마이크로포멧들과 적절한 검색 엔진들은 이러한 행보의 첫 단계가 될 것입니다.

색인 B: 녹색 소프트웨어

환경에 대한 관심은 웹 OS의 통합과 밀접하게 흐릅니다. 그러한 서비스들은 데이터센터에 더 많은 머신들을 필요로 할 것입니다. 하지만 오늘날에도 대형 서버팜의 전력 소비는 손익계산만의 환경에 대해서도 심각한 문제입니다.

일회성 짙은 컴퓨터 장치들(e-waste)도 또한 문제입니다. 이러한 원치 않는 기계장치들에 대한 많은 독성 부분재료들 그리고 다양한 정책들은 유해한 쓰레기를 처리하기 위해 새로운 세금들을 구현하고 있습니다.

물론 더 낮은 컴퓨팅 자원을 요구하고 업그레이드를 자주 안하도록 하는 FOSS는 충분히 환경에 친화적입니다. 필요로 하는 것은 웹 OS를 향한 운동과 병행한 녹색 소프트웨어에 대한 특별한 노력입니다. 컴퓨터 자원(메모리, CPU, 디스크, 대역폭)의 효율적인 사용을 강조하는 프로그램들은 수행에 지연이 있지만, 반면에 초기에는 적은 머신들을 필요로 합니다. 이 경우 이것은 전자쓰레기와 전력 소비를 줄입니다. 컴퓨팅 자원을 줄이는 것이 직접적으로 실제 물리적 자원의 회수로 이어집니다.

커널을 바꾸지 않을 뿐 아니라, 가상화 만으로도 그린소프트웨어를 만드는 데 충분합니다. 가장 먼저 가상화 시스템 수준의 소프트웨어 개발자들은 미리 리소스 수요를 고려해야 합니다. 그렇지 않으면 실행되는 응용프로그램에 대해 현실적이지 않은 플랫폼 결과가 나타날 것입니다. 그러므로 응용프로그램 수준에서의 리소스 사용을 다시 생각하는 것은 많은 실현되지 않은 효율 이득을 찾게 될 것입니다. 또한, 하드웨어를 덜 사용하는 작업끼리의 병합에 의해 아주 효율적인 이득을 제공하는 가상화는 실제로 최고 로드 밑으로 성능을 떨어뜨릴 것입니다.

하지만 리눅스 배포판은 커널 그 이상의 것이거나 시스템 수준의 도구들입니다. 이것은 수천개의 응용프로그램을 포함하여 전체 환경으로 구성됩니다. "SaaS" 가능한 배포판들은 개발자가 더 효율적인 응용프로그램을 작성하기 위해 알려주기 위한 내장된 예제들, 프레임워크들, 네트워크 프로토콜 그리고 (GUI로 완성된)벤치마킹 도구들을 제공합니다. 다음으로 응용프로그램 단계의 보호에 주의를 기울이는 것은 SaaS의 적용과 웹 OS의 결합을 같이 담을 수 있는 (특별히 전력소모면에서의) 요구 자원을 줄일 것입니다.


저자 George Belotsky 는 실시간 임베디드 시스템으로 고가용성 인터넷 서버에 대해 확장된 동작을 처리한 소프트웨어 공학자입니다.


역자 조성재님은 현재 오픈소스 데스크탑 환경인 Kool Desktop Environment (KDE) 프로젝트의 한국어 번역 코디네이터와 한국팀의 대표로 활동하고 있습니다.
TAG :
댓글 입력
자료실

최근 본 상품0