Language/Android

[펌]스마트폰의 어려운 말들..

아르비스 2010. 11. 30. 09:38

루팅은 무엇인가?


루팅(Rooting)이라함은 루트(Root)의 접근권한을 얻는것을 말한다.

루트란 무엇인가!

시스템의 최상위에 위치하는 곳을 루트라 한다.

폴더의 구조는 트리(tree)구조를 이루고 있다 이 트리구조의 최상위에 위치해 있는곳이다.


root ┌ system ┌ app

       │           └ media ─ audio ┌ notifications

       │                                   └ ringtones

       ├ config

       ├ data

       ├ sdcard

       └ lib


위와 같이 나무의 가지와 같은 폴더의 구조를 트리구조라하고 그 최상위에 위치한 곳을 root라 한다.


우리의 스마트폰은 sdcard(내장메모리)아래의 권한만을 부여받았고 그 아래에 존재하는 폴더만을 편집할 수가 있다.

그래서 우리는 루팅을 통해서 상위폴더(root)에 접근해서 작업을 할수가 있는것이다.






루팅을 하면 뭐가 좋은것인가?


루팅을 하면 우선 핸드폰의 모든 권한을 가졌기에 무엇이든지 가능하다.

무엇이든지라는 것은 막막하니

예를 들자면 홈의 테마변경이 가능하고

나에게는 필요없으나 폰에서 기본적으로 실행되어지는 프로그램을 삭제할 수가 있으며

기타 필요한기능들로 재프로그래밍을 할수도 있는것이다.

예를 들어 외장sd패치가 그것이다.






외장패치란?


외장패치란 갤럭시s의 내부메모리의 구조부터 알아야한다.

갤럭시s의 내부메모리는 우리는 16G로 알고 구매하였다.

하지만 이동식디스크를 활성화하여 보면 13.4G임을 알수가 있다.

그럼 나머지 2.6G는 어디로 간것일까 라는 의문을 갖는 분들이 있다.

하지만 13.4G는 14G이며 2.6G가 사라진것이 아닌 2G가 사라진 것이다.

지금은 이해가 되지 않겠지만 밑에 용량에 관한 진실에서 밝히도록하겠다.

그렇다면 2G라는 용량은 어디로 사라진것일까?

2G라는 용량은 시스템에서 사용되어진다

이 용량을 확인하는 방법은

작업관리자에서 상단의 저장공간 탭을 누르면 프로그램설치메모리 라는 곳의 용량이 1.87G(2G)임을 확인할수가 있다.

이곳이 root의 data에 해당된 폴더이며 이 data폴더의 모든 내용들을 외장sd카드의 1.87(2G)의 공간을 빼서 그곳을 활용하는 방법이다.


위 내용을 SHAI님이 작성한 링크로 설명을 돕도록하겠다.

http://people.sarang.net/?document_srl=84819


그럼 왜 외장sd패치를 번거롭게 하는가?

삼성에서는 rfs라는 파티션구조를 사용한다.

rfs의 파티션은 인정받은 안정성을 가졌다.

하지만 인정받은 안정성에도 불구하고 우리의 갤럭시s에서는 제 힘을 발휘를 못한다.

이유는 갤럭시s에 내장되어져있는 메모리 모비랜드메모리와 rfs파티션의 호완성에서 치명적인 문제가 발생한것이다.

rfs파티션이 모비랜드메모리에서는 엄청나게 느리게 활동을 하는것이다.

이것을 개선하고자 외장sd카드를 이용하여 비교적 속도가 빠른 ext4파티션을 만들고 거기에 data의 내용을 올려서 사용하여 체감속도를 상승하고자 하는 것이 외장패치인것이다.


여기서 의문~!

그럼 내장메모리의 rfs를 ext4로 바꾸는 내장패치들을 사용하면되지 않느냐?

그렇다 내장패치들을 이용하여 ext4로 파티션을 바꿔서 사용할 수도 있다.

하지만!!! 여기서 발생할수있는 문제들은 상당하다.

사용자가 ext4로 바뀐 내장메모리의 파티션을 rfs로 다시 원상복구하지 않고 펌의 업그레이드나 다운그레이드를 진행하였을경우!

폰은 rfs를 찾지못하여 먹통이 되어버리는 것이다.

해결방법으로는 이클레어의 버전으로 내려갔다가 다시 프로요를 올리면 해결된다.

이클레어버전에서의 펌의 이동은 rfs를 건들지 않고 이동되었으나 프로요로 오면서 프로요의 펌은 rfs로의 재포멧을 실행하기에 가능하다.

그리하여 내장메모리의 파티션을 바꾸는 것은 상당히 위험할 수 있다는 것이다.

외장패치를 추천하는 이유가 바로 여기에 있는것이다.

언제든지 순정롬이던 커스텀롬이던 간에 정상적으로 올린다면 문제는 없다.






용량에 관한 진실


우리의 갤럭시s는 내장 16기가라고 우리는 구매했다.

하지만 실제로 표시되는 용량은 13.4G(실제로 14G)와 data에서 사용되어지는 용량 1.87G(2G)의 합계인것이다.

그럼 왜 14G인데 13.4G로 표시되느냐......

이것은 하드웨어의 제조자와 실제용량과의 갭이 존재하기 때문이다.

실제용량부터 살펴보도록하겠다.

1비트(bit)는 스위치한개가 들어가있는단위이다. 2진수한자리 숫자를 말한다(0 또는 1)

이 말은 트랜지스터 1개가 작동하는 것을 말하기도 한다.

1바이트(B)는 8비트로 구성되어진다. 2진수 8자리 스위치8개와 같은조합

1킬로바이트(KB)는 1024바이트로 구성되어진다.

1메가바이트(MB)는 1024킬로바이트로 구성되어진다.

1기가바이트(GB)는 1024메가바이트로 구성되어진다.

1테라바이트(TB)는 1024기가바이트로 구성되어진다.

실제로 용량의 단위의 계산방법이 이러하다.


하지만 하드웨어 업체에서는 위 계산 방법을 사용하지 않고 생산상 편의성으로 바이트 단위를 1024가 아닌 1000으로 쪼갠다.

그렇게 계산되어진 메모리나 하드디스크를 장착했을시 1024로 계산되어져 실제용량보다 적은 용량이 표시되는 것이다.

그럼 계산해 보도록하겠다.

14G * 1000 * 1000 = 14,000,000 를 1024로 두번나누면 나오는 값을 보자

14,000,000 / 1024 /1024 = 13.35XXXXX

위와 같이 계산되어지기에 실제용량이 적게 표시되는 이유인 것이다.






공장초기화(공초)란


공초로의 진입방법은 볼륨다운+홈+전원 을 동시에 누르고있으면 진입한다.

진입하고 yes.주저리주저리써있는것 을 클릭하면

세가지의 메뉴가 나타난다.

리부팅

공장초기화

캐쉬초기화


공초에 대해서 많은 분들이 오해(?)하고 있는부분이 많다.

공초에서 이루어 지는 내용들은 시스템프로그램들과 앱들의 데이터를 초기화 하는것이다.

시스템의 데이터들이나 앱의 데이터들이 꼬여있을경우 하면 왠만하면 해결할 수가 있다.

하지만 공초로써 모든것을 해결하려고 하면 안된다.

말그대로 시스템과 앱의 데이터를 초기화 할뿐이기 때문이다.


본인이 시스템의 어떠한 파일을 삭제하였거나 변경을 하였다면 이런 문제는 공장초기화로 해결되지 않는 것이다.

이 문제에 대한 답은 그 파일을 백업을 해두었으면 복구하거나

파일을 못구한다면 자신이 했던 펌을 다시 덮어씌우는 재펌으로 해결을 할 수가 있다.


공장초기화와 같은 효과를 보는것이 환경설정에도 있다.

환경설정 > 개인정보보호 > 기본값 데이터 재설정 이다.


어떠한 앱들이 오류가 발생한다면 그에 해당되어진 앱의 데이터만 삭제를 해서 초기화 해도 효과를 보는 경우가 많다.

그 방법으로는 환경설정 > 응용프로그램 > 응용프로그램관리 > 상단 모두 탭클릭 > 나타나는 앱중 선택

중앙의 데이터지우기 클릭 으로 그 앱만 공초의 효과를 볼수가 있다.

그 앱과 연동되어진 것들이 있다면 그것들도 초기화 해주는것이 좋다.

해당 앱과 연결되어진 앱들이 확실 함에도 데이터지우기를 해서 해결되지 않았다면 공초를 해도 해결될 확률은 없다고보면된다