통합이 반드시 최선의 선택은 아니다. ′독립형 리셋 타이머의 제안′
  • 2011-01-04
  • 편집부

통합이 반드시 최선의 선택은 아니다.
'독립형 리셋 타이머의 제안'

많은 모바일 기기들이 사전에 정해진 일련의 작업을 수행하는 하드웨어 기반 기기에서 맞춤화 가능한 소프트웨어 애플리케이션을 제공하는 개방형 플랫폼으로 변신하고 있다. 이러한 변화에 의해서 모바일 기기들이 더욱 더 PC처럼 동작하면서 최종 사용자들에게 맞춤화 기능을 제공할 수 있게 되었다.
이 글에서는 리셋 타이머의 필요성과 이용 가능한 시스템 솔루션들에 대해 설명한다. 또한 모바일 기기의 “white screen of death” 문제에 대한 가장 신뢰할 수 있는 해결책으로서 독립형 리셋 타이머를 제안한다.

Travis Williams/Applications Engineering Manager, Fairchild Semiconductor

많은 모바일 기기들이 사전에 정해진 일련의 작업을 수행하는 하드웨어 기반 기기에서 맞춤화 가능한 소프트웨어 애플리케이션을 제공하는 개방형 플랫폼으로 변신하고 있다. 이러한 변화에 의해서 모바일 기기들이 더욱 더 PC처럼 동작하면서 최종 사용자들에게 맞춤화 기능을 제공할 수 있게 되었다.
하드웨어 및 소프트웨어와 다양한 모든 기능들을 제조업체가 조합하고, 테스트하고, 검증하는 폐쇄적인 솔루션에서 어떠한 조합의 써드파티 소프트웨어 “앱(apps)”이든 지원할 수 있어야 하는 개방형 플랫폼으로 전환함으로써 기기가 작동이 정지할 가능성 또한 높아졌다.
이러한 유연성을 지원하기 위해서, 시스템 하드웨어 역시 멀티미디어, 통신, 전력 관리 기능에 전용 프로세서를 이용하면서 갈수록 복잡해지고 있으며, 이들 각각의 프로세서가 결함을 일으키지 않으면서 상호 작동할 수 있어야 한다.
기존에 PC에 대해서 이용되던 문구를 살짝 비튼 것으로서 모바일 기기 분야의 사람들은 기기의 작동이 정지하는 문제를 “white screen of death(WSOD)”(시스템 정지 오류 화면)라고 부르고 있다. 이 문제가 발생하면 대부분의 경우에 최종 사용자가 기기를 다시 작동하기 위해서 배터리를 제거하고 시스템을 재부팅해야 한다. 모바일 기기 업체들은 이로 인한 사용자 불편에 대해 잘 알고 있으며 칩 업체들이 이에 대한 해결책을 내놓기를 원하고 있다.
이러한 요구에 신속하게 부응하기 위해서 Fairchild Semiconductor는 전적으로 모바일 기기 시장의 요구를 충족할 수 있도록 설계된 독립형 리셋 타이머 제품을 개발했다. 이 글에서는 리셋 타이머의 필요성과 이용 가능한 시스템 솔루션들에 대해 설명한다. 또한 모바일 기기의 “white screen of death” 문제에 대한 가장 신뢰할 수 있는 해결책으로서 독립형 리셋 타이머를 제안한다.

사용자 경험
모바일 기기 업체들은 사용자 경험을 향상시키고 “토탈 패키지”를 제공하는 것을 갈수록 더 중요시하고 있다. 끊임없이 더 첨단의 기기를 요구하는 경쟁이 치열한 시장에서 단말기 업체들은 매끄러운 하드웨어, 임베디드 소프트웨어, 사용자 정의 “앱” 솔루션을 제공할 수 있어야 한다.
이들 업체들은 또한 상호운용성 결함 때문에 불가피하게 충돌이 발생하고 시스템의 작동이 정지하는 문제에 대해서도 대비해야 한다. 완벽한 사용자 정의 경험을 제공할 수 있는 강력한 플랫폼을 개발했다 하더라도 기기의 작동이 정지하는 문제가 발생한다면 그 어떤 문제보다도 급속하게 OEM의 명성이 심각하게 추락하고 최종 사용자의 만족도가 떨어질 것이다.
모바일 기기가 이제 단순히 단일 기능 기기에 머물고 있지 않기 때문에 최종 사용자들은 과거에 이용하던 과격한 강제적 방법 대신에 좀더 정교한 리셋 솔루션을 원하고 있다. 하드 리셋을 위해서 배터리를 제거하는 방법은 세련된 방법이 아닐 뿐만 아니라 배터리에 접근할 수 없는 신형 디자인의 경우에는 현실적으로 불가능할 수 있다.
더욱이 중국 시장에서 판매되는 스마트폰의 경우에는 하나는 사용자가 액세스할 수 있는 것과 또 하나는 액세스할 수 없는 것으로 2개의 배터리를 포함하는 것이 갈수록 일반화하고 있다. 이러한 경우에는 최종 사용자가 단말기를 분해하지 않고서는 전원을 완벽하게 제거하기가 불가능하다.
그림 1은 스마트폰을 설계하고 구현하기가 얼마나 복잡한지를 보여준다. 이 그림에 표시된 하드웨어 블록들 이외에도, 상위 수준에서 실행하고 다수 프로세서들의 동작들을 조정하는 소프트웨어 층을 포함해야 한다. 어느 때든 이들 시스템 블록 중의 어느 블록이라도 기능이 정지한다면 그 여파가 전체적인 시스템에 걸쳐서 일어날 것이다.

공개 소스 운영체제와 써드파티 애플리케이션
독립형 하드웨어 기반 리셋 솔루션이 필요한 두 번째 이유는 다양한 유형의 써드파티 애플리케이션을 이용하기 때문이다. 운영체제를 엄격하게 관리하고 모든 애플리케이션을 테스트 및 검증하는 환경이라 하더라도, 모든 활용 사례를 테스트할 수는 없으며, 검증된 앱이라 하더라도 치명적인 오류를 일으키는 상황은 언제든지 발생할 수 있다.
시스템 결함은 OS 때문일 수도 있고 보드 상의 여러 마이크로프로세서 중의 어떤 것 때문일 수도 있다. 뿐만 아니라 디자이너들이 기기의 외양뿐만 아니라 다양한 써드파티 소프트웨어의 조합을 맞춤화할 수 있는 공개 플랫폼 운영체제를 채택하는 경우가 갈수록 늘어남에 따라서 OEM 프로그래머들이 조합해야 하는 것들이 갈수록 늘어나고 있어서 시스템이 불안정해질 수 있는 가능성이 높아지고 있다.
그림 2는 모바일 기기에서 상호작용해야 하는 다수의 소프트웨어 층과 각기 다른 소프트웨어 군 사이에 조정해야 하는 상호동작들을 그림으로 보여주고 있다. 공개 소스 운영체제가 확산되기 전에는 OEM 업체들이 통상적으로 사내적으로 자체적인 OS와 여기에 추가하기 위한 사용자 기능들을 개발했다.
그러므로 OEM 업체가 제품을 내놓기에 앞서서 모든 단말기 기능과 상호동작을 테스트하고 검증할 수 있었다. 하지만 오늘날 OEM이 개발하는 소프트웨어는 상위 층의 맞춤형 외양만 직접적으로 통제할 수 있을 뿐이다. 대부분의 경우에 기기 업체들이 자사 기기로 다운로드하는 애플리케이션에 대해서는 직접적으로 통제할 수 없게 되었으며 그럼으로써 각기 다른 코드 셋의 상호동작 때문에 문제가 더욱 더 복잡해지고 있다.
갈수록 더 자유롭게 자신의 기기를 맞춤화하고 개성을 담을 수 있게 됨으로써 최종 사용자 또한 시스템이 각기 다른 애플리케이션들을 실행하면서 문제를 일으킬 수 있는 가능성을 높이고 있다.
이론에서 벗어나서 오늘날 스마트폰의 현실을 들여다보자면 이렇다. 대기업 OEM 단말기 업체의 엔지니어들에 따르면 스마트폰에서 실행되는 코드가 많게는 1100만 라인에 달할 수 있다고 한다.
또한 써드파티 앱의 2~3퍼센트가 시스템 충돌을 일으킬 수 있으며, 10~15퍼센트의 앱이 시스템 소프트웨어에 변화를 일으켜서 애플리케이션을 종료한 후에도 시스템 충돌을 일으킬 수 있다고 한다. 그렇다면 다른 리셋 아키텍처와 그에 따른 타당성을 검토해야 할 시점에 이른 것이다.

WSOD 문제를 해결하기 위한 다른 기법들
모바일 단말기를 복구하기 위한 가장 일반적인 방법은 배터리를 제거하고 하드 리셋을 시키는 것이며, 이 방법이 많은 경우에 좀 과격하게 보이기는 하더라도 이 문제를 해결하기 위한 유일한 선택안이 되어 왔다.
많은 단말기 업체들이 밀봉 인클로저를 채택하거나 심지어는 2개 배터리를 채택함으로써 최종 사용자들이 전원을 완벽하게 사이클링하는 것이 불가능하게 되었다. 이 문제를 해결하기 위해서 일부 업체들은 자사 디자인에 소프트웨어 리셋 기능을 추가해서 최종 사용자들이 특정한 순서 또는 일정 시간 동안 한두 개의 버튼을 눌러서 시스템을 리셋할 수 있도록 하고 있다.
이 방법은 앱을 종료하려고 해도 종료되지 않거나 앞서 실행했던 앱의 흔적이 남아 있거나 또는 계속해서 백그라운드로 실행되고 있는 경우에는 효과적이다. 하지만 서브시스템 결

<저작권자(c)스마트앤컴퍼니. 무단전재-재배포금지>



  • 100자평 쓰기
  • 로그인

TOP