스마트폰 부팅 속도 1초, 임베디드 리눅스 시스템 초고속 부팅 시스템 제로부트 ZeroBoot :: 2proo Life Story ::

스마트폰 부팅 속도 1초, 임베디드 리눅스 시스템 초고속 부팅 시스템 제로부트 ZeroBoot

2011.10.15 22:43

스마트폰 부팅 속도 3배 빠른 기술, 초고속 부팅 시스템 제로부트 ZeroBoot

한국전자전 KES 2011 에 다녀왔습니다. 한국전자전은 작년에 이어 올해도 삼성과 엘지의 전쟁터였다고 생각됩니다. 각자 내세우는 주력 제품들이 작년과는 다른 양상을 비추긴 했지만 나날이 기술이 발전하고 그 기술들이 적용된 제품들을 눈으로 보고 오니 색다른 세상에 온것 같고, 또 앞으로의 기대도 큽니다. 그 외에도 수많은 중소기업들이 개발한 우수하고 획기적인 기술과 제품 또한 흥미를 끌었는데요. 그중에 가장 눈길을 끌었던 기술을 소개해볼까 합니다.
하지만 본격적으로 소개하기 전에 미리 몇가지 인지하면 도움이 될 이야기가 있습니다.

임베디드리눅스, 임베디드시스템, 안드로이드, 제로부트, Zeroboot, 부팅, 임베디드 리눅스 시스템, KES, Embedded System, Embedded Linux System, FALINUX, FastBoot, Android System, 스냅샷부트, SnapShot Boot, 부팅시간, 스마트폰 부팅시간, 스마트폰 부팅속도, 부팅 시스템, 임베디드, 부팅 솔루션

한국전자전 2011 열린 일산 킨텍스


임베디드 시스템 Embedded System
임베디드(Embedded)라고 하는 단어는 낯설지만 우리가 알게 모르게 적용되어 쓰이는 것들이 아주아주 많습니다.
임베디드는 거의 모든 전자기기에 포함되어있는 산업 기반 기술입니다. 현대인이 살아가는데 없어서는 안될 전자제품들에 모두 포함되어 있는 기술이기도 합니다. 그래서 산업 기반 기술이라 칭하는데 이 분야가 워낙 넓고 관련 기술도 많아 딱 짚어 말하기는 무리네요.

예를 들자면 냉장고 문열면 불켜지는 기능, 온도 조절 기능, 에어컨도 그렇고, 전기밥솥 밥짓는 과정과 보온기능도요. 보일러 작동이나 온수 온도조절, 엘리베이터, 자동차에 포함된 거의 모든 전자기술도 포함됩니다. 자동차분야에서 무선으로 자동차 문 열고 닫는것(원격시동), 충격감지, 네비게이션, 브레이크 조절 이런것들도 임베디드에 포함되고 PMP,PDA, 휴대폰, 스마트폰, 게임기 등등도 다~~ 이 임베디드 기술이 적용된 제품들입니다. 공장에서 쓰이는 산업용 로봇을 포함한 제조공정상의 자동화 기계들도 임베디드 시스템의 대표적인 예구요.
이렇듯이 임베디드 기술은 우리 생활 저변에 깔려있는 중요하고 가치있는 기술입니다. 이와 관련된 기술들을 개발하기 위하여 국가와 많은 연구기관, 기업들이 이쪽에 투자를 많이 하고 있습니다.

임베디드 시스템 부팅 시간 단축
모든 전자기기들은 전기를 공급하면 작동을 시작하는데 짧은 시간이지만 작동하는데 시간이 걸립니다. 예를 들면 컴퓨터도 그렇고 스마트폰도 그렇고 냉장고, 자동차, 산업용 로봇 등 모두 해당됩니다. 전력이 들어오고나서(파워온) 해당 기기가 작동하기까지 1초 내외 혹은 수초가 걸리는데, 일반 가전기기야 그 기능이 단순하고 이미 많은 관련 기술들이 적용되어 그 시간이 아주 짧습니다. 하지만 산업용 제조 공정 기계나 산업용 로봇, 의료장비, 방송용장비, 스마트폰 같은 경우는 그 부팅 시간이 수십초에서 분단위로 넘어가기도 합니다.
이런 전자기기의 부팅시간을 줄이는것 또한 중요한 기술인지라 지금까지 해외에서 개발된 이런 기술들을 비싼 로열티를 제공하여 많이 의지해왔습니다. 그 이유는 부팅시간 단축이 제품의 가치와 경쟁력에 많은 영향을 끼치기 때문입니다. 단적으로 부팅하는데 1분 걸리는 제품과 5분 걸리는 제품은 당연히 비교가 되죠. 예를 들자면 전기공급이 급작스레 중단(셧다운) 되었을때 재가동까지 걸리는 시간이 짧을수록 제품 생산량과 품질에까지 영향을 미치게됩니다. 그래서 국내외를 비롯해 많은 기업과 연구기관들이 이 부팅시간 단축에 많은 노력과 비용을 투자하고 있습니다.

임베디드 리눅스 시스템 Embedded Linux System
왜 임베디드에 리눅스(Linux) 시스템이냐? 많은 운영시스템들이 있지만 범용 리눅스가 임베디드 분야에서 각광받는 이유는 여러가지가 있습니다. 리눅스 시스템의 유연성, 안정성, 다양한 하드웨어 지원, 그리고 무엇보다 오픈소스로 성능도 성능이지만 시스템 최적화에 가장 걸맞는 운영체제 이기때문에 임베디드 분야에서 다양하게 쓰이고 있습니다.

게다가 예전처럼 전기밥솥이나 냉장고처럼 단순한 기능만을 수행하는 펌웨어 수준의 임베디드 시스템이 아니라 현재의 스마트 디바이스들은 다양한 기능을 수행하는 임베디드 시스템이 요구됩니다. 임베디드 시스템은 다양한 기능을 제공하기 위해서 네트워킹, 멀티프로세싱 등의 기능이 제공되는 범용 운영체제 수준의 성능을 가진 운영체제가 필요합니다. 그중에 리눅스 임베디드가 가장 각광을 받고 있지요.
이 임베디드 리눅스 시스템을 전자기기에 탑재하기 위해서 많은 기술이 적용되고 있는데 그중 저전력 및 부팅시간 단축이 큰 관건입니다. 그 중에서 역시나 가장 관심받는것이 바로 부팅시간이 아닐까 생각해봅니다. 리눅스 임베디드 시스템의 부팅 시간에 영향을 미치는 부트로더 Bootloader, 커널 Kernel, 루트 파일시스템 Root File System 등의 각 구성요소를 최적화함으로써 부팅 시간을 단축시키는데, 이번 한국전자전에서 깜짝 놀랄만한 기술을 보게 되었습니다.

임베디드리눅스, 임베디드시스템, 안드로이드, 제로부트, Zeroboot, 부팅, 임베디드 리눅스 시스템, KES, Embedded System, Embedded Linux System, FALINUX, FastBoot, Android System, 스냅샷부트, SnapShot Boot, 부팅시간, 스마트폰 부팅시간, 스마트폰 부팅속도, 부팅 시스템, 임베디드, 부팅 솔루션

한국전자전 FALINUX Embedded Linux 부스


한국전자전의 FALinux 에프에이리눅스 임베디드 하드웨어/소프트웨어 부스입니다.
사람들이 웅성웅성 서있길레 재미난거 있나보다~ 이벤트 하나보다~ 라는 생각으로 다가갔는데 정말 흥미로운 장면을 목격하게 되었습니다.

제로부트(ZeroBoot)라는 솔루션으로 임베디드 리눅스 시스템에서 부팅 즉시 응용프로그램을 동작시키는 부팅 솔루션입니다만 그 속도가 눈 깜짝할 사이에 이루어지더군요.전원 인가(파워온) 즉시 임베디드 리눅스 프로그램을 동작시키는데 세계 최고의 속도라고 합니다. 게다가 속도만 빠른게 아니라 일반적인 부팅과 같은 상태의 부팅으로 안정적 시스템 동작을 보장한다고 합니다. 속도와 안정성 모두를 보장한다는 제로부트 시스템.

아래는 실제 GPIO 부팅 테스트로 전원 입력후 걸리는 시간을 테스트한 시간입니다.
제로부트 0.147초 VS 기존 부팅 시스템 11.952초로 압도적인 시간차를 보입니다.
GPIO(General Purpose Input/Output)는 시스템이 어떤 특정한 상황이 되면 특정한 동작을 하게끔 해주는데 범용 입출력 시스템이라고 부릅니다. 아래 테스트에서는 GPIO 부팅이 완료되면 LED 점등이 되도록 설정해놓았습니다. 정말 엄청 빠른 시간안에 부팅이 완료되다니.... 깜놀...
임베디드리눅스, 임베디드시스템, 안드로이드, 제로부트, Zeroboot, 부팅, 임베디드 리눅스 시스템, KES, Embedded System, Embedded Linux System, FALINUX, FastBoot, Android System, 스냅샷부트, SnapShot Boot, 부팅시간, 스마트폰 부팅시간, 스마트폰 부팅속도, 부팅 시스템, 임베디드, 부팅 솔루션

GPIO Booting System - Zeroboot Fastest System boot solution


아래 사진은 FA리눅스의 제로부트 Zeroboot 테스트 보드인데 GUI 반응테스트 장면입니다.
부팅완료 후 화면에 이미지를 띄우는 작업을 시연한 결과 제로부트 0.221초 기존 부팅시스템 13.897초.
이것또한 단연 놀라운 속도네요.
임베디드리눅스, 임베디드시스템, 안드로이드, 제로부트, Zeroboot, 부팅, 임베디드 리눅스 시스템, KES, Embedded System, Embedded Linux System, FALINUX, FastBoot, Android System, 스냅샷부트, SnapShot Boot, 부팅시간, 스마트폰 부팅시간, 스마트폰 부팅속도, 부팅 시스템, 임베디드, 부팅 솔루션

FALINUX GUI Test - zeroboot



위 GUI 반응 테스트 속도에 관한 동영상이 있으니 한번 직접 눈으로 보세요. 사진 가지고는 안됩니다.


정말 엄청 빠른 속도를 자랑하는 임베디드 리눅스 기반 Fast Booting 기술 입니다. ㅎㄷㄷㄷ

GPIO 테스트나 GUI 테스트 외에 좀 더 놀라운게 있는데 바로 안드로이트 시스템(Android System) 부팅 시스템 시연
아래 동영상 한번 보세요. 이럴때 캠코더 없는게 너무 불편합니다. ㅠㅠ 직접 찍었으면 좋았을걸..

같은 안드로이드 플랫폼, 같은 하드웨어, 하지만 다른 부팅 시스템 적용으로 속도가 이렇게 차이 납니다.
위 안드로이드 플랫폼 부팅 속도 테스트에서 제로부트 임베디드 리눅스 시스템이 적용된 기기는 0.75초 그렇지 않은 기기는 40초가 넘는 부팅속도를 보여주고 있습니다. 같은 하드웨어라도 소프트웨어가 바뀌면 차이가 있겠지만 이정도의 시간차가 날줄은 몰랐네요.

FALinux에서 이 부팅 솔루션을 제로부트(ZeroBoot) 라고 이름 지은것은 부팅시간을 0초에 가깝게 구현해냈다고 하여 제로부트라는 이름을 지었다고 합니다. 해외의 임베디드 리눅스 시스템 개발 회사들도 이정도의 부팅 시간 단축은 아직 안되었다고 하며 세계 최고의 속도를 자랑한다고 합니다. 말그대로 초고속 부팅 솔루션이네요.

아래 사진은 제로부트 개요도 입니다. 부팅 단계에서 영향을 미치는 부트로더, 커널 그리고 루트 파일시스템의 각 구성요소를 최적화해 부팅시간을 절감시키는 구조입니다.

Software Suspend Process - FALINUX Zeroboot Linux Embedded System

 
임베디드 리눅스 시스템(Embedded Linux Systems)의 부트 시스템은 스크립트 방식과 스냅샷 방식으로 나뉩니다.

스크립트 방식은 기존의 임베디드 리눅스 기반 부팅 체제를 유지하면서 부팅 절차와 파일스템을 최적화해, 부팅 시간을 단축시키는 방식입니다. 하지만 제로부트가 적용한 방식은 스냅샷 방식으로 시스템이 꺼지기 직전 상태를 사진을 찍듯 저장(Snapshot Image)한 뒤 부팅할 때 저장한 상태를 복구하는 방식으로 하드웨어 초기화 등 여러 단계를 생략하는 방법입니다.


스냅샷 부트 (Snapshot boot) 기법은 현재 수행중인 프로세스들을 정지시키고 프로세스, 각종 메모리 자료, 레지스터 값을 보조기억장치에 스냅샷, 이미지처럼 저장해두고 다음 부팅할때 저장되어 있는 스냅샷 이미지를 불러들여 이전의 레지스터값과 메모리 자료를 똑같이 복원하는 기술입니다. 이 스냅샷부트 기술은 별다른 커널 초기화 없이 부팅이 이루어고, 하드웨어 초기화를 생략해 부팅시간을 획기적으로 단축시킬 수 있는 기술입니다.

스냅샷 부트의 장점은 부팅 시간 단축뿐만 아니라 이미 작업중인 어플리케이션(응용프로그램)의 스냅샷 이미지까지 같이 저장시켰다가 부팅시에 다시 복원시킴으로써 부팅 시간에 가장 많은 시간을 잡아먹던 응용프로그램의 시작 시간을 줄여 전체 부팅시간을 줄여줍니다.

아래 사진은 제로부트의 시스템 스냅 샷 과정과 복구과정을 도식화한 이미지인데 그림으로 보기에도 좀 복잡하지요.
임베디드리눅스, 임베디드시스템, 안드로이드, 제로부트, Zeroboot, 부팅, 임베디드 리눅스 시스템, KES, Embedded System, Embedded Linux System, FALINUX, FastBoot, Android System, 스냅샷부트, SnapShot Boot, 부팅시간, 스마트폰 부팅시간, 스마트폰 부팅속도, 부팅 시스템, 임베디드, 부팅 솔루션

Zeroboot Snapshot Image Booting Process


제로부트에 적용된 스냅샷 부트 기술은 위 도식에서 보다시피 스냅샷 이미지를 만들고 저장하고 복원하는 과정이 전적으로 하드웨어에 많이 의존하게되어 스크립트 부트 방식보다 개발하기가 어려웠다고 합니다. 하지만 이번 제로부트 기술 개발을 통해 해외의 배째라식 로열티 장사를 해오던 임베디드 리눅스 시스템 부팅 솔루션보다 훨씬 빠른 0초대의 부팅 솔루션을 개발하게되어 그 의미가 남다르네요.

이 제로부트 부팅 솔루션은 ETRI 와 몇년동안이나 공동 개발했다고 합니다.
이 기술이 앞으로 국내외의 안드로이드 기반 플랫폼 혹은 임베디드 리눅스 시스템 분야에서 얼마나 획기적인 기여를 하게 될지 기대가 큽니다. 안드로이드 스마트폰을 부팅시키는데 딱 1초 걸린다고 생각하면 어우~ 상상만 해도 기분이 좋아집니다. 전원버튼을 누르자마자 켜지는 속도지요. 앞으로 안드로이드 스마트폰과 태블릿PC를 비롯한 스마트 디바이스에 이런 기술이 적용된다니...

이뿐만 아니라 온갖 IT 기기나 산업용 로봇과 제어 시스템, 측정기기를 비롯한 모든 ARM 프로세서에 적용이 되면 산업저변에 큰 가치를 창출할 수 있겠네요.

FALINUX 홈페이지 : http://falinux.com/

다만, 한국전자전에서 본 FALinux의 ZeroBoot 제로부트 부팅 솔루션을 보고 있자니 한가지 걱정이 되는 마음도 있습니다.
이런 초고속 부팅 솔루션은 해외는 물론이고 국내 대기업에서도 탐을 낼만한 기술입니다. 중소기업에서 이런 획기적인 기술을 개발해냈는데 혹여나 대기업에서 꿀~꺽 해버리지는 않을런지 노파심이 드네요. 그런 일은 없겠지요?

신고
이 장소를 Daum지도에서 확인해보세요.
경기도 고양시 일산서구 대화동 | 킨텍스
도움말 Daum 지도

IT Computer Utility , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,



  1. 역시 프로는 다릅니다.
    전 삼성 엘지 부스만 구경하고 왔는데 말이에요 ㅎㅎ;;

  2. 어거 2011년도 기사인데 왜 아직도 스마트폰 부팅이 1분씩이나 걸리는거여 대체

  3. 이거 보면서 너무 너무 신기했는데,
    이프루님이 임베디드 리눅스가 무엇인지 자세히 설명해주시니
    쪼금은 이해할 수도 있을 것 같아요... +_+
    다시봐도 정말 신기하네요.. 어떻게 안드로이드 부팅이 1초도 안 걸릴 수 있는지... +_+

  4. 리눅스를 사용하는 서버가 있기는 한데....오늘 좀 더 배우고 가네요

  5. 잘 모르는 분야라서 어렵지만
    설명을 들으니 얼추 알꺼같긴해요 ㅎㅎㅎ
    부팅 속도가 음 ~ ~~ 청 빠르다는게 요군요 !

  6. 속도 차이 현저하네요.

  7. Blog Icon
    엥?

    이번 윈도우8에 적용된 기술과 동일한거 아닌가요??

  8. Blog Icon
    anonymous

    image 생성후 app에서 변경된 사항은 어떻게 처리하나요?
    shutdown시 매번 snapshot를 떠야 하는건가요? (TuxOnIce)