분류 전체보기 썸네일형 리스트형 Samsung high school vs smokers 담배를 피운다고는 해도 하루에 2개피 정도고 술을 마셔도 비흡연자 앞에서는 특별한 경우를 빼고 담배를 피지 않는 저는 나름 자부(?)하는 light smoker 입니다. 출장 온 구미사업장은 전체 금연구역입니다. 사람들은 이에 정문 밖에서 흡연을 했는데요. 회사는 이에 대응해서 구미시와 합의하에 거리 자체를 금연구역으로 만들어 버렸습니다. 하지만 사람들은 이에 응하지 않고 정문 앞에서 담배를 피워댔지요. 오늘 점심때 나가보니 일명 "선도부"가 완장을 차고 서있더군요. 한손에는 수첩을 들고 가슴에는 팬을 꼽고 "언제든지 네 이름과 사번을 적어줄테다~"라는 포스로 서있더군요.ㅡ_ㅡa 저녁을 먹었습니다. 오늘 담배를 한대도 태우지 않았고 일도 잘 안풀리기에 다시한번 정문 밖으로 나갔습니다. 이번엔 선도부가 없.. 더보기 L1, L2 cache 와 I cache, D cache 의 관계 전에도 언급한 적이 있듯이 어떠한 instruction set 이나 data 를 읽어올때 부근에 있는 data 들을 cache 로 저장합니다. 이때 L1 cache 를 사용하게 되며 L1 cache 에 없는 내용은 L2 cache 에서 뒤지게 됩니다. L2 cache 에도 없으면 Ram 에서 해당 데이터와 주변의 값들을 읽어오는 것이지요. I cache 는 instruction 이고 D cache 는 data cache 를 말합니다. L1 은 I cache 와 D cache 를 모두 가지고 있으며, L2 는 자주 access 가 이루어 지는 D cache 만으로 이루어져 있습니다. ==> 실제 확인해 본 결과 (Havard Archithecture 의 프로세서에서) L2 cache 에 Data와 Inst.. 더보기 Device Driver - memory mapping 원문 : http://vincenthanna.springnote.com/pages/2267520?print=1 Device Driver - memory mapping 가상 주소와 MMU 간단한 시스템은 물리 주소만으로도 동작할 수 있다. 그러나 다중프로세스를 지원하고 각 프로세스에 대해 메모리 공간을 보호해야 하는 운영체제는 물리 주소만으로 구현하기는 어렵다. MMU는 프로세서에 전달되는 주소를 다른 주소로 변환한다. 그래서 프로세서가 메모리에 접근하는 주소가 메모리에 직접 전달되는 것이 아니라 먼저 MMU에 전달되고, MMU는 변환 테이블을 참고해 이 주소를 실제 물리 주소로 변환해 전달한다. 이때 프로세서가 MMU에 가상 주소를 전달하면, MMU가 이 가상 주소를 해석하여 나온 물리 주소를 실제 메모.. 더보기 Kprobes를 이용한 커널 디버깅 시간이 될때 꼭 한번 해보고싶다. 하지만 ARM을 지원하지 않는다는거... ㅜ.- http://webdizen.new21.net/blog/2900 더보기 flush_dcache_page와 kmap_atomic 원문 : http://barriosstory.blogspot.com/2009/01/flushdcachepage-kmapatomic.html 굉장히 소중한 자료이다. 더불어 글을 쓰는 스타일도 너무나 마음에 든다. 좋은 자료를 공유해준 분께 다시한번 감사 드립니다. 왜 file system code들 중 kmap_atomic과 flush_dcache_page가 있을까? 아는 분의 도움으로 이 문제에 대해서 생각해 볼 기회가 생겼다. 먼저, flush_dcache_page 함수의 용도를 먼저 알아야 한다. David Miller가 작성한 문서에는 다음과 같이 되어 있다. void flush_dcache_page(struct page *page) Any time the kernel writes to a pag.. 더보기 L1, L2 cache 원문 : http://www.bcpark.net/bbs/31751 CPU는 Central Processing Unit의 머릿글자로 이 용어에서 알수 있듯이 여러개의 장치가 모여서 CPU를 구성하고 있습니다 이 구성요소중 하나가 케시메모리인데 케시 메모리는 L1 cache와 L2 cache로 나뉩니다. L1 cache memory는 CPU가 처리하는과정에서 필요한 여러가지 계산식이나 명령코드를 저장하는 케시메모리로써 CPU에 포함되어 있습니다 반복되는 계산을 줄이는 방법이 되는 중요한 케시 입니다 L2 cache memory는 CPU와 다른 장치와의 속도차이를 개선하기 위해 사용되는 메모리인데 CPU가 연산처리를 하는동안 다음에 필요한 데이터를 미리 저장해두는 공간입니다 즉 가장빠른 CPU가 상대적으로 느.. 더보기 arm - SIGSERV나 SIGILL 이 발생했을때의 asm 동작 ldr r1,[r6,+r3] 만약 이 instruction 에서 문제가 발생했다고 하자. 구문을 해석하자면 r1 = *(r6 + r3) 입니다. r6+r3 에서 나오는 주소에 문제가 있어서 SIGSEGV 가 발생하였는데 이때 r1 에 영향이 없을것 같은데 r1 에는 0 이 대입됩니다. ARM - coretex 입니다. 더보기 linux - t32 로 code 영역 dump 뜨기 코드영역을 비교해 보려고 다음과 같이 덤프를 떳는데 한참 작은 size 만 덤프가 되었다. data.save.binary "D:\c_expat_code_2.dat" 0x40031000++0x1d000 다시한번 시도해 보니 bus 애러가 난다. 이유인 즉슨... linux 는 4kb 단위로 demanding page 를 한다. 따라서 hit 가 되지 않은 code 영역은 ram 상에 없고, map 되어 있지 않으므로 애러가 나고 덤프되던 영역까지만 저장이 되는 것이다. 코드 영역이 40031000-4004e000 r-xp 00000000 b3:02 25236034 /mnt/data/factoryfs/lib/libexpat.so.1.5.0 이정도 크기라면, 해당 영역을 뒤져가며 다 dump 를 떠야지만 co.. 더보기 symbol table 로 code area 에서 함수 위치 찾기 readelf -s library.so 를 치면 symbol table 이 나온다. 9315: 000c3230 28 FUNC LOCAL DEFAULT 11 __GI_delete_module 9316: 00093188 540 FUNC LOCAL DEFAULT 11 __pathconf 9317: 0006ca08 952 FUNC LOCAL DEFAULT 11 __malloc 9318: 00059b88 236 FUNC LOCAL DEFAULT 11 _IO_padn_internal 9319: 000b4614 24 FUNC LOCAL DEFAULT 11 __read_nocancel # cat /proc/1456/maps 을 해서 나온 code 영역에서 40242000-4035b000 r-xp 00000000 8b:.. 더보기 readelf - 섹션 위치 한눈에 보기 readelf 에는 다음과 같은 기능이 있습니다. elf의 각 섹션들을 나열해 주고 크기와 속성을 보여줍니다. > readelf -l core.1455 Elf file type is CORE (Core file) Entry point 0x0 There are 79 program headers, starting at offset 52 Program Headers: Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align NOTE 0x000a14 0x00000000 0x00000000 0x001dc 0x00000 0 LOAD 0x001000 0x2a000000 0x00000000 0x4d000 0x4d000 R E 0x1000 LOAD 0x04e000 0x2a0550.. 더보기 objdump - 실행파일에서 asm code 확인 objdump 의 여러 기능이 있지만 다음과 같은 기능이 있습니다. 바로 실행 파일에서 sam code 를 바로 확인해 볼 수 있는거지요. 옵션을 보면 source 와 매칭을 시킬 수도 있을것 같은데 좀 더 익숙해 지면 업데이트 하겠습니다. >objdump -d a.out | grep -A10 '' 08052cbc : 8052cbc: 0d c0 a0 e1 30 or $0x30e1a0c0,%eax 8052cc1: d8 2d e9 04 b0 4c fsubrs 0x4cb004e9 8052cc7: e2 38 loop 8052d01 8052cc9: 30 90 e5 00 40 a0 xor %dl,0xa04000e5(%eax) 8052ccf: e1 00 loope 8052cd1 8052cd1: 00 53 e3 add.. 더보기 linux mailing list 정리 linux 를 하면 할 수록 깊이있는 정보는 구글에서도 얻기가 힘들어 지고, 결국 mailing list 를 이용할 수 밖에 없더군요 근식이 형에게 메일링 리스트를 문의했더니 유용한 리스트들을 작업해 둔 페이지를 보내주었습니다. http://invain.homeip.net/maintainer.php 앞으로 도움이 많이 될것 같네요. 필요하신분들 참고하시기 바랍니다. 더보기 linux - Heap 은 움직인다(늘어난다). cat /proc/[pid]/maps 를 하면 해당 process 가 메모리를 어떻게 사용하고 있는지 알 수 있습니다. Test 를 할 일이 있어서 malloc 을 계속해서 할당하는 application 을 구현해서 heap size 를 보았습니다. # cat maps 00008000-00009000 r-xp 00000000 8a:09 42521 /opt/make_lock_up 00010000-00011000 rwxp 00000000 8a:09 42521 /opt/make_lock_up 00011000-0a8ad000 rwxp 00011000 00:00 0 [heap] 40000000-4001c000 r-xp 00000000 8b:07 2304052 /lib/ld-2.5.so 4001c000-4001f0.. 더보기 아이폰으로 연주하기 마법은 아이폰이 아니라 스케일 입니다. ^^ 더보기 특정 시간 동안 system cpu 사용량 구하기 (linux) 오늘은 특정시간동안의 cpu 사용량 구하는 법에 대해서 알아보고자 합니다. /proc/stat 정보를 조합하면 원하시는 정보를 얻으실 수 있습니다. cat /proc/stat 를 하시면 아래와 같은 정보를 얻을 수 있습니다. # cat /proc/stat cpu 4939 385 2406 38767 313 20 320 0 0 cpu0 4939 385 2406 38767 313 20 320 0 0 intr 102031 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 155 0 190 0 0 0 0 0 1045 0 8147 0 92 0 1286 0 0 0 0 0 0 0 0 2 0 0 0 133 0 0 0 1 0 0 0 1765 0 0 0 0 0 0 2 0 0 70437 0 0 0 0 0 0 0 0 0.. 더보기 Platform_get_irq & struct resource kernel 소스를 보다보면 irq handler 를 등록하는 부분에서 다음과 같은 code 를 볼 수 있다. static int __devinit kp_probe(struct platform_device *pdev) { ... keypad->irq = platform_get_irq(pdev, 0); printk("[KEY] %s() irq = 0x%x\n", __FUNCTION__, keypad->irq); if (keypad->irq irq; goto err_disable_clk; } ... } Platform_get_irq 는 어디서 등록된 irq 정보를 가지고 오는 것일까? probe 에서 가지고 온것을 보니 분명 어딘가에서 register_device 를 한.. 더보기 기분좋은상상 - 여우비 예전에 여우비 MT갔었던 생각이 나서 슬쩍 올려봅니다. 이걸보면 애들이 또 저를 죽이려 들지도..ㅎㅎㅎ (검색은 안되게 걸었단다 ㅜㅜ) 그래도 이때가 참 좋았지 않니? 그런데 나 동남아 다녀와서 엄청 탓었구나..ㅎㅎ 왠 원주민이.. 깜짝 놀랐음. ^^; 더보기 문자그룹 서비스 오늘은 소규모 팀을 이루어서 무언가 하는 사람에게 무척 편리한 "문자그룹"을 소개해 볼 까 합니다. 제가 있는 아카펠라 그룹 "여우비"와 "5notes"에서 등록해서 사용하고 있습니다. 단체문자를 저렴한 가격에 보낼수 있기에 처음에는 공지형식으로 쓰다가 나중에 가서는 채팅처럼 사용하게 되어서 의사전달이 확실해 지고, 전체적인 상황파악이 쉬워지더군요. ^^ 각설하고 가장 중요한 가격부터 보면 KTF의 경우 기본 20원 + 명당 10원 입니다. 만약 5명이 문자그룹을 한다고 하면 20+자신을 제외한 4명에게 보내게 되므로 60원이면 4명에게 문자를 보낼 수 있습니다. 타 통신사에 경우 조금 더비쌉니다. 그러니 KTF를 사용하는 분이 가입하시는게 절대적으로 유리합니다. 구분 정보이용료 문자전송료 상세안내 SK.. 더보기 무선랜이 있는 노트북끼리 데이터 공유하는 방법 단순히 PC2대를 무선으로 연결시키는 법은 AD-hoc 모드를 사용해서 연결 하시면 됨니다..^^ 첫번째 노트북에서 제어판 -> 네트워크 및 인터넷 연결 -> 네트워크 연결 -> 무선네트워크 연결 -> 속성 -> 무선네트워크 -> 고급 -> 컴퓨터 간 네트워크만(특별) 선택 -> 닫기 추가 -> 네트워크 이름(SSID) 란에 아무거나 넣어줌. 네트워크 인증 : 개방모드 데이터 암호화 : WEP 키가 자동으로 공급됨 체크 안함 키인덱스 : 1 네트워크 키 : 암호이며(10자리를 16진수로 입력) 네트워크 키 확인 : 위의 네트워크 키 를 재입력 확인, 확인 하여 나오시면 되고, 다시 무선네트워크의 속성 -> 인터넷 프로토콜 TCP/IP -> 속성 "다음 IP주소 사용" IP주소 : 192.168.0.2 서.. 더보기 간단히 system lock up 상황 만들기 여러 방법들이 있겠지만 이방법이 가장 간달할것 같다. sysfs 파일에 다음을 등록해서 호출하면 바로 lock-up 상황이 연출된다. while(1){ printk("lockup count = %d\n", i++); local_irq_disable(); } 참고로 local_irq_disable 함수는 각종 인터럽트들을 disable 시킨다. 더보기 Trace32 - break point 에서 원하는 변수면 area 에 출력하기 break 옵션에 CMD 창에 다음과 같이 적는다. print "g_len=" v.value(g_len) " g_offset=" v.value(g_offset) " g_log_index=" v.value(g_log_index) " g_chunk=" v.value(g_chunk) 더보기 슬기와 1년만에 재회 - 여우비 일본에서 유학중인 슬기가 1년만에 한국을 찾았습니다. 비록 할머니의 병중으로 일주일 짧게 들어왔지만, 몇시간 정도 즐거운 담소를 나눌 수 있었습니다. 1년전 우리가 함께 공연했던 곡들을 잊지 않고 음과 가사까지 정확히 부르는 그녀석을 보면서, 또 우리들을 보면서 "우리가 많이 행복했었구나-" 라는 생각을 하게 됩니다. 슬기야 건강해라. 또 언젠가 함께 노래할 날이 오겠지. ^^ 더보기 안드로이드에 날개를 달다 (음성인식) 구글이 음성이라는 회심의 카드를 꺼냈군요. 역시 구글 이대로 있을것이라는 생각은 안했지만... 역시 흥미진진하군요. 저는 요즘 별들의 전쟁에 외로운 마린이 되어 전장을 뛰어다니는 느낌입니다. 연합뉴스 | 입력 2010.03.18 15:49 // 더보기 안드로이드 폰이 아이폰보다 좋기 힘든(?) 10가지 이유(업데이트) 오늘 기사를 보니 아래와 같은 내용의 기사가 있었습니다. http://www.zdnet.co.kr/Contents/2010/03/16/zdnet20100316115859.htm 참고로 저는 안드로이드가 잘되기는 100배는 바라는 사람이지만, 이 기사는 현실에 한참 맞지 않는것 같습니다. 지금은 업무로 좀 바쁘고 집에 돌아가면 한번 기사의 내용에 대해 주석을 좀 달아볼까 합니다. --> 좀 천천히 의견을 적을까 했지만 관심있으신 분들이 많아서 개인 의견을 조금 일찍 서술해 보았습니다. 제가 이렇게 개인적인 의견을 서술한 이유는 밑에 열거한 사실들이 분명히 장점이긴 하지만, 양날검처럼 그것들에 문제점이 분명하고 크게 존재하고 있다는것을 공유하고 싶어서 입니다. 그리고 안드로이드 개발자들과 시장을 키우려는 사.. 더보기 ps u에 나오는 RSS 사이즈는 VSZ 사이즈까지 증가한다. (할 수 있다)| 원문 : http://elenoa.tistory.com/181 좋은 내용이군요. 이론으로는 알고 있는 내용이지만 이렇게 실재로 눈으로 보는것은 참 의미있다고 생각합니다. 헌데 여기서 나오는 rss 는 smaps 에 나오는 rss, pss 와 같은 의미일까요? 결과를 다 써놓고 정리하자니 벌쭘하지만. VSZ와 RSS는 뭘까? man 페이지의 ps 항목에서 설명하는 두 파라미터의 설명은 다음과 같다. VSZ virtual memory size of the process in KiB (1024-byte units). Device mappings are currently excluded; this is subject to change. (alias vsize). RSS resident set size, the .. 더보기 메모리 번지로 사이즈 계산하기 참 쉬운건데 헷갈리고 있었네요. 뒷번지 - 앞번지 + 1 이 해당 메모리 사이즈의 byte 값입니다. 예1 ) 0x0000 -- 0x1FFF 는 0x1FFF - 0x0000 + 1 = 0x2000 (=8192) 8192 byte 이고 8 kbyte 입니다. --------------------------------------------------- 예2 ) 0x04FFFFFF 0x04FFFFFF + 1 = 0x5000000 (byte) 0x5000000 / 0x400(1024) = 0x14000 = 81920 (kbyte) 81920 / 1024 = 80 Mbyte 공식으로 만들면 아래와 같습니다.(선형주소 + 1) / (1024*1024) = x MB 참고로 64MB : 0x 0400 0000 1G :.. 더보기 이상한 음악나라 기가히츠(3/6) - 공연 후기 2010년 3월 6일 기가힛츠 정기 공연 - 부재 : 이상한 음악나라 기가히츠 공연이 있었습니다. 참가팀 프리허그, 호산나 프레이즈, 엡노멀, 히릿, 피카소, 여우비 팀들과 많은 스탭 및 연출, 보조 출연자들이 열연을 한 대 공연이었습니다. 공연은 일반인들의 몰입도를 높이기 위해 뮤지컬 형식으로 꾸며서 스토리를 가지고 재미있게 진행 하였습니다. 특히 제가 소속된 팀 여우비의 소프 민희양과 재현 군이 주연과 부주연 연기를 했으며, 마지막 무대를 여우비가 장식한 저에게 나름 크게 의미있는 공연이었습니다. 공연이 시작되었습니다. 주인공인 민희양과 효민군입니다. 드라큘라의 마을 프리허그 등장~! 드라큘라 마을답게 분위기도 음산하고 노래도 무슨말인지 모르겠습니다. 형언아- 잘생겼다. 연기하는 쏭쌍과 씨아, 쏭쌍이.. 더보기 device driver check list (using I2C) I2C 드라이버를 사용하는 디바이스 드라이버를 작성할때 check list 이다. 모든 디버깅은 의심 포인트 리스트를 만들고 테스트 하기 쉬운것 -> 어려운것 순으로 하는것이 좋다. 문제를 해결했을때 처음에 내가 작성한 "의심 리스트"에 해당 문제가 없었다면 아직 경험이 부족하거나 관련 지식이 불충분한 것이다. 0. 모든 device driver 에 check list 0순위는 전원과 enable gpio high 이다. 1. slave address 보통 slave address 는 spec대로 입력하면 I2C 드라이버 내부적으로 1bit 를 왼쪽으로 shift 해서 사용한다. 혹시 I2C 가 계속 ACK fail 이 난다면 slave address 를 더보기 3/6일 공연 - 이상한 음악나라 기가히츠 3/6일 그디어 기가히츠 정기공연을 합니다. 저는 여우비 팀의 베이스로서 이번 공연에 참석하게 됩니다. 뮤지컬이라고는 하나 제가 연기는 하지 않고요. (저의 발연기를 안보셔도 되니 참 다행이지요.ㅎ) 바쁜 일정상 여우비팀의 베이스 보컬만 맡았습니다. '이상한 음악나라 기가히츠'는 기존의 아카펠라 공연에 스토리를 가미하여 뮤지컬 형식으로 재 구성하였습니다. 음악이나 아카펠라에 크게 관심이 없으셔도 즐겁게 관람할 수 있는 공연으로 꾸며 보았습니다. 많은 관심과 응원 부탁드립니다. 드디어 모든이들이 기다리시던 기가히츠 정기공연이 열립니다~! 지난해 기가히츠에서 새롭게 만들어 봤던 아카펠라 뮤지컬 러브 스토리~! 잘만들어졌었고 모두들 너무나 열심히 하셔서 정말 좋은 작품이 나와 성황리에 공연을 했었는데요~ 올해.. 더보기 김연아 선수 벤쿠버 동계올림픽 금매달 확정이네요. 너무 자랑스럽습니다. 김연아 선수의 우는 모습을 보면서 저도 더 열심히 살아야 겠다는 생각이 드는군요. linux core expert 를 향해서 화이팅~!! 더보기 이전 1 ··· 11 12 13 14 15 16 17 ··· 19 다음