애플의 WWDC 2020를 보며 (1)

올해 WWDC 키노트가 지난달 6월 22일에 있었습니다. 언제부턴가 애플 키노트를 보고나면 짤막하게 여러글을 묶어서 타래 형식으로 쓰곤 했었는데 사실 계속 귀차니즘 때문에 못 쓰고 있었습니다. 하지만 더 미루다간 글의 유통기한이 다할 것 같기도 하고 매직 키보드도 왔으니 귀차니즘을 이겨내고 WWDC 2020을 보면서 했던 짤막한 생각들을 모아보고자 합니다.


WWDC 키노트

올해는 코로나로 인해 사실 이렇다할 발표가 없었습니다. 그냥 갑자기 홈페이지를 업데이트 하고 보도 자료를 내는 방식으로 신제품을 깜짝 발표하곤 했었죠. 다른 회사들도 사정은 마찬가지라 올해 라이브로 발표 이벤트를 진행하는 회사는 거의 없었습니다. 그나마 이번 WWDC 2020에서 한 키노트가 애플이 진행한 올해첫 가장 그럴듯한 발표였죠. 물론 라이브로 진행된게 아니라 미리 녹화된 영상으로 진행되었습니다.

녹화로 진행되는 이벤트는 이번이 처음이었는데 외국인 입장에서는 이전 발표보다 훨씬 보기가 편했습니다. 기존 라이브 이벤트에서는 영어 자막이 발표자가 말한 다음 한참 있다가 나왔기 때문에 싱크가 전혀 맞질 않았죠. 자막을 보고나면 이미 발표 내용은 한참 지나가 있는 문제가 있었습니다. 이번 발표는 녹화영상이다보니 자막도 미리 만들어놓았고, 싱크가 안맞는 문제 없이 자막을 볼 수 있었습니다.(기왕이면 다국어 번역도미리 해주면 좋겠다는 생각은 욕심일까요?)

WWDC 2020은 애플의 소프트웨어 행사입니다. 애플을 다른 경쟁자들과 다르게 만들어주는 것은 하드웨어가 아니라 소프트웨어라고 생각합니다. 다른 경쟁자들이 구글이나 마이크로소프트에서 만든 운영체제를 쓰기 때문에 맞닥뜨리는 많은 문제들을 애플은 비교적 쉽게 해결할 수 있습니다. 바로 이 점이 다른 경쟁자들과애플을 차별화하는 부분이죠.

이번 WWDC도 단 하나의 하드웨어 발표 없이 소프트웨어로만 이야기가 이루어졌습니다. 하지만 이번엔 워낙 중요한 대변혁이 발표되어서 매우 재미있는 키노트였던 것 같습니다.

MacOS 11.0 Big Sur

먼저 가장 할말이 많은 맥OS부터 이야기해보죠. 이번 발표의 주인공은 단연 맥OS였습니다. 사실 2018년까지의 WWDC 키노트를 보면 가장 마지막엔 항상 iOS가 발표되곤 했었습니다. 주인공은 맨 마지막에 등장하듯, 아이폰과 iOS가 그만큼 애플에서 차지하는 위치는 거의 주인공급이었습니다. 그런데 2019년에 iPadOS가 맨 마지막에 발표되었고, 올해는 맥OS가 가장 마지막에 발표되었습니다. 그동안 아이폰 중심으로 이루어졌던 소프트웨어 발전이 아이패드나 맥으로 옮겨지고 또 그 나름대로 발전하는 모습을 보여주고 있는 것으로 보입니다.

이번 맥OS의 코드네임은 빅서(Big Sur), 그리고 버전 명이 11.0이 되었습니다. 11.0이란 버전은 상징적입니다. 지금까지 20년 동안 10.0, 10.1, … 10.13, 10.14, 10.15 같이 마이너 버전이 업그레이드되고 있는 형태였기 때문이죠. 맥 OS 10.0 버전이 출시된 시기가 2001년입니다. 워낙 10.x 버전이 오래되다보니 아예 운영체제 이름이 macOSX, OSX(오에스텐)으로 불리던 시절도 있었습니다. 빅서는 거의 20년만에 메이저 버전이업그레이드된 기념비적인 버전입니다.

빅서는 전체적인 디자인이 iOS처럼 바뀌었습니다. 사실 맥OS는 그동안 iOS의 디자인에 비하면 소소하게약간만 수정되는 정도였는데 빅서에 이르러 완전히 iOS 분위기가 나게 바뀌었습니다. 그러면서도 iOS의 완전한 플랫 디자인과 달리 질감이나 입체감을 살린 아이콘 디자인이 눈에 띕니다. 하지만 개인적으로 아이콘은 2000년대 초반 같이 좀 촌스러운 것 같습니다. 하지만 이번에 추가된 배경화면은 마음에 듭니다.(이미 아이맥의 배경화면으로 사용하고 있죠.)

디자인 뿐 아니라 iOS에 있는 몇가지 요소가 추가되었는데요, 대표적으로 알림센터와 제어센터가 추가되었습니다. 사실 그동안 있었던 맥OS의 알림센터는 뭔가 좀 어정쩡한 느낌이었습니다. 알림영역과 위젯영역이각각 나눠져 있었는데 맥은 iOS와 달리 영역이 넓다보니 둘 다 빈공간이 많은 상태로 휑한 느낌이었습니다. 위젯도 그 넓은 영역을 다 채울 정도로 많이 있던 것도 아니구요. 빅서에서는 해당 영역을 합쳐버려 좀 더 효율적으로 사용할 수 있도록 변경했습니다. 위젯과 알림이 하나에 보입니다.

재밌는건 iOS, iPadOS, macOS가 서로 위젯을 사용하는 방법이 다르다는건데요, iOS 14는 홈스크린에 앱아이콘과 위젯이 같이 나오고, iPadOS 14는 위젯과 앱 아이콘이 서로 분리된 기존과 똑같은 구조를 유지하고, macOS는 알림과 위젯이 같이 나오는 형태입니다. 세가지 OS가 위젯을 서로 다르게 위치시키고 있는건데요, 장치별 특성에 맞춘 최적화일까요? 아니면 뭔가 실험일까요?

제어센터에서는 이제 iOS처럼 제어센터를 통해 볼륨조절, 블루투스/Wifi 제어 등의 작업을 할 수 있습니다. 기존에도 왼쪽 상단의 메뉴바에서 어느정도 제어가 가능했지만 좀 더 iOS-like 해졌다고 보면 될 것 같습니다.

여러가지 변화가 있지만 아마 많은 사람들이 가장 필요로 했던 변화는 사파리의 업그레이드일겁니다. 드디어 사파리에서 넷플릭스를 4k로 볼 수 있습니다. 다만 아쉽게도 2018년 맥부터 지원된다고 합니다.(제 아이맥은 2017년이라 지원대상 제외군요..ㅠㅠ) 하지만 유투브는 4k를 지원하는지 확실하지가 않네요. 반면iOS14에서는 유투브도 4k가 지원된다고 합니다. 또 사파리에는 시작 화면의 배경을 커스터마이징하거나 탭미리보기 등의 기능도 추가되었습니다. 크롬보다 50% 빨라졌다는 속도 향상도 눈에 띕니다.

하지만 솔직히 사파리의 신규 버전은 요즘 세상에는 너무 늦은 감이 있습니다. 크롬이나 파이어폭스 같은 경쟁 브라우저들은 거의 한달에 한번씩 메이저 버전이 출시되지만 사파리는 맥OS의 업데이트에 맞춰 변경됩니다. 물론 중간중간 보안 업데이트가 추가되긴 하지만 사파리가 아무리 간격을 벌려놔도 다른 경쟁브라우저들이 금방 따라와버리니 사파리 사용자들은 다음 성능 향상까지 1년을 기다려야합니다.

개인적으로 이번 맥 사파리에서 눈에 띄는 변화는 Web Extension을 지원한다는 것입니다. Web Extension은 모질라에서 개발하고 있는 파이어폭스용 확장 기능 API 표준으로 크롬 등에도 호환되는게 특징입니다. Web Extension 추가를 통해 이론적으로 파이어폭스나 크롬의 확장 기능을 사파리에서도 사용할 수 있습니다. 다만, 해당 개발자가 맥 앱스토어에 확장 기능을 등록했을 때의 이야기이긴 합니다. uBlock Origin 같은확장 기능은 이 기능으로도 사파리에 추가될 수는 없다고 합니다.

그 외에 아이메시지가 iOS 버전만큼 많은 기능을 갖도록 업그레이드 되는 등 많은 업그레이드가 있었지만사실 이번 맥OS에서 제일 중요한 변화는 바로 아키텍쳐의 변화입니다. 스티브 잡스가 복귀 후 야심차게 도입했던 인텔 CPU로부터 ARM 계열의 애플 자체 CPU로 이주하기로 발표했기 때문이죠. 빅서는 ARM 기반의 맥에서 실행되는 첫 맥OS입니다.


맥 아키텍쳐의 전환

특정 플랫폼을 운영하는 기업이 아키텍쳐를 바꾼다는 것은 매우 어려운 일입니다. 하드웨어와 소프트웨어만바꾸는게 아니라 해당 플랫폼에 있는 개발자들까지 같이 움직여야 가능한 일이기 때문입니다. 하드웨어 소프트웨어가 준비되어도 개발자들이 움직이지 않는다면 사용할만한 앱이 없어 사용자 입장에서는 크게 제한된다고 생각할 것입니다.

아키텍쳐 전환의 어려움을 몸소 보여주고 있는 예로 마이크로소프트가 있습니다. 마이크로소프트는 폰과PC가 같은 코드 기반의 앱을 실행할 수 있게 해준다는 UWP를 밀었지만 현재는 마이크로소프트 앱 외에는거의 쓰이지 않고 있습니다. 또 Windows RT 등으로 ARM으로 이주하고자하는 시도를 여러번 했었지만 번번이 실패했죠. 아직도 윈도우에서 실행되는 많은 앱들이 32비트 기반입니다. 윈도우의 강점이자 족쇄인Win32를 쉽게 끊어낼 수 없는 것입니다.

이렇게 어려운 일을 애플은 지금까지 세번이나 했습니다. 첫번째는 모토로라 계열의 CPU에서 Power PC 계열로의 전환이었고, 두번째는 MacOS 9에서 10으로 넘어가면서 유닉스 기반으로 운영체제를 완전히 바꾼것이었습니다. 그리고 세번째는 Power PC에서 인텔 CPU로의 전환이었죠. 이 세가지 과정을 애플은 지금까지 성공적으로 잘 해왔습니다.

애플은 어떻게 아키텍쳐 전환을 잘 해왔을까요? 첫번째는 하드웨어와 소프트웨어를 둘 다 만드는 애플의 특징에 있습니다. 전환을 결정하면 앞으로 나올 모든 하드웨어가 전환되고, 운영체제도 한번에 전환을 할 수 있습니다. 윈도우의 경우는 마이크로소프트가 전환하기로 한다고 모든 제조사들이 일제히 따라주는게 아니죠.

두번째는 비교적 작은 시장 규모와 생태계에 갖고 있는 애플의 통제력입니다. 맥OS는 iOS에 비해 좀 더 자유롭지만 그래도 상당히 많은 부분은 애플이 철저하게 통제하고 있습니다. 이런 통제 속에서 개발된 앱들은바꿔말하면 애플이 만든 새로운 환경에 쉽게 적용될 수도 있다는 이야기입니다. 게다가 앱의 수도 윈도우에비하면 매우 적은 편입니다. 그래서 비교적 부드럽게 아키텍쳐의 전환이라는 대변혁을 잘 수행해왔던 것입니다.

이번에 애플이 내놓은 대책(?)들을 보면 흥미로운게 많습니다. 일단 주요 앱(어도비, 오피스 등)은 이미 전환하는 작업을 각 개발사와 오래전부터 진행중이었고, Xcode를 통해 개발된 앱들은 컴파일 한번으로 ARM에맞는 앱을 쉽게 만들 수 있도록 했습니다. 업데이트가 안되고 있는 앱의 실행을 위해 Rosetta 2라는 인텔 아키텍쳐 기반의 앱을 ARM 기반으로 실시간으로 번역해주는 도구도 만들었습니다.(Rosetta 1은 Power PC 기반의 앱을 인텔 맥에서 실행하게 해주는 역할을 했습니다.) 이런 대책들은 아마도 꽤 오랫동안 준비해온것으로 보입니다. ARM 전환으로 인해 앱이 부족하다는 이야기는 없을 것 같네요.

그럼 왜 애플은 이런 어렵고 비용도 많이 드는 일을 해서 아키텍쳐를 옮기고자 하는 것일까요? 이유는 사실간단합니다. 인텔 CPU가 애플 자체 CPU에 비해 전력 소모도 심하고 성능도 느리기 때문입니다. 스티브 잡스가 파워PC에서 인텔로 옮기기로 했을 때 파워PC는 인텔에 비해 느렸고 전력 소모도 심했습니다. 인텔CPU의 성능과 공정 향상이 멈추면서 그 때와 똑같은 이유로 이제 애플은 인텔에서 자체 프로세서로 넘어가려는 것입니다.

애플 CPU의 효율성은 이미 아이폰과 아이패드에서 증명된 바가 있습니다. 저전력 저발열 모바일 프로세서를 쓰고 있지만 성능은 웬만한 랩탑을 뛰어넘는 성능을 보여줍니다. 아이패드 프로(2018)는 맥북에어(2020) i5보다 빠르지만 맥북에어는 발열이 높은 반면 아이패드 프로는 방열팬조차 없습니다. 이런 효율적인 프로세서가 맥으로 온다고 생각하면 아마 애플로서는 엄청나게 많은 일들이 가능할 겁니다.

얇고 가벼운 맥북 프로, 얇고 턱이 없어 일반 모니터 같아진 아이맥 등 애플 자체 CPU를 적용한 맥들은 아마인텔 CPU에선 상상도 할 수 없었던 많은 설계가 가능해질겁니다. 사실 저도 이 부분이 가장 기대됩니다.

물론 인텔 CPU에 비해 고성능에서 약했던 ARM의 성능에 대해 우려하시는 분도 많을 것 같습니다.하지만이번에 개발자들에게 테스트용으로 지급된 Developer Kit(맥 미니에 A12Z를 탑재한)에서 Rosetta 2로 에뮬레이션한 Geekbench의 벤치마크 결과가 맥북에어보다 빨랐다고 합니다. 아이패드 프로에 탑재된 CPU가에뮬레이션한 상태로 구동되었음에도 맥북에어의 i5보다 빨랐다니, 맥용으로 새로 설계되는 프로세서는 휴대성이 높은 맥북에서는 걱정하지 않아도 될 것 같습니다.

반면 그나마 범용적이었던 인텔 CPU에서의 전환은 애플의 맥 하드웨어 통제력이 더욱 강화된다는 것을 의미하기도 합니다. 인텔 CPU에서는 맥에 윈도를 설치해서 구동하는 부트캠프가 있었고 가상머신으로 윈도를 구동할 수도 있었습니다. 일반적인 PC와 같은 CPU를 썼으니 가능한 일이었죠. 하지만 애플 자체 CPU를쓴 맥에서는 이 모든게 불가능해집니다. 부트캠프는 물론이고 가상머신으로 윈도를 실행하는 것조차 할 수없습니다. 애플은 키노트에서 패러렐즈로 실행되는 (아마 ARM 기반에서 실행되는 것으로 보이는) 리눅스를 시연하긴 했지만 윈도를 실행하진 않았습니다. Rosetta 2 같은 호환성 도구로도 윈도 가상머신은 실행할수 없다고 하니 맥에서 윈도는 이제 아예 못 쓰게 된다고 봐도 되겠죠.

멀티 부팅으로 윈도우를 깔거나 리눅스를 깔 수 있었던 인텔 CPU 시절에 비해 사용자가 하드웨어를 통제할수 있는 권한은 대폭 줄어들겁니다. 어쩌면 사설 수리 자체도 불가능할 수도 있죠. 지금은 T2라는 별도 프로세서가 하드웨어 및 부품을 통제하고 있지만 자체 CPU를 쓰게되면 T2조차 필요 없겠죠. 즉 맥이 아이패드처럼 통제될 수 있을겁니다. 컴퓨터를 갖고 놀기 좋아하는 사람들에게는 이건 불행한 소식이겠죠.

하지만 애플 자체 CPU로 전환하면서 맥 앱 생태계는 확실히 이전보다 풍부해질겁니다. 아이폰이랑 아이패드에서 실행되는 프로세서와 같은 계열의 프로세서를 쓰니 드디어 iOS 앱을 실행할 수 있게 되었습니다. 예전에 맥북을 쓸 때는 뭔가 생각보다 쓸만한 앱이 많지는 않다는 생각을 했었는데 ARM 맥은 iOS의 거대한생태계를 그대로 껴안을 수 있게 된 것입니다. 물론 맥에 최적화되지 않은 인터페이스가 문제가 될 수 있긴하겠지만 시간이 갈수록 iOS와 맥 생태계는 빠르게 통합될 것입니다. 분명히 사용자 입장에서는 이득이겠죠.

WWDC 2020에 대한 이런저런 생각들을 짤막하게(?) 정리해봤습니다. 올해는 맥OS 때문에 할 말이 많아져서 그런지 매해가 갈수록 이 시리즈가 점점 길어지는 느낌이드네요. 저도 기덕이자 OS 덕후라(…) 이번WWDC에서 가장 흥분되는 소식은 역시 맥OS의 아키텍쳐 전환이었습니다. 인텔로의 전환으로 인해 모든애플 하드웨어는 이제 애플이 만드는 자체 프로세서를 쓰게 됩니다. 맥에서도 아이폰이나 아이패드에서 가능했던 많은 것들이 비교적 저렴하고 작은 크기로 가능해질거라 생각하니 연말에 발표될 새로운 맥 하드웨어는 정말 기대가 됩니다.

다른 운영체제 — iOS, iPadOS, WatchOS에 대한 이야기는 다음 글에서 이어집니다.