안드로이드 강좌

안드로이드 입문을 위한 기본용어 설명

T.B 2013. 12. 7. 16:23


근 4년간 트위터와 블로그를 연동하여 소통해오면서 느낀점은, 이것저것 '해보고' 가끔은 좀 '당해도 보면서' 선천적으로 꾹꾹 눌러보기만 해도 기기를 잘 다루는 분들도 계시는가 하면, 그렇지 않은 분들(non-technical users)이 대다수라는 것입니다. '아니, 그 쉬운걸 왜 못해?' 라고 생각할 지도 모르겠습니다만 비유를 들어 거꾸로 반문해보자면 '남자라면 스쿼트, 데드리프트 200kg는 쳐줘야죠. 그정도는 해야하는 것 아닌가요?' ← 느낌 알겠죠? 모든 사람들이 200kg를 들 수 없듯이 모든 사람들이 기기를 잘 다루지는 못합니다.


처음 부터 200kg를 들 수는 없겠으나 운동하다보면 점점 체력이 늘고 중량이 올라가듯이, 처음 부터 기기를 잘 다룰 수는 없겠으나 자꾸 관심을 갖고 배우다 보면 점점 능숙해지고 내공이 쌓이는 것입니다. 좀 딴소리이기는 하나 아무래도 트친님들과 블로그 구독자분들 중 아직 학생들도 있으니 같은 논리로 추가 비유를 하자면 공부도 마찬가지 라죠.


외국어를 배우고 점수를 올리는 가장 빠른 방법은 일단 '단어' 부터 외우고 시작하는 겁니다. 공부 해본 분들께서는 아시겠습니다만 3만3천이 진짜 3만3천이 아니라 표제어는 2400~2700(GRE에서는 좀 더 올라가죠.) 정도니 단순 계산만으로 하루 100개씩만 외워도 한달 안에 복습까지 끝납니다. 그럼 단어 까먹지 않냐구요? '인간은 망각의 동물'이기에 까먹기 마련인데 이걸 까먹지 않기 위해서 해외 원문 기사 등의 지문을 통해서 뇌의 단기기억을 장기기억으로 전환시킵니다. 이게 '공부의 원리'겠고 기기로 치자면 '내공 혹은 익숙함'이라 불리는 것이겠지요.


iOS를 사용중인 트친님들과 블로그 구독자분들께서는 iOS에 관해서 만큼은 이미 어느 정도 내공 혹은 익숙함이 쌓였을 것이고 이번 포스팅에서는 안드로이드OS를 처음 접하는 분들을 위해서 그 내공 혹은 익숙함을 위한 기본 용어(단어)를 정리해보도록 하겠습니다.


#1. 루팅(rooting)


루팅(rooting)이란 iOS에 빗대어 설명하자면 애플이 제한해 둔 틀(Jail)을 깨부수는(break) 행위라면 적절할까요? iOS에서 기기권한을 획득하듯이 구글이 제한해둔 틀을 넘어서 관리자 권한(Super User)을 얻는 행위를 말합니다. 리눅스 관리자 권한을 얻는 행위를 지칭하는 용어에서 유례됐으며, 안드로이드가 리눅스 계열이듯이 리눅스에서도 최고 권한을 루트(root)라고 부릅니다.


. [루팅]넥서스5 부트로드 언락과 루팅방법(참고)


iOS의 탈옥(Jailbreak) 행위가 불법이 아니듯이 북미에서 루팅(rooting) 행위 자체만으로는 불법이 아닙니다. iOS를 탈옥하면 리퍼 등에서 제약을 받듯이 비정상적인 단말구동(소비자가 돈 주고 구매한 기기 사용 권한은 소비자에게 있거늘 이걸 왜 비정상적인 단말구동이라 부르는지 '불만' 입니다.)시 AS 등에서 불이익을 받을 수 있습니다. 따라서 탈옥 후 AS를 받기 위해서는 DFU복원이 필요하듯이 루팅 후 AS를 받기 위해서는 순정롬으로 공장도 초기화를 해야만 합니다.


iOS 보다 제약이 상대적으로 적은 안드로이드OS지만 안드로이드OS 역시 구글의 '통제'를 받고 있습니다. 글이 길어지니 이 부분은 Ars Technica "Google’s iron grip on Android: Controlling open source by any means necessary - 안드로이드에 대한 구글의 강철의 통제: 어떤 방법으로든 오픈 소스를 통제하기 전문 번역글(http://blog.kudokun.me/6688)로 대체합니다.


일반 사용자(non-technical users)들이 알아듣기 쉽게 몇가지 예를 들자면 루팅을 통해서 안드로이드OS에서 불가한 글꼴 변경, 상단바 변경, 광고 차단, 설치 앱 및 시스템 설정 백업, 카메라 무음 설정, 불필요한 이통사 제조사 앱 제거 등이 가능해집니다.


#2. 커스텀 롬(Custom Rom)


우선 롬(Rom) 부터 알아야하는데 롬이란 쉽게 비유를 들자면 iOS에서 펌웨어(.ipsw)를 말합니다. 커스텀 롬(Custom Rom)도 비유를 들자면 iOS 탈옥 툴 중 Sn0wbreeze가 대표적이죠. redsn0w나 evasi0n 등 처럼 기기에 설치된 OS를 해킹하는 것이 아니라 아예 해킹된 펌웨어를 설치하는 방식입니다.


커스텀 롬이란 사용자들이 xda 등의 포럼에 모여서 속도향상 혹은 편리함을 목적으로 불필요한 기능을 줄여 OS 구동속도를 향상시킨다던가 때로는 필요한 기능을 추가하기도 합니다. iOS 사용자들을 위해서 더 쉽게 설명하자면 Sn0wbreeze의 장점으로 탈옥된 펌웨어에 미리 사용자가 원하는 트윅이나 테마를 추가하여 아예 새로운 커스텀 펌웨어를 만들고 문제가 발생하면 해당 펌웨어로의 복원이 가능한데, 이처럼 커스텀펌웨어에서는 볼륨키나 전원버튼에 기능을 추가한다던지 소프트키 갯수를 늘린다던지 색깔이나 모양을 바꾼다던지 등이 가능해집니다.


한국에서도 유명한 커스텀 롬이 있었는데, 모토로라의 '모토로이'를 지원하던 '규혁롬'이 있었습니다. 당시 고교생으로 큰 화제를 불러일으켰으나 이후 다른 안드로이드 기기 사용자들의 '답이 없는 무대포식 요구'와 자신들의 요구가 관철되지 않자 '온갖 욕설과 악플'에 시달려 커스텀 롬 개발을 중단했다죠. 유명 커스텀롬으로는 얼마전 구글플레이에서 Installer가 퇴출된 CM(Cyanogen Mod)이 있습니다.


#3. 부트로더 언락(boot loader unlock)


커스텀 롬을 사용하기 위해서는 루팅이 필요 없습니다. 루팅은 '관리자 권한을 획득하는 행위'로 구글이 제한해둔 것들이 가능하게 해주는 것이고 커스텀 롬 사용을 위해서는 부트로더 언락만 하면 됩니다. 실제로 부트로더 언락으로 커스텀 롬까지만 사용하는 분들이 상당하죠. 그럼 부트로더(boot loader)가 뭔지를 알아야겠는데


부트로더란 OS 시동 전 미리 실행되어 커널(Kernel)이 올바르게 실행되기 위한 관련 작업을 마무리 후 최종적으로 OS를 시동시키기 위한 목적을 가진 '프로그램'을 말합니다. 따라서 이 부트로더를 언락해야만 커스텀 롬 사용이 가능해지는 것이고 루팅과는 무관합니다.


#4. 커널(Kernel)


그럼 이제 또 커널(Kernel)을 알아야겠는데 어차피 안드로이드OS도 리눅스 기반이니 PC를 잘 다룰줄 아는 분들이라면 그냥 '그 커널'이라고 생각하시면 되겠습니다. OS의 중심으로 기본적인 것들을 담당하며 대표적인 커널로는 에어커널, 트리니티 커널 등이 있습니다. 초보자를 위해 압축해서 쉽게 설명을 하자면 '하드웨어와 설치된 어플리케이션'간의 매개를 담당하는 '프로그램' 입니다. 쿼드코어 기기를 예로 들자면 문자앱을 실행시켰을 때 4개의 CPU가 모두 돌아갈 필요는 없겠죠. 따라서 안드로이드의 커널은 문자앱 실행에 필요한 CPU 갯수와 속도를 조절하여 기기를 구동합니다. 반면, 3D 게임을 구동한다면 빠르고 많은 연산처리가 필요하므로 CPU가 모두 돌아가야겠죠. 따라서 안드로이드의 커널은 빠르고 많은 연산처리를 위한 CPU 갯수와 속도를 조절해줍니다. 왜 이런식으로 구동되냐고 굳이 물으신다면 불필요한 CPU 구동은 소비전력과 과열(발열)에 관한 문제를 갖기 때문입니다.


#5. 리커버리(Recovery)


단어 뜻 그대로 말하자면 '회복, 복구' 정도 되겠고, OS 구동 등의 문제 발생시에 대비를 한 복구 공간(장소)을 의미합니다. CWM 등의 커스텀 리커버리를 설치해 두면 복구 뿐만 아니라 롬-업 혹은 캐쉬 와이프(wipe) 등의 다양한 기능을 사용할 수 있겠습니다.


#6. OTA(Over The Air)


OS 시스템 업데이트를 로컬로 하지 않고 네트워크를 통해서 스마트폰 자체 내에서 수행하는 것을 말합니다. 구글에서는 따로 안드로이드 순정 롬을 제공하기도 하지만 기본적으로 레퍼런스 스마트폰에 대해서 OTA 방식의 업데이트를 채택중입니다.


#7. etc.



. 3초안에 확인하는 넥서스5의 변천사(참고)

. 이전에 출시된 구글 모바일 프로젝트 기기 코드명(참고)

. 구글 안드로이드 OS 이름의 유례(참고)

. 넥서스5 에 열광하는 이유(참고)


여기까지가 안드로이드 입문을 위한 기본 용어설명이 되겠습니다. 안드로이드OS는 그래요. 국내 제조업체에서 제품을 생산하고 판매중인지라 더 친숙해서인지 한국에서 안드로이드의 점유율이 90%라죠. 그만큼 많은 사람들이 안드로이드를 쓴다는 얘기인데, 이건 어디까지나 안드로이드OS의 우수성이라기 보다 마케팅적인 측면이 큰 이유중 하나로 작용했을 것입니다.


특히 답답할 때가 삭제도 할 수 없는 '이통사, 제조사 앱 70개씩 덕지덕지 깔아놓고 개방성'을 운운할 때입니다. 아무렴 iOS만 하겠고 '루팅 후 삭제하면 된다.'라고 하실 수도 있겠는데, 과연 대다수의 일반 사용자(non-technical)들이 부트로더 언락으로 커롬을 올린다던지 플래싱을 한다던지 루팅을 하고 불필요한 앱을 삭제할까?에 관해서는 회의적입니다.


오늘 트친님 한분의 직장동료가 문자로 보내준 앱 하나 잘못 설치했다가 '1천8백만원'이 나갔다더군요. '누가 보낸지도 모르는 문자를 왜 설치하냐? 이해가 가지 않는다!' 네, 그렇습니다만 적어도 아이폰을 사용중이었다면 그런 고민 할 필요도 없고 그만큼 일반 사용자(non-technical users)들이 많다는 얘기겠죠. 혹시 '그거 루팅해서 그런것 아니냐?' 라는 분들께서는 일단 안드로이드에서 금융앱 사용 자체가 자폭인 이유 부터 확인하시면 되겠습니다.(참고)


'사용자 자체가 가장 큰 보안 구멍'이다. 라는 말이 있습니다. 단언컨데 안드로이드OS는 IT에 대해서 관심이 많고 기기를 잘 다루는 사람에게 적합한 것이지, 스마트폰에 대해서 잘 모르고 기기를 잘 다룰줄 모르는 사람들에게 적합하지 않습니다.


학부시절 교양 과목으로 수강했던 철학과 교수님께서 했던 말 중 인상 깊어 아직도 기억나는 것이 '철학이 어렵게 느껴지는 이유는, 철학하는 사람들이 어려운 용어를 쓰기 때문이다.'라는 것입니다. 그리고 여기에 부가 설명도 했는데요. '지가 그것이 뭔지를 모르니까 철학 용어를 남발해가면서 어렵게 설명하는 것이지 정확하게 안다면 철학에 대해서 모르는 사람들(일반인)에게 쉽게 설명하고 이해시킬 수 있어야 한다.' 였습니다.


최대한 쉽게 설명하려고 예까지 들어가면서 문어체(가 글쓰기 쉽죠.)가 아닌 경어체로 길게 글을 남겼는데 어째 전달이 잘 됐는지는 모르겠습니다.


 T.B의 SNS 이야기 블로그의 모든 글은 저작권법의 보호를 받습니다. 어떠한 상업적인 이용도 허가하지 않으며, 이용(불펌)허락을 하지 않습니다.

▲ 사전협의 없이 본 콘텐츠(기사, 이미지)의 무단 도용, 전재 및 복제, 배포를 금합니다. 이를 어길 시 민, 형사상 책임을 질 수 있습니다.

▲ 비영리 SNS(트위터, 페이스북 등), 온라인 커뮤니티, 카페 게시판에서는 자유롭게 공유 가능합니다.


T.B의 SNS이야기 소식은 T.B를 팔로윙(@ph_TB) 하시면 실시간으로 트위터를 통해서 제공 받을 수 있습니다.

728x90
반응형