Android 기술 Q&A 
Q&A 게시판에 질문을 남기신 글에 대한 답변/덧글/쪽글에 대한 Push 메일 서비스를 받고자 하시는 분들은
☞ Push 메일 서비스 공지를 필독하시기 바랍니다.
invain님~ 두가지 질문이 있습니다`
작성자
작성일 2008-06-05 (목) 16:03
ㆍ추천: 0  ㆍ조회: 10266      
IP: 203.xxx.51
안녕하세요~ invain님..
 
binder를 strace로 tracing을 해서 몇일동안 보았지만 아직도 감을 못잡고 있습니다.
 
일단 알게된사실은 com.google.process.content 프로세스를 tracing 하면 
 
 09:30:53.730000     stat64("/system/framework/framework-res.apk", {st_mode=S_IFREG|0644, st_size=1511788, ...}) = 0
 76 09:30:55.530000 stat64("/system/app/GoogleApps.apk", {st_mode=S_IFREG|0644, st_size=44891, ...}) = 0
 77 09:30:56.100000 mprotect(0x410f6000, 8192, PROT_READ|PROT_WRITE) = 0
 78 09:30:56.670000 getpid() = 707
 79 09:30:58.410000 getuid32() = 10000
 80 09:31:00.510000 ioctl(13, 0xc0186201, 0xbe9435b0) = 0
 81 09:31:02.510000 ioctl(13, 0xc0186201, 0xbe9435b0) = 0
 82 09:31:02.700000 getpid() = 707
 83 09:31:04.470000 getuid32() = 10000
 84 09:31:05.560000 ioctl(13, 0xc0186201, 0xbe9435f0) = 0
 85 09:31:06.750000 ioctl(13, 0xc0186201, 0xbe9435f0) = 0
 86 09:31:06.850000 getpid() = 707
 87 09:31:07.660000 getuid32() = 10000
 88 09:31:08.190000 ioctl(13, 0xc0186201, 0xbe9435c0) = 0
 89 09:31:09.010000 ioctl(13, 0xc0186201, 0xbe9435c0) = 0
 90 09:31:09.830000 getpid() = 707
 91 09:31:10.430000 getuid32() = 10000
 92 09:31:10.720000 ioctl(13, 0xc0186201, 0xbe943518) = 0
 93 09:31:10.980000 ioctl(13, 0xc0186201, 0xbe943518) = 0
 94 09:31:11.480000 dup(-2147483647) = -1 EBADF (Bad file descriptor)    --> 이부분에서 dup의 인자로 쓰레기값이 넘어가는듯합니다.
 95 09:31:12.050000 mmap2(NULL, 0, PROT_READ|PROT_WRITE, MAP_SHARED, -1, 0) = -1 EBADF (Bad file descriptor)
 96 09:31:13.010000 mmap2(NULL, 0, PROT_READ, MAP_SHARED, -1, 0) = -1 EBADF (Bad file descriptor)
 97 09:31:16.210000 dup(-1) = -1 EBADF (Bad file descriptor)
 98 09:31:16.700000 getpid() = 707
 99 09:31:18.840000 getuid32() = 10000
100 09:31:20.890000 ioctl(13, 0xc0186201, 0xbe9435a8) = 0
101 09:31:21.870000 ioctl(13, 0xc0186201, 0xbe9435a8) = 0
102 09:31:22.820000 dup(-2147483647) = -1 EBADF (Bad file descriptor)
103 09:31:24.690000 mmap2(NULL, 0, PROT_READ|PROT_WRITE, MAP_SHARED, -1, 0) = -1 EBADF (Bad file descriptor)
104 09:31:25.420000 mmap2(NULL, 0, PROT_READ, MAP_SHARED, -1, 0) = -1 EBADF (Bad file descriptor)
105 09:31:26.960000 dup(-1) = -1 EBADF (Bad file descriptor)
106 09:31:27.120000 --- SIGSEGV (Segmentation fault) @ 0 (0) ---    
107 09:31:27.780000 sigaction(SIGUSR1, {SIG_IGN}, {SIG_DFL}, 0x9e360) = 0
108 09:31:29.360000 gettid() = 707
109 09:31:29.850000 socket(PF_FILE, SOCK_STREAM, 0)           = 14
110 09:31:30.570000 +++ killed by SIGKILL +++
 
위 tracing정보는 driver/binder 밑의 module로 적재했을시구요. 저 seg fault시 red eye가 멈추어버리지만,
./android/binder.c모듈을 적재시에는 계속 무한으로 runtime-> system_server-> com.google... 루프가 반복됩니다.
디버깅 정보가 상당히 부족하지만 조언해주실수 있는 부분이 있다면 부탁드릴께요~
 
또한, android internals에서 수집한 정보에 의하면 안드로이드는 /sys/class/input에서 input device를
찾고, /dev/input/event# 에서 input장치의 raw data를 읽어오는것으로 이해를 했는데요.
현재 제보드의 touchscreen은 ads7843을 사용하고 있습니다. internals엔 mmx와 corgi의 calibration 패치만 있더군요. ㅠㅠ
그래서 대폭의 수정작업이 필요할것 같은데....
일단 ads7843드라이버는 major 11로 /dev/ts로 잡힌상태구요. hexdump를 이용해서 touch시 raw data의 전달 여부와 device자체는 잘 돌아간다고 파악됬구요. 이 rawdata를 안드로이드에 어떻게 전달 해야할지 고민입니다.
또한, sys/class/input에 등록을 해야할 절차가 궁금한데요.
간략하게라도 조언부탁드려도 될런지요?
 
매번 도움은 못될지언정 도움만 청하게 되네요.ㅠ....
 
수고하세요~
이름아이콘 들풀
2008-06-05 23:10
아마 인베인님은 오늘부터 다음주 월요일까지 잠수하실겁니다...
이유는..... 비밀입니다..ㅎㅎ
   
 
덧글 쓰기 0
3500
※ 회원등급 레벨 0 이상 읽기가 가능한 게시판입니다.
    N     분류     제목    글쓴이 작성일 조회
4953 안드로이드에 탑재된 프로그램 지우는 방법 좀 알려주세요... 2008-04-25 9130
4952 도와주세요~ 2008-05-05 8682
4951 에뮬의 system과 data를 추출할때.... 2008-05-06 8580
4950 커널 사이즈가 얼마정도 나오시나요? 2008-05-07 8626
4949 sd카드에서 데이터 가져오기에 대한 질문 2008-05-07 8821
4948 UI와 디자인에 대해서 궁금한 점이 있습니다. 2008-05-07 8365
4947 2.6.23을 zImage빌드를 하였습니다 2008-05-07 8480
4946 안드로이드에서 파일 다운로드에 관해 여쭤봅니다... 2008-05-13 9606
4945 UI이벤트 처리 질문. 2008-05-13 8489
4944 다이얼로그 허접하게 만들었습니다 참조하세요~.. 2008-05-14 8564
4943 혹시m5버전 멥에 오버레이 띄우는 방법 아시는분~.. 2008-05-15 8669
4942 Bitmap 사용하는 방법 아시는분 계신가요??? 2008-05-16 8771
4941 loop back 마운트에 대해서 2008-05-16 8529
4940 문자를 이용하려 하는데... 2008-05-19 8595
4939 안드로이드에서의 한글 지원은? 2008-05-19 10641
4938 안드로이드를 띠울때 2008-05-19 8590
4937 포팅 관련 질문입니다. 2008-05-19 8558
4936 포팅관련 framebuffer에 관하여.. 2008-05-19 11462
4935 service를 이용한 네트워크 접속, 어떤가요? 2008-05-20 8868
4934 Spinner관련해서요.ㅠ 2008-05-20 9541
4933 질문이 있습니다. 2008-05-20 8556
4932 Re.. 수정해서 다시 올려욤 2008-05-21 14493
4931 메시지박스띄우기 2008-05-21 10960
4930 multicast programming 2008-05-21 10547
4929 가장 먼저 실행되는 Activity 2008-05-23 9148
4928 Dialog View 에서 activity 로 Dialog의 종료된 상태를 넘겨주.. 2008-05-23 10672
4927 Bitmap형식의 이미지사이즈를 바꾸고 싶습니다... 2008-05-26 11697
4926 안드로이드 App. 메뉴에서 32번 글 VideoPlayer 2008-05-28 17936
4925 포팅시 binder 문제에 대하여.. 2008-05-30 12930
4924 파일첨부가 않되어 밑의글에 이어 추가해요~ 2008-05-31 8505
4923 localhost로도 접속이 안되는데 왜 그럴까요?? 2008-06-01 8635
4922 invain님께.. (리플에 대한 내용입니다) 2008-06-02 9298
4921 안드로이드에서 DataBase접근하는 방법에 대해서.... 2008-06-02 15387
4920 안드로이드 플랫폼상의 문자입력기 관련 질문.. 2008-06-03 8522
4919 안드로이드 플랫폼상의 문자입력기 관련 질문.. 2008-06-03 11443
4918 간만에 또 막히는 곳이 있어서 질문올립니다. 2008-06-03 8532
4917 "Hit" testing on a View(MapView) 2008-06-04 14127
4916 들풀님의 Safari 분석 자료에서 질문 있어요... 2008-06-04 8841
4915 invain님~ 두가지 질문이 있습니다` 2008-06-05 10266
4914 에뮬레이터 내장 폰북의 DB에 연동한 폰북에 사진등록 방법 질.. 2008-06-05 11437
4913 안드로이드 소스 상에서의 폰트 변경 2008-06-05 11389
4912 contact database에 photo 추가 관련 2008-06-06 11425
4911 Google IO: Android 50 Q&A 2008-06-06 8745
4910 다시 외부 DB 접근하는 것에 대해 여쭤봅니다. 2008-06-09 9806
4909 오류가 나는데 이유를 잘 몰르겠네요.-_-;; 2008-06-09 14274
4908 다이얼로그 질문이 있습니다. 2008-06-10 8568
4907 들풀님께 여쭈어봅니다 ^^ 2008-06-12 8536
4906 invain님께 의견을 듣고 싶습니다. 2008-06-14 8778
4905 폰에 그림이나 문자 표시하는법. 2008-06-16 8461
4904 맵 소스는 어디서 볼 수 있나요? 2008-06-17 8579
12345678910,,,101