Go Back   AppleForum > Lounge > Mac Column

 
 
thread_tools
2006-05-27, 05:43 AM   #1
casaubon
Moderator
 
casaubon's Avatar
 
Registered: Sep 2001
My Mac: MacBook Air
Posts: 2,140
오프라인
Mac OS X 리눅스 커널 미신을 벗긴다 1-11



Unraveling The Mac OS X Linux Kernel Myth : May 23, 2006
According to proponents of this myth, Apple will, could, or should shortly replace Mac OS X's kernel with Linux. They're wrong; here's why.
http://www.roughlydrafted.com/image
이 미신은 분명 전혀 새로운 미신이 아니라, 레오파드(Leopard)의 커널 변화에 대한 널리 퍼져있는 추측때문에 조장된 측면이 있는 미신이다. 최근 애플 맥오에스텐 제품 관리자, Ernest Prabhakar 박사가 추측과 사실에 대해 이례적으로 손수 지적까지 해줄 정도로 이 미신은 널리 퍼져있다.

Why the Myth was Woven
더 높은 속도에 대한 약속은 달콤하다. 누가 리눅스를 싫어하리오? 그때문에 이런 미신이 생겨났다. 모두가 리눅스에 대해 이야기하고 대기업들이 리눅스 뒤에 포진해 있는 상황이다.

FUD를 조장하는 이들은 이 미신을 통해 맥 오에스 텐이 그냥 나쁜 제품이라거나 애플이 하는 일에 전혀 실마리가 없다는 주장을 하기를 즐긴다. 다른 미신들처럼 이 미신도 분명한 사실을 넘나드는 모호함에 따라 생겨나서 계속 되풀이되고 있다.

The Myth Weavers
쓸데 없는 이야기나 즐기는 꾼들 이외에도, 그 가능성에 주목하긴 하지만 배경지식을 알지 못하는 사려깊은 이들도 이 미신을 퍼뜨리고 있다. 한 번 자세히 살펴보도록 하자.

Unraveled with Extreme Prejudice
표면상 이 아이디어는 정말 좋아 보인다. 1985년으로 되돌아갈 수 있는 맥 오에스 텐의 일부를 요새 인기 좋은 리눅스로 바꾸자는 의견이기 때문이다. 리눅스의 편리함과 속도, 표준화된 기술은 시대의 유행이라 봐도 좋다. 하지만 여기에는 문제가 세 가지 있다.
  1. 커널 교체는 대단히 어려우며, 시간도 많이 소모되고 애플에게 있어서 막대한 개발비를 따로 들여야 하는 작업이다. 이 미신이 되풀이될 때마다 무시되곤 하지만, 이러한 사실들은 이 미신에 대해 강력한 반증으로 작용한다.
  2. 잘못된 정보의 문제이다. 여기에 대해서는 차차 밝히겠다.
  3. 리눅스로 이주하지 않는 이유는 깔끔하고 실질적이다. 사례를 들겠다.

Problem 1: Major investment required
첫 번째 문제는 이미 "짜깁기 개발의 미신을 벗긴다[http://appleforum.com/showthread.php?t=47616 ]"에서 대충 밝힌 바 있다. 왜 어려운지 세세하게 밝히는 일은 흥미를 반감시킬 터이고, 어떻게든지 미신이 미신이 아니라 믿는 이들에게는 당연히 무시당할 터이기 때문에, 거기에 가타부타 더 말을 덧붙이기는 않겠다. 필자는 두 번째 문제에 대해 우선 파헤친 다음, 세 번째 문제가 왜 이 미신을 완전히 무너뜨리는지에 대해 밝히겠다.

Problem 2: A weak idea based on faulty information.
이전의 글[http://appleforum.com/showthread.php?t=47616]에서 필자는 맥 오에스 텐 커널을 리눅스로 교체해야 한다는 미신이 다음의 이유로 나타났다고 말한 바 있다.

  • 리눅스는 너무나 기술유행으로 되어있다.
  • 리눅스가 훨씬 더 빠르게 보인다.
  • 표준 지원에 있어서는 리눅스가 훨씬 더 많다.

왜 이런 이유들이 거의 이득이 없는지 알아보자. 특히 여기에 결부된 노력을 고려하면 정말 얻는 것이 없다. 그러나 우선은 필자도 기술유행을 얼마나 좋아하는지 말부터 해야겠다. 사실 필자가 기술유행에 대해 이미 다룬 바가 있는 것 같기는 하지만 아니었다.

게다가 복잡화[http://appleforum.com/showthread.php...707#post329707]에 대해서도 이미 다뤘다고 생각했지만 구글이 아니라고 답해주었다. 아마도 제일 적절한 정의는 Wikipedia가 제공하는 것 같다.









__________________
FAQ

casaubon 님께서 2006-05-27 05:52 AM 에 수정하셨습니다..
  Reply With Quote
2006-05-27, 05:58 AM   #2
casaubon
Moderator
 
casaubon's Avatar
 
Registered: Sep 2001
My Mac: MacBook Air
Posts: 2,140
오프라인


Unraveling The Mac OS X Linux Kernel Myth : May 23, 2006
According to proponents of this myth, Apple will, could, or should shortly replace Mac OS X's kernel with Linux. They're wrong; here's why.
http://www.roughlydrafted.com/image

The Buzz of Linux
리눅스가 한창 유행이다. 사실 그럴만하다. 리눅스는 자유롭고 강력하며 매우 경쟁력 있는 운영체제 기술을 무료로 제공한다. 게다가 리눅스는 수퍼컴퓨터에서 휴대폰까지 거의 모든 기기에서 작동한다.

어느 회사도 리눅스를 사용할 수 있는 다른 누구를 통제할 수 없다. 누구나 리눅스의 소스코드를 갖다가 특별한 필요 분야에 응용하면 그만이다. 리눅스는 또한 안정성과 신뢰성, 퍼포먼스에 있어서 명성을 얻어냈다.

리눅스의 인기는 또한, 유사-유닉스 운영체제의 POSIX 플랫폼을 보다 실제 사용에 맞게 현대적으로 쓸만하게 최적화시킨 힘이 작용하기 때문이기도 하다. 지난 10여년간, 리눅스 개발은 그동안 떠들썩했던 Unix Wars로 부서진 유닉스 세상에 다시금 관심을 집중시켰다.

80년대와 90년대 초반, 주류 유닉스 벤더들은 고가를 유지하면서 상호 작동 표준을 두고 계속 전투를 벌여왔다. 그와중에 마이크로소프트는 더 저렴한 라이센스와 보통의 PC에서도 돌아가는 윈도우즈 NT 플랫폼을 가지고 유닉스 시장을 널리 잠식해 들어갔다.

BSD가 상용 유닉스에 대해 무료 대안을 제공하였지만 BSDi에 대한 법적 소송 때문에, BSD는 대안이 되기 힘들었다. 하지만 유사-유닉스 플랫폼으로서 리눅스가 강력하게 등장하였다. 리눅스는 그동안 유닉스의 발목을 잡아오고 있던 공룡과 리눅스를 제거하고자 한 윈도우즈 NT의 실질적인 대안으로서 등장하였고, 그제서야 BSD도 자유로워졌다.

The Unbearable Lightness of Buzz
따라서, 리눅스가 유행인 것은 맞다. 굉장하다. 하지만 리눅스가 맥 오에스 텐의 필요를 채워줄 수 있는가? 리눅스로 인해 맥 오에스 텐이 더 강력한 지위를 가질 수 있게 될까? 몇 가지 답변에 있어서, 최근의 '유행'이지만 결국 과대평가 받은 것으로 끝난 사례를 말하겠다. 바로 썬의 자바(Java) 플랫폼이다.

5년도 더 전에, 자바 플랫폼에 대한 아이디어가 정말 유행인 적이 있었다. 자바가 윈도우즈 플랫폼에 실질적인 위협을 제공하였기 때문이다. 당시는 모두가 자바 유행에 편승하기를 원했다. 심지어 마이크로소프트조차도 자바의 위협을 없애는 한도 내에서 자바에 뛰어들고자 하였다.

애플은 클래식 맥 오에스에 자바 VM을 제공함으로써 약하게 뛰어들었다. 그러나 맥 오에스 텐의 개발 기간동안, 애플은 자바에 대한 노력을 상당히 신장시켰다.

애플은 자바 VM 개발에 박차를 가하여, NeXT 프레임웍을 코코아로 바꾸어 자바를 흡수하도록 하였다. 심지어 애플은 코코아 프레임웍용 자바 바인딩까지 만들어냈으며, 이 아이디어로 코코아의 네이티브 오브젝티브 C 언어 신택스를 "현대화"하여 자바 프로그래머들이 코코아를 더욱 친숙하게 여기도록 하였다.

하지만 코코아 프로그래머들은 언론이 일으킨 자바 유행에 발맞춘 온갖 것에 대해 별로 흥미를 갖지 않았으며, 애플은 떠나가는 자바 기차를 잡느라 시간을 낭비했음이 드러났을 뿐이었다.

여러가지 작업에 있어서 자바가 좋은 툴이 될 수는 있다. 그러나 언론이 퍼뜨린 자바 만능론은 그에 부합되지 않았다. 약간의 밀월기가 지나자 언론은 몇 년 전만 하더라도 칭송만 거듭하던 입을 싹 바꾸고 자바를 비난하기에 열을 올렸다. 다른 사례도 있다. 바로 마이크로커널[http://appleforum.com/showthread.php?t=47584] 연구이다.

순간의 영화가 끝난지 이제 몇 년이 지났다. 지금은 자바가 왜그리 컴퓨터 업계에서 대박이었는지 알기가 힘들어질 정도이다. 같은 맥락에서 오늘날의 유행은 실제로 몇 년 뒤에 일어날 일에 대해 별다른 영향을 끼치지 못할 수도 있다.

따라서 맥 오에스 텐의 대규모 개조에 리눅스 유행을 끌어다 붙일 충분한 이유가 없다. 특히나 관련된 개발 자원을 고려하면 더욱 그러하다.

하지만 리눅스가 정말 그렇게 빠르다면? 이 점을 밝혀보겠다.

Unraveling The Mac OS X Linux Kernel Myth Part 2








__________________
FAQ
  Reply With Quote
2006-05-27, 05:59 AM   #3
casaubon
Moderator
 
casaubon's Avatar
 
Registered: Sep 2001
My Mac: MacBook Air
Posts: 2,140
오프라인


Unraveling The Mac OS X Linux Kernel Myth : May 24, 2006
According to proponents of this myth, Apple will, could, or should shortly replace Mac OS X's kernel with Linux. They're wrong; here's why.
http://www.roughlydrafted.com/image




Part 1은 리눅스 미신을 소개하고 리눅스 유행에 대해 알아보았다. 파트 2에서는 맥 오에스 텐을 리눅스 커널로 옮기자는 주장에 대해 더 알아보도록 한다.

Linux's Performance
퍼포먼스는 최적화로 얻는다. 제일 빠른 자동차는 특별한 타이어와 거대한 엔진을 갖추고, 그 외에 무게를 줄일 수 있는 한 모든 것을 빼야 한다. 속도만을 위해 최적화시켰다 볼 수 있겠다. 수퍼 엘리트 스포츠카를 몰아본 적이 있다면, 이 차들이 얼마나 불편한지 기억하실 것이다. 뒷좌석에 아이들을 앉힐 수나 있던가? 에어콘이나 쓸만한 카스테레오는 있던가?

리눅스의 주요 장점으로는 최적화에 대한 리눅스의 융통성을 들 수 있다. 여러분도 슬림형 리눅스를 만들거나, 수퍼컴퓨터용 괴물형 리눅스를 만들 수 있다. 즉 웹페이지나 데이터베이스 요구에 따라, 혹은 PVR이나, PBX, PDA용으로 리눅스를 변경시킬 수 있는 것이다.

리눅스가 가진 유일한 문제거리는 바로 소비자용 데스크톱 시장을 차지하는 일이다. 현재 그 어떤 대기업도 리눅스를 실질적인 윈도우즈 대안으로 홍보하고 있지 않다. 적어도 지금으로서 리눅스의 강점은 다른곳에서의 강점이었던 셈이다.

그때문에 거의 친숙한 데스크톱으로 팔리게 마련인 맥 오에스 텐과, 친숙함 빼고는 최적화나 대중성, 이윤 등 모든 것을 갖춘 리눅스를 확실히 비교하기란 어려운 작업이다. 그렇다면 리눅스 커널이 맥 오에스 텐보다 훨씬 더 빠르다는 주장의 근거는 어디에서 왔을까?


크린즐리(Robert X Cringely)라 알려져있는 Mark Stephens는 이렇게 말하였다.

인용:
"애플이 새 커널을 어찌하여 필요로 할까?

속도이다. 단순히 말해서 리눅스나 최근 오픈소스 유닉스 콜론 대부분이 채용한 모노리딕 커널은 현재의 오에스 텐 10.4가 채용하고 있는 마흐 마이크로커널보다 정수 연산에 있어서 두 세 배 더 빠르다. 가령 이 커널 문제 때문에 엑스서브가 눈에 안 띄고 있다고도 볼 수 있다. 단순한 웹이나 데이터베이스 서비스로서 엑스서브는 더 느리고 지원하는 사용자도 더 적기 때문이다. "


그의 과도한 일반화는 많은 측면에서 틀렸다. 그는 맥 오에스 텐 마이크로커널 미신에 낚인 것이다. 그는 정수 연산을 언급함으로써 상상의 영역에 들어섰고, 엑스서브를 자신의 근거없는 퍼포먼스 가정으로 인식 해버리는 우를 범하였다.

하지만 그는 대단히 훌륭한 점을 지적하기도 하였다. 사실을 하나도 모른다 하더라도 확신을 갖고 말한다면 꽤 그럴싸하게 말할 수 있다. 이를 truthiness라 불리운다. 크린즐리는 다른 커널 하나가 어째서 잠재적으로 좀 더 빠를 뿐만이 아니라, "본질적으로" 몇 배 더 빠르다는 근거를 갖게 되었을까?

맥 오에스 텐 시스템과 리눅스 서버를 서로 비교하는 잘 알려진 벤치마크 테스트를 보라. 각 경우에서 벤치마크는 맥 오에스 텐이 작동하는 방식이나 퍼포먼스 최적화는 전혀 하지 않지만, 리눅스에 대해서만은 최적화를 시켜놓고 비교하고 있다. 어디서 많이 들어본 적이 있잖던가?

Lies, Damn Lies, and Statistics
벤치마크와 같은 통계치의 문제는 숫자가 매우 객관적이며 정확한 정보로 보인다는 데에 있다. 숫자는 거짓말도 매우 신뢰성 있게 만들어주는 대단히 용이한 수단으로도 쓰인다. 가정을 증명하기 위해서, 과학적인 테스트는 관련된 변수를 통제해야 하며, 실질적인 결론을 내기 위해서는 충분한 양의 데이터를 포함시켜야 한다.

가령, 하드 드라이브 두 개의 퍼포먼스를 정확히 비교하려면, 똑같은 용량의 드라이브를 사용하여, 똑같은 방식으로 똑같은 작업을 수행하고, 똑같은 환경에서 작동시키는 등, 변수를 통제해야 한다. 충분한 데이터로 말하자면, 읽기 대 쓰기, 지속적이되 가벼운 사용 대 짧되 무거운 사용, 몇 개의 대용량 파일 대 여러 개의 소용량 파일 등의 여러가지 테스트를 벌여야 한다. 심지어는 두 개 뿐만이 아니라 다른 드라이브들도 비교를 해 보아야 할지도 모른다.

변수를 통제하지 않는다거나 충분한 테스트를 거치지 않는다면, 현실과 별 상관이 없는 정보를 얻게 된다. 환성으로 이뤄진 통계치는 멋지게 보이고 신뢰도도 있어보일지 몰라도, 여러분이 악랄한 의도를 갖고 있다거나 아니면 그저 무식해서와는 상관 없이 그 자체로서 잘못된 정보일 수가 있다.

그렇다면 리눅스 대 맥 오에스 텐 벤치마크는 어떻게 이뤄질까? 최근 사례 두 가지를 들겠다.AnandtechUCB' Sekhon이다.



Continued: Anandtech's 'No More Mysteries' Server Benchmarks






__________________
FAQ

casaubon 님께서 2006-05-27 06:08 AM 에 수정하셨습니다..
  Reply With Quote
2006-05-27, 05:59 AM   #4
casaubon
Moderator
 
casaubon's Avatar
 
Registered: Sep 2001
My Mac: MacBook Air
Posts: 2,140
오프라인


Unraveling The Mac OS X Linux Kernel Myth : May 24, 2006
According to proponents of this myth, Apple will, could, or should shortly replace Mac OS X's kernel with Linux. They're wrong; here's why.
http://www.roughlydrafted.com/image

Anandtech's 'No More Mysteries' Server Benchmarks
2005년 6월, Anandtech.com의 Johan De Gelas는 파워맥 G5에서 돌리는 맥 오에스 텐 서버와 SuSE 리눅스를 돌리는 PC 서버 석 대를 비교하였다. 이 보고서의 결론은 다음과 같다.

맥 오에스 텐은 믿을 수 없을 정도로 느리다. 커널 쓰레드를 사용하지 않고 별도의 레이어를 사용하기에 새 쓰레드 형성이 리눅스보다 두 배에서 다섯 배(!) 더 느리다. 더 연구할 것도 없다. G5는 정수연산에 대해 세상에서 제일 빠른 CPU가 아닐지도 모른다. G5의 데이터베이스 퍼포먼스는 쓰레드를 만들어내거나 다루는 데에 다섯 배나 더 시간이 들어가는 느린 운영체제때문에 완전히 불구가 되어버렸다.

보고서에 따르면, 그들의 테스트는 맥 오에스 텐과 리눅스 간의 커널 퍼포먼스를 신중하고 객관적으로 한 것처럼 보인다. 그렇다면 리눅스 커널을 사용하면 맥 오에스 텐이 득을 볼 수 있을까? 리눅스가 코어 펑션에 대해 다섯 배가 더 빠르다는데, 애플도 리눅스 기술을 맥 오에스 텐에 적용시켜야 하잖겠느냐는 말이다.

드러난 바대로, Anandtech의 벤치마크는 너무나 허술해서 그 결과치는 가치가 없다. 그들이 내린 결론은 소프트웨어 아키텍쳐에 대한 그들의 무지때문에 발생하였다. 그들이 무엇을 잘못하였는가?

우선 변수에 대한 허술한 통제를 들 수 있다. 그들이 테스트한 것은 무엇인가? 그것이

  • G5 대 x86 하드웨어였는가?
  • 아니면 맥 오에스 텐 대 리눅스 운영체제였는가?
  • 아니면 소프트웨어 패키지의 최적화 수준 정도였는가?
  • 그도 아니면 플랫폼간 애플리케이션 최적화에 대한 그들의 이해도였는가?

Anandtech는 자신들이 무엇을 테스트하려 했는지 모르는 듯 해 보인다. 통제가 전혀 안 되어있었기 때문이다. 더해서 그들이 내린 통제는 그나마 불공정하였다.

그들은 일관성 유지를 위해 플랫폼간 GCC 3.x 컴파일러를 사용하였지만, 이 컴파일러는 통제된 변수가 아니라 오히려 x86과 리눅스에 대해 더 최적화된 컴파일러를 사용한 것이었다. 그들이 사용한 맥 오에스 텐이나 G5용 GCC 3.x 컴파일러는 오래된 것이었다. 맥 오에스 텐이 필요로 한 GCC 4 컴파일러는 그들이 사용하는 리눅스용으로 나오지 않았기 때문에 그들은 오래된 버전을 각기 사용하였다. 왜인가?

또한 그들은 테스트의 "일관성"을 유지하기 위해 양 플랫폼에 수동으로 MySQL 데이터베이스 소프트웨어를 컴파일시켰다. 그러나 그들은 쓰레딩 메커니즘이 변경될 맥 오에스 텐용 MySQL 패치를 포함시키지 않기로 하였다.

이때문에 맥 오에스 텐에서 상당한 퍼포먼스 저하가 발생하였다. MySQL은 마흐나 좀더 일반적인 모델이 아닌, 애초에 리눅스 쓰레딩 모델로 작성됐었다. 올바른 패치를 시켜야 MySQL 평가를 좀 더 동등한 입장에서 할 수 있었을 테지만 그들은 설치를 하지 않았다. 어째서였을까?

소스로부터 MySQL을 수동 설치하는 일도 불필요하다. 맥 오에스 텐용 패치가 된 바이너리 빌드가 이미 공식 프로젝트 사이트에서 다운로드 가능하기 때문이다.

정말이지 이들이 선정적으로 퍼포먼스 차이를 만들어내기 위해 맥 오에스 텐에 불공정하게 대하기를 의도하지 않았더라면, 이런 식으로 벤치마크를 할 이유가 없다.

좀 더 흥미로운 사실은 Anandtech가 보고한 수치보다, 그들이 보고하지 않은 수치에 있었다.



Continued: The Sin Of Omission






__________________
FAQ

casaubon 님께서 2006-05-27 06:08 AM 에 수정하셨습니다..
  Reply With Quote
2006-05-27, 06:00 AM   #5
casaubon
Moderator
 
casaubon's Avatar
 
Registered: Sep 2001
My Mac: MacBook Air
Posts: 2,140
오프라인


Unraveling The Mac OS X Linux Kernel Myth : May 24, 2006
According to proponents of this myth, Apple will, could, or should shortly replace Mac OS X's kernel with Linux. They're wrong; here's why.
http://www.roughlydrafted.com/image

The Sin Of Omission
좀 더 흥미로운 사실은 Anandtech가 보고한 수치보다, 그들이 보고하지 않은 수치에 있었다.

  • 같은 하드웨어 상의 두 가지 OS 플랫폼 간의 직접적인 비교
  • 맥 오에스 텐과 리눅스 간 코어 커널 OS 기능에 대한 직접적인 비교
  • 양 플랫폼간에 허술하게 최적화된 소프트웨어의 직접적인 비교
  • 각기 다른 데이터베이스 소프트웨어 패키지 간의 직접적인 비교

가령 이들은 리눅스와 맥 오에스 텐 양쪽 모두에 최적화되어있는 오라클 데이터베이스의 무료 버전을 테스트할 수도 있었다. 이들은 서버 퍼포먼스를 측정하려 했을가, 아니면 MySQL을 올바로 설정할 수 있는 능력을 테스트한 것일까?

이들의 분석은 그들이 내린 인상적인 결론에서처럼 맥 오에스 텐에 대해 상당히 이해도가 떨어진다는 점을 시사한다. 맥 오에스 텐은 사실 커널 쓰레드를 사용한다. 또한 커널 쓰레드는 마흐 쓰레드에 효율적으로 매핑되어 있다. 레이어나 래퍼(wrapper)에 대한 이야기는 다 무엇이겠는가? 아마도 Anandtech도 맥 오에스 텐 커널 미신에 낚인 듯 하다.

불행히도 수치의 부정확성과 비관계성도 대부분 무시되었다. 독자들에게 남는 것은 오로지 맥 오에스 텐이 리눅스보다 다섯 배 더 느리며, 그 이유는 커널 디자인 때문이라는 문구 뿐이다.

Anandtech의 기사는 실질적으로 맥 오에스 켄 커널에 대해 거의 알려주는 바가 없다. 오로지 맥 오에스 텐보다 리눅스용 MySQL 최적화에 대해 더 잘 알고 있는 리눅스 전문가들이 그들이라는 점만 보여줄 뿐이다. 우리는 그 사실을 이미 알고 있다.

애플은 맥 오에스 텐 서버와 엑스서브를 오픈소스 소프트웨어의 파워를 활용한 쉬운 솔루션으로 판매하지, 적절한 패치도 안 한채 잘못된 버전의 GCC를 사용하여 리눅스 관리자들에게 반항하라고 서버 제품을 판매하지 않는다.

More "No More Mysteries" = More Mysteries
지난 가을, Anandtech는 몇 가지 실수를 인정하여 후속 기사를 냈었다. Anandtech가 이때라도 올바른 MySQL을 설치한 다음 비교를 하여, 맥 오에스 텐용 최적화를 해놓지 않은 애플을 비판했더라면, 벤치마크는 합리적이었을 것이다. 그러나 그들은 맥 오에스 텐이 본질적으로 잘못된 커널을 갖고 있으며, 리눅스로 교체할 경우 2~5 배의 퍼포먼스 향상을 누릴 수 있다는 인상을 계속 남겨 두었다.

맥 오에스 텐과 리눅스 간의 퍼포먼스 다섯 배 차이, 그리고 Anandtech이 그 이유로 내세운 "절름발이" 커널에 대한 논쟁과 추측은 드디어 PC Mag이 기사를 낼 정도가 되었다. Anandtech의 두 번째 기사가 나오기 몇 주일 전에, PC Mag은 다음과 같은 기사를 보도하였다.

"듀얼-프로세서 엑스서브 G5는 리눅스-기반의 x86 서버와 퍼포먼스 측면에서 비교할 만하다. 당 기사는 놀라운 기사가 아니다. 맥 오에스 10.x이 FreeBSD UNIX에 기반해 있기 때문이다. 본지는 아파치 서버를 본지의 표준 WebBench 테스트로 시도해 보았다. 그 결과는 달랐다. SuSe Linux-64 상의 듀얼-x86-64 서버의 아파치보다 엑스서브 G5의 아파치 서버의 퍼포먼스가 더 좋았다.

PC Mag은 결코 애플 컴퓨터에 호의적이지 않은 곳이다. 하지만 그들의 테스트로 보면, 엑스서브 G5 상의 맥 오에스 텐이 Anandtech이 사용한 것과 동일한 SuSe Linux 상의 64비트 x86 서버보다 더 나았다. 즉, 이 기사로 인해 맥 오에스 텐이 겨우 몇 명 정도나 다룰 수 있는 허접한 제품이라는 Anandtech의 신뢰성이 날라간 것이다.

고도로 최적화가 된 리눅스 서버라면 맥 오에스 텐 기본 설정보다 퍼포먼스가 더 뛰어나리라는 점이야 상상하기 어렵지 않다. 즉, Anandtech의 가짜 벤치마크는 맥 오에스 텐 아키텍쳐가 열등하다거나 다시 만들어야 한다는 점을 증명해주지 못한다. 오히려 이들은 애플에 대해 왜곡된 평가를 내리고 있으며, 그렇지 않다면 그저 무식하다는 점밖에 나타내지 못하였다.

맥 오에스 텐 대 리눅스의 또다른 벤치마크 사례가 최근 있었다. 맥 오에스 텐용 통계 소프트웨어인 R Project로 벌인 테스트였다. 이 결과 또한 그리 긍정적이지는 않았다.




Continued: Sekhon's R Statistical Software Benchmarks






__________________
FAQ

casaubon 님께서 2006-05-27 06:08 AM 에 수정하셨습니다..
  Reply With Quote
2006-05-27, 06:01 AM   #6
casaubon
Moderator
 
casaubon's Avatar
 
Registered: Sep 2001
My Mac: MacBook Air
Posts: 2,140
오프라인


Unraveling The Mac OS X Linux Kernel Myth : May 24, 2006
According to proponents of this myth, Apple will, could, or should shortly replace Mac OS X's kernel with Linux. They're wrong; here's why.
http://www.roughlydrafted.com/image

Sekhon's R Statistical Software Benchmarks
UC 버클리의 세콘(Jasjeet Sekhon)이 벌인 맥 오에스 텐 대 리눅스의 벤치마크 결과가 있다. 그렇다. 바로 그 BSD를 제작한 버클리 대학이다. 그러나 세콘은 컴퓨터 학자가 아니라, 정치학과 조교수이다.

이 기사에서 세콘은 스티브 잡스의 "현실 왜곡의 장(reality distortion field)"을 인용하면서, "오에스 텐은 디자인상 믿을 수 없을 정도로 느리다"고 하였다. 그러면서 그 이유로서 리눅스나 BSD보다 "훨씬 비효율적이고 불안정한" XNU 커널을 들었다.

세콘은 맥 오에스 텐이 리눅스나 윈도우즈 XP용 통계 소프트웨어보다 두 배 정도 더 느린 결과의 수치와 그래프를 포스팅하였다. 그러면서 이 문제는 애플 커널 때문이라 덧붙였다.

그러나 세콘이 맥 오에스 텐의 작동방식에 대해 코멘트한 것은 틀린 것으로 판명났다. 그의 애플리케이션은 과도하고 불필요하게 메모리를 할당하였으며, 마침내 그는 맥 오에스 텐이 아닌, 리눅스와 윈도우즈용으로 최적화된 allocator 루틴을 사용하였다.

세콘은 그점을 인정하여, 자신의 벤치마크가 XNU 커널의 문제를 나타내지는 않았으며, 자신의 소프트웨어와 맥 오에스 텐용 allocator 탓이라고 밝혔다. 그러나 그 기사를 읽는다면 세콘의 문제많은 통계치가 그 사실을 입증하지 못할지라도, 누구나 XNU 커널에 뭔가 잘못이 있지 않나라고 여기기 십상이다.

세콘은 "호기심" 때문에 잘못된 벤치마크를 계속하였다. 그로 인하여 원래의 결과에 반영되지는 않았지만 그는 다른 주장도 펼쳤다. 애플의 "다윈이 리눅스 커널보다 2.6배 더 느리며, 더 느릴 때도 있다"는 주장이었다. 증거? 증거는 바로 Anantech에 대한 링크였다!

Up to Five times More Ridiculous than other Benchmarks
이러한 터무니 없는 맥 오에스 텐 벤치마크가 어떻게 해서 맥 오에스 텐 커널 교체론의 증거로까지 발전할 수 있었을까?

광고판으로 번쩍거리는 리눅스 광팬들이나 신경질부리는 정치학자, 혹은 그런 의심스러운 벤치마크에 근거하여 글을 써대는 기술 전문 칼럼니스트보다 애플의 엔지니어들이 맥 오에스 텐 최적화에 좀 더 나으리라는 생각은 해본적이 없을까?

맥 오에스 텐이 모든 일에 적합할 수야 없지만, 맥 오에스 텐 서버를 돌리는 엑스서브와 세계에서 10번째로 큰 대형 웹사이트, 그리고 수천만 다운로드를 수행하는 세계최고의 아이튠즈 뮤직스토어 뿐만 아니라 정부와 공공분야, 교육분야에 대해 높은 판매고를 올리는 애플스토어를 운영하는 웹오브젝트를 생각해 보아도, 맥 오에스 텐의 커널을 바꾸어야 하며, 붕괴하기 전에 몇몇 사용자들의 도움을 받아야 한다는 개념이 생겨날 수가 있을까?

하지만 리눅스가 어떻게 해서 산업 표준의 지원을 더 많이 받게 되었을까? 이점도 다루어 보겠다.

Unraveling The Mac OS X Linux Kernel Myth Part 3








__________________
FAQ

casaubon 님께서 2006-05-27 06:07 AM 에 수정하셨습니다..
  Reply With Quote
2006-05-27, 06:01 AM   #7
casaubon
Moderator
 
casaubon's Avatar
 
Registered: Sep 2001
My Mac: MacBook Air
Posts: 2,140
오프라인


Unraveling The Mac OS X Linux Kernel Myth : May 25, 2006
According to proponents of this myth, Apple will, could, or should shortly replace Mac OS X's kernel with Linux. They're wrong; here's why.
http://www.roughlydrafted.com/image
Part 1은 미신과 함께 리눅스 유행에 대해 알아보았다. Part 2는 리눅스가 디자인상 훨씬 더 빠르다는 주장에 대해 조사해 보았다. 이제는 맥 오에스 텐을 리눅스 커널로 교체해야 한다는 주장의 세 번째 근거에 대해 다뤄보겠다.

Linux' Support as an Industry Standard
맥 오에스 텐을 리눅스 커널로 바꾸어야 한다는 세 번째 근거는 광범위한 업계 지원이다. IBM이나, HP, Sun 등 모두가 리눅스 개발 지원에 대한 구상을 발표하였으며, 이미 거대한 투자가 이뤄지기도 하였다. 그 자체로서도 리눅스 유행과 관련이 있지만, 필자는 우선 더 중요하고 실질적인 동기에 대해 개별적으로 알아보겠다. 기술 업계 내부의 소문이 아닌 실질적인 행동에 대해서 말이다.

그동안 애플은 인텔칩으로의 이주를 단행하였다. 부분적으로는 x86 진영의 빠른 개발 이득을 보려 하기 때문이었다. 그렇지 않으면 유일한 PowerPC 웍스테이션 벤더로서 애플이 나머지 모두를 책임져야 했을 것이다. 유사한 사례로서 유사-유닉스 운영체제인 맥 오에스 텐으로의 이주도 들 수 있다. 덕분에 애플은 유닉스 운영체제 하에서의 광범위한 애플리케이션 개발로 인하여 규모의 경제의 혜택을 받을 수 있게 되었다.

그렇다면 산업 표준으로서 리눅스의 지위로부터 애플이 받을 만한 혜택은 무엇이 얼마나 있을까? 전체적으로 리눅스 개발은 POSIX 플랫폼(유사-유닉스 소프트웨어로서 특정 커널에 거의 의존하지 않는다)으로 이뤄지고 있다. 그리고 애플은 이미 POSIX 플랫폼에 대해 접근해오고 있었다.

리눅스를 지원하는 업계 대부분은 각 벤더 전용 하드웨어에 대한 리눅스 커널 지원에 집중되어 있다. 가령 리눅스로 SPARC를 돌리려는 썬의 노력은 애플에게 별다른 혜택을 주지 못할 것이다.

그러한 관점에서, 애플은 기존 커널을 리눅스로 교체한다고 하여 상황이 더 나아질 리가 없다. 리눅스가 주도한 주요 기술 진보의 대다수는 이미 애플의 다윈/맥 오에스 텐 플랫폼에 직접적으로 반영될 수 있기 때문이다. 즉, 애플로서는 별다른 혜택이 없다.

Bucking the Standard
애플도 나서서 지원하려 하는 업계 표준의 좋은 사례가 바로 X Window이다. 맥 오에스 텐 초창기 시절, 애플은 NeXTSTEP의 윈도우 서버인 Display PostScript가 어도비의 라이센스에 포위되어 있음을 발견하고, 이를 교체시키려 하였다. 애플에게 있어서 분명한 솔루션은 X 윈도우 상에서 새로운 윈도우 서버를 구축하는 것이었다. X 윈도우는 유사-유닉스 시스템용 그래픽 사용자 인터페이스 구축 표준이다.

그러나 X는 애플이 맥 오에스 텐에서 원하는 기능을 지원하지 못하였다. 당시 애플은 하고싶은 기능 모두를 X 윈도우에서 구축해 보았지만, 그렇게 되면 X 윈도우는 더이상 표준이 아닐 터였다. X 윈도우 상에서 조금만 변경시킨다고 해도 디자인 측면에서 상당한 협상을 거쳐야 할 터이고, 개발을 더 어렵게 만들어 버릴 것이었다.

당시 애플은 맥 오에스 텐용으로 적합하도록 리눅스에도 기능을 충분히 채택시켜 보았었지만, 그렇게 해서야 리눅스도 더이상 리눅스가 아니었다. 오히려 누구도 사용하지 않는 애플만의 리눅스가 되었다. 무의미한 개발 노력이 대단히 많이 이뤄졌으면서 성과는 거의 없었다!
BSD: a better Linux than Linux?
표준이 정말 훌륭한 이유는 표준을 채택하는 곳이 많기 때문이라는 말이 있다. 유닉스가 실로 그러했다. 앞서 언급했지만, 리눅스는 보통의 PC에서 돌릴 수 있는 무료 커널이 필요해서 탄생했었다. 다른 대안으로서 AT&T가 고소를 벌인 BSDi가 있었다. BSD의 미래가 위협에 처해있지 않았더라면 리눅스는 존재조차 할 수 없었을 것이다.

대신 리눅스는 BSD를 뛰어넘었다. 한동안 BSD는 소송에 사로잡혀 회복이 불가능해 보였다. Slashdottroll joke에서는 의도적으로 "Netcraft confirms it: BSD is dead."라는 코멘트까지 나올 정도였다.

오늘날 BSD는 건강하게 살아남았다. 여러가지 목표에 맞춘 각 프로젝트별로 가지를 뿌리내리기까지 하였다. 가령 OpenBSD는 보안을 목표로 하고, NetBSD는 휴대성을 목표로 하며, FreeBSD는 퍼포먼스를 목표로 두고 있다. 몇몇 애플리케이션에 있어서 왜 리눅스보다 BSD를 채택하는지에 대해서는 이유가 몇 가지 있다.

애플은 NeXT로부터 BSD의 유산만 받지 않았다. 애플이 리눅스로 가지 않고 BSD에 여전히 안주하는 이유도 있다. BSD 세계는 애플에게 광범위한 역동적 개발에 대해 접근하도록 해준다. 또한 여러 독립 프로젝트와 협력할 자유도 선사해 준다.

다음에는 애플이 리눅스를 채택하지 않는 중요한 이유에 대해 알아 보겠다.

Unraveling The Mac OS X Linux Kernel Myth Part 4







__________________
FAQ

casaubon 님께서 2006-05-27 06:07 AM 에 수정하셨습니다..
  Reply With Quote
2006-05-27, 06:03 AM   #8
casaubon
Moderator
 
casaubon's Avatar
 
Registered: Sep 2001
My Mac: MacBook Air
Posts: 2,140
오프라인


Unraveling The Mac OS X Linux Kernel Myth : May 26, 2006
According to proponents of this myth, Apple will, could, or should shortly replace Mac OS X's kernel with Linux. They're wrong; here's why.
http://www.roughlydrafted.com/image

Part 1은 미신과 함께 리눅스 유행에 대해 알아보았다. Part 2는 리눅스가 디자인상 훨씬 더 빠르다는 주장에 대해 조사해 보았다. Part 3는 업계 표준으로서의 리눅스 지위를 비교해 보았다. 이번에는 맥 오에스 텐의 리눅스 커널 이주가 왜 불가능한지를 보이겠다.

Problem 3 : The Substantial Reasons for Not Moving Mac OS X to the Linux Kernel
리눅스는 여러가지 이유에서 애플 맥 오에스 텐에 좋은 상대가 되지 못한다. 단순히 말하자면, 두 운영체제가 다른 접근 방식으로 매우 다른 문제를 해결하도록 디자인되어있기 때문이다. 우선 전혀 매치가 안 되는 세 가지 영역에 대해 알아 보겠다.

이 영역 구분을 한 이유는, 리눅스와 애플 맥 오에스 텐 간의 불가능한 그 차이를 보다 쉽게 나타내기 위해서이다. 디자인 목표에서부터 상용 가능성, 기술적인 호환성에 이르기까지 일일이 다 나타낼 수 없을 정도로 두 운영체제의 차이는 너무 많다. 대신 중요한 문제만 포함시켜 놓은 것이다.


To click or not to click... ?
Philosophical Differences

Open Source Motive - 리눅스는 활동적인 오픈소스 운동의 핵심이다. 애플의 오픈소스 노력은 기술의 공유를 위해서이다. 애플은 커맨드라인 플랫폼으로서 리눅스를 대체하기 위해 유닉스 배포폰을 따로 만들려 하지 않았다.

애플의 다윈(Darwin)을 실패라 부르는 이유는 다윈이 대규모 커뮤니티에게 범용 배포본으로 뿌려지지 않기 때문이다. 그들은 개발자들이 애플 다윈으로 내부 구조가 어떻게 돌아가는지 더 잘 알려준다는 사실을 무시하고 있다. 다윈은 일반적인 목적으로서의 배포폰으로서나 단일한 커널로서의 리눅스나 BSD와 경쟁을 염두에 두지 않았다.

모든 오픈소스 프로젝트가 같은 모델과 목적을 추구하지는 않는다. 애플도 외부 개발로부터 혜택을 받거나 공유도 하고는 하지만, 애플도 자기 제품 관리나 개발을 다른 코드 기여자들처럼 전세계에 공개하려 하진 않는다.

애플의 전체 사업 모델은 잘 통합되고 쓰기 쉬운 소프트웨어를 탑재한 하드웨어 판매로 이뤄진다. 리눅스 개발자들의 목표와는 전혀 매치가 안 된다. 그보다 더 하다. 애플과 리눅스의 목표 접근 방법에 영향을 끼치는 철학이 전혀 다른 것이다.

The Swiss Army Knife - 리눅스는 어떠한 형태의 애플리케이션 어레이에 적합한 커널로 디자인되었다. 애플 커널은 특히 맥 오에스 텐의 근간에 특화되었다. 다윈과 리눅스에 특화된 애플리케이션을 비교해 보려는 이들은 이점을 까먹고 있다. 애플 문서도 이점을 지적하고 있다.

Although it could be considered a standalone operating system [...] many of the fundamental design decisions of Darwin are governed by its being embedded within Mac OS X.

Worse is Better - 리눅스는 일처리만 해주면 될 정도로 디자인되었다. 리누스 토발즈(Linus Torvalds)도 리눅스가 완벽한 아키텍쳐라고 주장한 적이 없으며, 오히려 최고의 디자인에 대한 비교를 피했다. 리눅스 코드 품질은 이제까지 의심을 받은 적이 없다.

여러가지 필요때문에 애플이 나서서 커널 디자인을 해야 할 필요는 없기 때문에, 애플은 맥 오에스 텐에 어울리는 이상적인 아키텍쳐 구축을 이상주의자들의 계획에 맡길 수 있다. 덕분에 애플은 끌끔하고 현대적인 아이디어로 시작하고 옛날의 거추장스러운 아이디어는 물릴 수 있게 되었다. 그 분명한 사례가 발족하기도 하였다.



Continued: Political Differences