블로그 이미지
kalstein

여러가지 프로그래밍 관련이나...신변잡기적인 글들을 남기는 블로그입니다. 지식은 나누는만큼 강력해집니다 ^^

Rss feed Tistory
Programming 2011. 6. 1. 10:12

클로져(closure)란게 뭐지?

난 C/C++ 를 더 오랫동안 잘 써왔다.
최근들어서 그래도 이리저리 뒤적거리는게 python.
C/C++에 비해 유지보수의 장점도 있고, 기본제공되는 라이브러리도 다양하고, 여튼 상당히 괜찮은 느낌이라서 사용중인데... closure라는게 있길래 좀 살펴봤다.

알아보니..음 뭐랄까. C++의 binding과 비슷했다. (boost 의 bind)
a,b를 인자로 가지는 func(a,b)이 있다손 치면, b라는 녀석을 고정시키고 func(a)를 만들어낸달까.

뭐 사실... 그닥 실용적인 예제는 모르겠다. -_-;;;;
굳이 꼽자면 Command 패턴에 사용하기 좋다는것. (bind를 활용해서도 잘 쓰니까...)
그정도...? 그래도 이런게 언어적으로 지원되는거랑 안되는거랑은 많이 차이난다.
쓸려고하는데 지원이 안되면 꼼수로 뱅뱅 돌아가야되거든...ㅎ

,
잡동사니 2011. 5. 4. 08:50

KT가 와이파이 핸드오버를 한다??

http://news.nate.com/view/20110503n12574

이런 기사가 있어서...좀 이상한것 같아서 한마디 써본다.
이게 말이되나 모르겠다.

현재 WiFI라고 불리우는것은 Wireless Physical Network 규격중 하나인 802.11 a/b/g/n 을 칭한다.
그런데...802.11 규격이라는것이, 고정점 무선네트웍을 지향하는 규격인지라, Handover에 대한 스펙이 없는것으로 알고있고, 있다고 해도... 지원이 어렵다. (사실 스펙을 넣을 필요도 없다. 아래에 설명을 보시라...)

WCDMA 망에서의 H/O는 다음과 같이 시행된다.
1. 단말기가 WCDMA 기지국 신호를 (pilot 채널이라는게 있다) searching 하고있다.
2. 그리고 기지국 측에서 Neighbor cell 이라고 근처에 인접한 cell의 정보를 단말기에 이미 알려준상태.
3. 단말기가 현재 cell의 반경에서 좀 벗어난 느낌이 들면, 즉 neighbor cell의 신호가 훨씬 좋다고 생각되면
   H/O 요청을 기지국에 한다.
4. 기지국에서 H/O 과정을 시행한다.

WiFi에서 안되는 이유...를 알 수 있을것이다.
일단 wifi는 전국망 뭐 이런식의 네트웍이 아니기때문에, neighbor cell 을 등록하거나 그런 과정이 없고,
단말기가 wifi 신호가 떨어진다고 해서 따로 H/O 요청하는 과정이 없다.
걍 끊어져버린다 =_=;;;;; 혹은 이미 알던 다른 Wifi AP 가 있으면 거기로 붙긴한다.

추가로 KT가 여러개의 특허를 냈다고 하는데, 그건 걍 특허고... 802.11에 들어가는 표준스펙을 KT가 추가할순 없다. 갖가지 표준회의가 열리며 거기서 H/O 관련된 표준규격을 제시하고, 회의통과가 되어야되는건데 그런내용은 전혀 없고 특허만 갖고있다고 한다... 이건뭐지 대체 =_=;;;

뭔가 개발은 했을테니... 좀 더 알아볼 필요는 있을꺼같다;;;;
,
잡동사니 2011. 4. 30. 12:05

iPhone 3Gs GPS 문제발생...

배터리가 요새 좀 수명이 다된거 같아서...집에서 DIY 했다...
근데 ㅡ,.ㅡ;; GPS가 안잡히는 문제가 발생 ㅠㅠㅠㅠ
다시 분해조립 해봤지만...여전히 안잡힘...

이게 완전히 안잡히는건 아니고, 대충 3G 기지국 GPS 정보까지는 받아오는데,
정확한 실제 위치가 안잡혔다.
(아이폰 기본 맵어플에서는 위치 정확히 잡은 후에 깜박거린다.
그 전까지는 그냥 고정 원 모양만 나오고 원 크기도 제법 크다.)

그래서 1차로 SW reset.
http://forums.macrumors.com/showthread.php?t=517227
일단 이거보고 따라해봄...
안해봤던 탈옥까지 해서 다 따라해봤으나... 결국 실패.

결국은 내가 조립을 잘못했다는 결과에 이르렀다.
범위를 좁혀보자...라고 생각하고 대체 뭐가 어떤 부품인지 살펴봤다.

http://www.ifixit.com 를 살펴보니... 각 번호별로 어떤것을 담당하는지 알수있었다.

이 사진은 iPhone 3G 모델인거 같은데, 7번이 빠져있다. 3Gs에서 7번은 왼쪽 하단의 노란색 부분에 있다.
각 부분 설명을하자면...

1,2 -> 오른쪽 하단에 보이는 3개의 단자중 끼우는 방식인데 상판패널과 연결되어있다. LCD및 터치와 연관된다.
3 -> 1,2번 사이에 있는 녀석인데, 조도,근접 센서와 연관된다.
4 -> 아이폰 하단의 스피커,마이크 부분과 연관된다.
5 -> WiFi & GPS 안테나
6 -> WiFi & GPS & 이어폰 단자의 각종 센서 및 정보 관련 (일듯으로 추정됨)
7 -> 3G 안테나

WiFi & GPS 의 안테나는 USIM 뒤쪽에, 3G 안테나는 정확히는 모르겠으나, 3Gs의 외부에 나와있는 은테...가 그 역할을 하고있는게 아닌가로 추정되었다.
일단 나의 경우는 GPS가 제대로 동작하지않으니 ,5,6번이 문제라고 볼수있다.

세밀히 살펴보니 5번이 정확하게 들어가지않은것을 확인할 수 있었다. OTL
어설프게 끼워져있었던것. 어설프게 끼워져있어도, GPS를 제외하고는 정상동작하였으니 쩝;;;
여튼 안테나 주변의 먼지도 제거해주고, 깔끔히 재조립 후 테스트해보니...

굿!! 아주 잘된다!! ㅎㅎㅎ



결론 : DIY할땐 조립 잘하자 =_=;;


ps : 전화하는데 이상하게 암것도 안들려서 보니까... 근접센서 제대로 연결안됐나보다...ㅠㅠ 얼굴로 화면이 터치가 되어서 '소리끔'이 켜졌다 -.-;; 집에가서 3번 다시 연결해봐야할듯하다.

ps2 : 3번 재연결 후 근접센서 잘 동작함... 휴. 핀셋으로 잡아서 확실히 넣어주니 잘 동작한다. 다행!! 이제 전화도 아무 문제없이 사용!!

ps3 : 조도 센서는...고장났나? 제대로 동작안하는거 같은데 -.-;; 뭐 근데 사실 잘 안쓰니까 상관없긴함.
,
TOTAL TODAY