제목 그대로 입니다 ~_~
제가 OS 라곤 거의 윈도우만 만지작 거리다 보니
습관적으로 하루 한번 이상은 전원을 껐다 켜게 되네요
물론 배터리를 갈아끼우기 위해서도 있지만
하루 이상 켜두게 될 경우는 전원을 껐다가 잠시 후 켜는 습관이 있습니다
괜히 오래 켜두면 찝찝해서 ㅎㅎ
그런데 회사에 리눅스 쪽 개발자 한분이 말씀 하시기를
리눅스 계열 OS 들은 윈도우 처럼 자주 꼈다 켰다 할 필요가 없고 오히려 안 좋을 수 있다고 하시네요
(음.. 이분은 안드로이드는 물론, 임베디드 쪽은 전혀 손을 안대시는 분입니다. 주로 서버쪽을 다루시지요)
꼭 필요한 경우가 아니면 그냥 계속 켜두는게 좋을까요? 아니면 한번찍 리부팅을 해주는게 좋을까요?
뭐 그렇지만 윈도우도 아닌데 하루에 한번씩 반드시 리부팅할 필요도 없습니다.
계속 케이블로만 충전하면서 2달반 정도 리붓없이 멀쩡히 사용하기도 했었습니다.
어.. 저 스마트폰 이번에 첨 쓰는거라 갑자기 이 분 글을 보니 헉 하고 궁금해지네요..^^;
피쳐폰 쓸때는 배터리가 방전되지 않는 이상 배터리 교체할 때 말고는 늘 켜 둔채로 사용했었는데..
원래 스마트폰은 그러면 안되는건가요?
스마트폰은 전화기라기 보단 pc에 가까운거니... 일반 pc 처럼 너무 계속 켜둔채로 놔두면 안되는건가....
하는 의문이 갑자기 드네요..^^ㅋ
잘 아시는 분 답변좀..
우리나라는 윈도우즈때문에 안좋은 학습을 하게 된 것 같습니다.
특히 윈도우나 윈도우 모바일의 경우 잘못된 설계로 인해서 메모리 누수가 많이 발생했었습니다. 그래서 오래 사용하면서 앱을 실행하고 종료하는 과정에서 점점 가용램이 없어지고 나중에는 커널과 쓰레기만이 메모리에 남아 다운되는 현상이 종종 발생하죠.
이런 메모리 누수는 C나 C++의 포인터 같이 소프트웨어가 메모리를 직접 관리하면서 메모리 헤제를 못하는 경우에 주로 발생합니다.
안드로이드의 경우 JAVA를 사용하는데, 가비지 콜렉터가 주기적으로 전체 메모리를 스캔해서 사용하지 않는 메모리를 정리해 줍니다. 개발자는 메모리 누수에 신경쓰지 않고 코딩을 할 수 있고, 시스템은 안정적으로 돌아가게 되죠. 단점은 전체 메모리를 스캔하는 과정이모바일에는 조금 무겁다는 것이지만, 넥서스원에서 속도로 크게 불편함을 느끼시는 분은 없을테니 패스.
아이폰의 경우는 Objective-C를 사용하는데, 원래는 가비지 콜렉션을 지원하지만, iOS의 경우는 모바일에 부담이 된다는 이유로 가비지 콜렉션이 제거되고 대신 리테인 카운트 방식을 통해서 메모리를 관리합니다. (이부분은 조금 복잡하니 패스.) 객체의 경우 오토 릴리즈로 설정하고 전역변수 사용 종료 후 릴리즈하는 것만 제대로 하면 여간해선 누수가 발생하지 않습니다.
요점은 안드로이드의 경우 메모리 누수로 인한 불안정화를 걱정하지 않아도 되므로 주기적인 리부팅은 불필요합니다.
리부팅을 하시는 이유가 뭔가요? ^^
배터리를 갈아끼우기 위해서 하신다면 그냥 편하게 사용하세요..
서버야 당연히 재기동을 안하는게 좋지만..
안드로이드는 스마트폰의 OS일 뿐인걸요.. ^^