벼리
10.12.11
조회 수 31681
추천 수 2
댓글 11

1. Garbage Collection이 뭔가요?


파일을 읽고 쓰다보면 작은 조각같은 빈 공간(Garbage)들이 발생하게되고, 이러한 곳에는 파일을 읽고 쓸수 없기 때문에 파일시스템에서는 이를 모아서 하나의 영역처럼 재구성하여 쓸수 있는 공간으로 만들어줍니다.


대부분의 파일시스템들은 파일을 읽고 쓰면서 이러한 가비지들이 발생할 경우 바로 바로 처리해주지만, 닐프스2의 경우는 조금 특이합니다. 사용할수 있는 공간에만 파일을 읽고 쓰다가 설정값(nilfs_cleaneerd.conf)이 되어서야 비로서 가비지 콜렉션을 수행합니다.


--> 즉 평소에 GC를 하지 않기 때문에 그만큼 타 파일시스템보다 빠르지만 나중에 이를 모아서 하기때문에 불편함이 발생하는 것이며, 이를 안하는 방법은 없습니다.



2. 닐프스2의 장점과 단점


닐프스2의 장점은 앞에서 말씀드린데로 평소에 GC를 하지 않기 때문에 파일의 읽고 쓰기 속도가 빨라서 어플들을 실행할때 굉장히 부드럽게 실행이됩니다. 한마디로 속도가 빠릅니다.


단점으로는 큰 용량의 데이터를 읽고 쓸 경우 가비지가 급속도로 차오르게되며, 자주 이를 처리해주어야 하기 때문에 굉장히 불편하며 신경이 쓰이게 됩니다.


--> 어플 설치 용량이 전체 설치 가능 용량의 50%( 900MB)를 넘어가시는 분이나 무거운 게임을 자주 하시는 분께는 추천드리지 않습니다.



3. 내외장 닐프스2를 추천하는 이유


1) /data 영역의 분산으로 병목현상이 완화되어 어플 구동시 끊김이 줄어들고 이로 인해 닐프스2의 장점이 극대화 됩니다. 저는 트래센드 class6 8GB를 사용중인데 /data/data, /data/dalvik-cache 이 두부분을 외장패치한 후 확실히 체감속도가 좋아져서 그 뒤로 계속 닐프스2만 사용중입니다.


(외장 SD카드의 뽑기에 따라 성능이 좌우될수 있는 부분이라서, 반드시 라고는 말씀을 못드립니다만 일반적으로는 더 빨라집니다.)


2) 외장닐프스2를 할 경우 GC가 쌓일수 있는 공간이 2배가 되기 때문에 하루에 GC 2번 수행했어야 되는 분이라면 하루에 한번으로도 충분해져서 GC에 대한 억압에서 좀 더 자유로워집니다.



4. 닐프스2GC 어플은 꼭 써야하나요?


닐프스2로 패치를 하시게되면 항상 nilfs_cleanerd라는 녀석이 nilfs_cleanerd.conf라는 설정 파일을 바탕으로 떠있습니다. 이놈이 바로 가비지가 얼마나 쌓였는지 체크하다가 설정한 값에 도달하게 되면 처리하는 역할을 합니다.


하지만 대다수의 사용자는 nilfs_cleanerd가 제대로 떠있는지 , 현재 가비지가 얼마나 쌓였는지, 가비지 처리가 제대로 이루어지고 있는지 확인할수 없기 때문에 불안할수 밖에 없습니다.


--> 결론 : 닐프스2GC 어플은 GC의 동작을 가시권에 들어오게 함으로써 이러한 불안감을 해소시키고 언제 작동할지 모르는 GC를 강제 수행 또는 정해진 시간에 돌아가는 기능을 제공함으로써 실제 갤s 사용중에는 GC가 일어나지 않게 합니다.


닐프스2GC 어플을 설치하지 않는다고 해서 gc가 일어나지 않는게 아닙니다. 닐프스2파일시스템이 깨진 상황이 아니라면 GC는 필요한 때가 되면 자동으로 동작합니다.




5. 심링크 패치, 바인딩 패치, 바인딩 동기화란?



심링크 외장 패치라 함은 /data의 디렉토리의 일부를(/data/data, /data/app, /data/dalvik-cache ) 외장디스크의 2번째 파티션으로 옮긴 후 이를 Symbolic Link를 사용하여 마치 내장 /data 안에 여전히 존재하는것처럼 속이는 방법입니다.



, 실제로는 외장 디스크에서 데이터를 읽고 쓰지만, 내장 디스크에 있는것처럼 보이므로 어플들 실행이 정상적으로 되는것이죠.



이 방법의 단점은 갑작스럽게 외장 디스크가 제거될 경우 링크가 깨지게 되므로, 부팅시 실행중인 어플들이 모두 강종되어버리거나 부팅이 되질 않게 됩니다. --> 공장 초기화의 길을 걷게 되죠



장점은 단순히 심볼릭 링크만 걸어놓은것이기 때문에 복구시에 링크를 해제하고 데이터만 다시 복사해주면 쉽게 복구가 가능하다는 것입니다.




바인딩 패치는 내장 디스크의 /data 디렉토리의 일부를 외장 디스크에 마운트 시켜 버리는 것을 말합니다.



이 방법의 장점은 심볼릭 링크처럼 내장 디스크의 데이터들을 옮길 필요가 없으므로 sd 카드가 제거 되어도 패치할 당시의 데이터를 가지고 부팅이 되며 (그 후로 변경된 데이터는 날라갑니다), 단순 링크가 아니라 마운트 방식이므로 구동시 좀 더 안정적입니다. 이것이 반드시 속도가 빨라짐을 의미하지는 않지만 대부분의 사용자들이 바인딩 방식이 더 빠르다고들 하더군요



바인딩 동기화는 자유게시판에서 시유님 ( http://matcl.com/s/freeboard/400040 리플 중 소히님 리플도 참조)


이 잘 설명해주신데로 일종의 백업 개념으로 보시면 되구요. 바인딩 동기화를 할 경우 최소한 바인딩 동기화를 실시한 시점의 데이터까지는 불의의 사고가 발생하더라도 복구가 됩니다.

해제시에는 바인딩 동기화의 코드가 그대로 들어가있어서 자동으로 동기화되는 것이 맞습니다만, 돌핀 브라우저같이 저희가 예상치 못한 몇명의 경우가 있을수는 있습니다 ^^;;


바인딩 동기화는 불의의 사고를 대비한 백업 기능이므로 패치할때 동기화를 해주실 필요는 없습니다.



6. 이론적으로 GC에 관한 여유공간이 늘어날수록 더 시스템에 여유가 생기리라 생각하는데, 현재 원펀치에서 파티션을 나눌때 최대 공간의 제한을 해제하는 것이 좋지 않을까요?


저희도 같은 생각을 하고 테스트를 해보았습니다만 /data 영역으로 마운트가 되면 아무리 용량을 크게 확보하여도 1.8 기가 정도로만 마운트되어 버립니다.
즉 나머지는 사용할수 없는 공간이 되는것이죠
.
흔히 오해하시는게 프로요 되면서 외장 디스크를 다 이용하여 어플을 설치할수 있다는 말을 혼동하시는데요
.
그건 외장 sd카드의 윈도우 파티션을 이용해서 하는것이고, 외장 패치는 리눅스 파일시스템으로 포맷한 두번째 파티션을 이용하는거라서 다릅니다. 마운트니 파일시스템이니 말이 어려운데요.



-->
결론 : 프로요든 이클레어든간에 최대치로 잡아놓은 1996MB(실제 보이는 공간은 1911MB)까지 밖에 못쓰시므로 그 이상 공간을 잡는것은 의미가 없습니다.

댓글 11
댓글 쓰기 권한이 없습니다.
List of Articles
제목 글쓴이 추천 조회 날짜
배포 갤럭시 튜너 pre 1.2 (U,K지원및 LCD 기능보강) 자양 54 14045 2011.01.11
배포 Galaxy Tuner 업데이트(ver1.1. 사운드 기능보강) 5 file 자양 21 8431 2011.01.08
배포 sl28용 자양펌 릴리즈 자양 16 7528 2011.01.06
배포 sl28 단순 루팅용 커널 5 file 자양 31 9181 2011.01.06
배포 고자 커널 (동영상 재생/녹화, 사진 촬영 불가) 30 file HTC_Kovsky 11 10067 2011.01.15
배포 [겔U 용 1월 29일 ] 겔U용 이카루스패치 N2 82 file 이카루스 46 19491 2011.01.13
배포 오버클럭 커널 버그 수정해서 재업... 43 file HTC_Kovsky 11 8723 2011.01.13
배포 1.2 + ( 1.3 / 1.35 / 1.4 ) Ghz OC커널 62 file HTC_Kovsky 21 10633 2011.01.10
배포 !!!! 2.0GHZ 커널 59 file Raven 17 15190 2011.01.10
배포 SL28 용 voodoo lagfix initramfs 초기버전 212 file Liliniser 60 42301 2011.01.10
배포 sl 28 지원 oc 1.2 커널 배포 75 file Raven 25 24249 2011.01.07
배포 스크린락 통신사 문구 변경[ 한글, 색상 가능 ] 87 file 떡  53 38495 2011.01.02
배포 [필독 ] 테그라크 원낸드 + 핵펀치 사용하실분들 85 벼리 18 87084 2010.12.20
배포 핵펀치 업뎃 예정 사항 24 벼리 2 28132 2010.12.18
배포 [ 떡방앗간 참고자료 ] 11 벼리 2 31681 2010.12.11
배포 [ 핵펀치 ] 273 벼리 28 98953 2010.12.11
배포 Voodoo-5-shw-m110s-sk22-rc1 1353 Liliniser 37 287253 2010.12.02
배포 [ Kied 백업 / 복구 ] 68 떡  22 59556 2010.11.26
배포 [ 부두패치 유틸리티 ] 167 떡  12 82905 2010.11.26
배포 [필독] 제 어플을 사용하기 전에... 19 떡  22 72267 2010.11.18
배포 [ Nilfs2 GC ] 19 떡  4 32795 2010.11.17
배포 [갤럭시S] SHW-M110S 프로요 SK05 커스텀롬 (deodex,zipalign) [링크수정] 160 Liliniser 9 72020 2010.11.17
배포 [SK05 + XWJPA] 부두(Voodoo)-FroYo-pre6 Beta 배포! 1015 Liliniser 27 572344 2010.11.16
배포 커스텀롬 / DI03 / deodexed / zipaligned / rooted / v1.0 / 순정 복구 파일 추가 19 Liliniser 4 48915 2010.09.17
배포 [re] [이클레어] Voodoo lagfix-only 3.0 for M110S 1 즈느 2 2962 2013.05.15
배포 [이클레어] Voodoo lagfix-only 3.0 for M110S 37 Liliniser 4 122999 2010.09.19
배포 갤럭시 알파 LG (SM-G850L) 5.0.2 PA3 경량화 스크립트 1 file galaxygrand 1 248 2016.06.05
배포 갤럭시 알파 SK (SM-G850S) 5.0.2 PA4 경량화 스크립트 9 file galaxygrand 2 290 2016.06.05
배포 갤럭시 알파 KT (SM-G850K) 5.0.2 PA4 경량화 스크립트 1 file galaxygrand 1 319 2016.06.05
배포 갤럭시 A5 LG (SM-A500L) 5.0.2 PC3 경량화 스크립트 8 file galaxygrand 2 699 2016.06.05
1 - 54 56