아이폰 3Gs는 때에 따라 수동으로 프로세스킬이 필요하다.

iOS(Android도 마찬가지이지만)는 훌륭한 프로세스 관리 능력을 가지고 있습니다. 여러달 동안 재부팅 없이 써도 안정적이며 ARM이라는 x86에 비하면 한참 느린 CPU를 사용하고 있지만 최적화를 통해 사용자가 불편함을 느끼지 못하게 하고 있죠. 그러다 iOS 4에 들어서면서 패스트앱 스위칭 기능이 추가되었으며 있으며 제한적인 조건 하에서 멀티태스킹 또한 지원하고 있습니다. 이때문에 한동안 수동으로 최근실행앱 목록을 불러와서 모든 앱 목록을 지우는 식의 팁이 유행하기도 하였지만 수동으로 프로세스킬을 할 필요가 없다는 견해가 우세하며 iOS Multitasking in Detail 이라는 글이 이를 증명하고 있습니다.(최근의 안드로이드 상위기종도 마찬가지입니다.) 그러나 일부 아이패드1과 아이폰3Gs와 같이 256MB의 램용량을 가진 모델의 경우에는 약간의 예외가 있다고 생각합니다. 


 이 두 모델은 항상 가용용량이 부족합니다. 저의 경우에는 수동으로 어플목록을 비우지 않다보니 Activity Monitor Touch와 같은 어플로 확인을 해보면 가용램 용량이 거의 2~3MB에서 놀고 있죠. 그러다 다른 앱을 실행시킬 때 램용량이 모자라면 램에 상주한 앱 중 일부를 OS차원에서 종료시키고(이 과정에서 Crash Report 를 작성합니다. 이걸 모르고 iOS가 안드로이드보다 앱 충돌이 많다 라는 하는 기사를 본 적이 있는데 좀 어이없더군요) 램용량을 확보하게 됩니다. 여기까지는 별거 아니에요. 실행과정에서 잠시 버벅이긴 하지만 금방 지나가니까요. 문제는 실행이 완료되고나서도 한동안 버벅거리는 경우가 간혹 있다는 거죠. 한번 재현해 봅시다.


조건과 순서는 다음과 같습니다.

1. 마이피플이나 프링(Fring), 바이버(Viber)와 같은 음성통화앱을 설치하였을 것

2. 위의 통화앱(아이폰의 기본 3G 전화기능가 아닌)을 실행하였을 것(수동으로 실행하지 않더라도 해당앱을 통해 걸려오는 전화를 받는 것도 포함)

3. 최근 실행앱 목록에서 해당 앱을 지우지 않았을 것

4. 덩치가 큰 어플을 마구 실행하여 가용램을 줄일 것

5. 램이 부족한 상태에서 메신저와 같이 가볍고 키보드를 불러오는 앱(이런 앱이 버벅거림을 체감하기 딱 좋기 때문에)을 실행시켜 봅시다.


일반적인 경우에는 5의 단계에서 OS가 램용량을 확보하는 작업을 하느라 로딩시에만 잠깐 시간이 걸릴 뿐 버벅거림없이 잘 실행됩니다. 그러나 위의 조건대로 하는 경우 어플의 로딩이 끝났음에도 불구하고 한동안 버벅거림이 느껴 질 것입니다. 왜 그럴까요?


일반적인 경우에는  상술한바와 같이 램용량을 확보를 위해 일부 어플을 OS가 강제로 종료시킵니다. 통화앱(기본 통화앱은 예외)도 마찬가지입니다. 다만 통화앱의 경우 예외적으로 OS가 종료시킨 경우 다시 실행됩니다. 사용하는 통화앱이 하나라면 좀 낫겠지만 여러개를 사용하는 경우, 그 앱들 전부가 램정리 과정에서 OS에 의해 종료되었다면 전부 다 다시 실행됩니다. (이것은 Activity Monitor Touch 와 같이 실행되고 있는 프로세스 목록을 보여주는 앱을 통해 알 수 있습니다. 통화앱(Viber, Skype, Air21(마이피플)의 PID 숫자가 가장 크다면 가장 최근에 실행되었다는 뜻이고 이는 다른 어플 실행중에 강제종료된 이후 다시 자동으로 실행되었다는 의미입니다.) 그 과정에서 버벅거림이 일어나는 것이 아닌가 추측합니다.(완전한 앱을 실행하는 것은 아니고 통화의 일부 기능만 로드하는 것 같습니다.)


문제해결방법은 간단합니다.


1. 홈버튼을 두번눌러 최근실행 앱 목록을 불러와서

2. 통화앱만 강제종료(강제 종료 방법은 다들 아시죠?)


 Process Killer와 같이 램용량 확보하는 앱을 사용하는 경우에는 효과 없습니다. 수동으로만 강제종료시켜야 통화앱이 다시 실행되지 않습니다. 


왜 다른 앱과 다르게 통화앱만 이런가 라고 생각해보니 전화를 받을때 좀 더 빨리 받게 하기 위한것이 아닌가 생각됩니다. 


그런데 문제가 또 있습니다. 통화앱을 실행하지 않아도 통화앱의 프로세스가 실행되는 경우가 있더군요.(이런 애매한 표현을 쓰는 이유는 제가 확실한 원인을 찾지 못했기 때문입니다.) 프링(Fring)에서 MSN 메신저를 연동시켜 두었는데, MSN으로 연락이 오는 경우 제 폰에 있는 통화어플의 프로세스(마이피플, 바이버, 스카이프)가 모두 실행되는 경우가 있었습니다. (MSN메신저 어플을 이후 따로 설치하였는데, 그 이후로 MSN을 사용하지 않아서그런건지 위와 같은 일이 다시 일어나지 않아 Fring 자체의 문제인지 확실히 원인을 말씀드릴 수가 없네요.) 이런 경우 직접적으로 앱을 터치하여 실행시킨 것이 아니기 때문에 최근실행 앱 목록에도 존재하지 않습니다. 이런 경우에는 어떻게 해야 할까요?


좀 번거럽지만 간단합니다.


1. 프링의 사용이 끝나면

2. 해당 통화앱을 직접 실행

3. 최근 실행목록을 불러와서

4. 통화앱을 강제종료


이런 식으로 하니까 폰을 41일이 넘게 재부팅 없이 켜고 지내는 지금도 상당히 쾌적하게 작동합니다.(3Gs를 2년간 사용하면서 시스템 재설정은 한번도 사용하지 않았습니다. iOS 5.0.1 순정이며 어플은 394개가 설치되어 있네요.)


좀 설명이 길었는데 요약하자면


1. 무료통화앱은 가급적 하나나 둘로 통일

2. 무료통화앱을 사용한 뒤에는 수동으로 강제종료.

3. 또는 아이폰 4 나 그 이후의 기종으로 갈아탑시다.

by yakii | 2012/02/29 00:41 | 트랙백 | 덧글(1)
iPhone 4S..

심심해서 써보는 iphone 5 예상


64GB 제품 발매 빼곤 너무 정확히 들어맞아서 좀 김이 샙니다;;;


3Gs 약정 끝나면 4s로 갈아탈까 생각했는데, iOS 5 업데이트 해보니 아직 1년 이상은 충분히 더 쓰겠네요. 일단 지켜보렵니다.

by yakii | 2011/10/11 15:07 | 트랙백 | 덧글(0)
< 이전페이지 다음페이지 >