반응형

분류 전체보기 288

지연 가능 함수, 커널 태스크릿 및 작업 큐 (bottom half)

지연 가능 함수, 커널 태스크릿 및 작업 큐 Linux 2.6의 하반부소개 스레드 작업의 빠른 처리를 위해 Linux? 커널에서는 태스크릿과 작업 큐를 제공합니다. 태스크릿과 작업 큐는 지연 가능 기능을 구현하고 드라이버의 기존 하반부 메커니즘을 대체합니다. 이 기사에서는 커널에서 태스크릿과 작업 큐를 사용하는 방법을 살펴본 후 이러한 API를 사용하여 지연 가능 함수를 작성하는 방법을 보여 줍니다. 이 기사에서는 커널 컨텍스트(특히 2.6.27.14 Linux 커널 내의 컨텍스트) 간의 처리를 지연하는 데 사용되는 두 가지 방법을 설명한다. 이러한 방법은 Linux 커널과 관련된 방법이지만 그 기본 아이디어는 아키텍처 관점에서도 유용하다. 예를 들어, 작업 스케줄링을 위한 기존 스케줄러 대신 이러한 아..

gdb 사용법 정리

gdb 사용법 사용법 help 도움말, 명령어 분류 목록 출력 help [class] 해당 class에 속한 명령어 목록 표시 help [command] 해당 command에 대한 도움말 표시 *** class와 command의 축약형도 지원됨 명령어 분류 목록 running 프로그램 수행 support 지원 도구 stack 스택 검사 user-defined 사용자 정의 명령 data 데이타 검사 aliases 다른 명령어의 별칭 files 검사할 파일 obscure 기타 status 상태 조회 internals 유지보수 명령 breakpoints 어떤 포인트에서 프로그램을 중단하게 만듦 프로그램의 수행 (running) show args 디버깅할 프로그램에 전달되는 argument를 보여준다. 이 명령..

AT&T Assembly Code (어셈블리어)

Linux Assembly Code 글쓴이 : 이호 (i@flyduck.com) 최신 글이 있는 곳 : http://linux.flyduck.com/ v0.1.0 2000년 3월 28일 차례 0. 서문 1. GAS와 AT&T 문법 2. Inline Assembly 3. Reference 0. 서문 이 문서는 리눅스에서 사용하는 어셈블리 문법에 대해서 (특히 x86에서) 간략히 요약한 글입니다. GAS와 AT&T 문법에서는 어셈블리 코드의 형식과 이것이 인텔에서 사용하는 문법과 어떤 차이가 있는지를 나타냅니다. 이 부분은 인텔에서 사용하는 어셈블리(Macro Assembler나 Turbo Assembler)를 알고 있다면 많은 도움이 될 것입니다. Inline Assembly는 C 코드내에서 어셈블리 코드..

추천 사이트

http://publib.boulder.ibm.com/infocenter/iseries/v6r1m0/index.jsp?topic=/rzaue/rzaueprint.htm (강력추천)IBM에서 운영하는 곳이다. 자료 방대하다. http://overoid.tistory.com/3 안드로이드 개발자 추천 블로그 http://developer.android.com 구글 안드로이드 http://www.andengine.org/forums/ 우리가 쓰는 2d engine 커뮤니티 http://code.google.com/hosting/ 구글 오픈 소스 http://blog.naver.com/PostView.nhn?blogId=hot1455&logNo=60126805144&redirect=Dlog&widgetTypeC..

5분기억저장소 2011.04.28

자바에서 문자열 인코딩 방식 바꾸기

new String(바이트 배열,인코딩방식); 예) byte b[]={12,45,12,45,78}; new String(b,"utf-8"); b에 있는 바이트 값들이 utf-8로 되있다는 것을 알려주는 것이다. 즉 utf-8 을 unicode로 변환시켜준다. 예) String str = "테스트"; byte b[]=str.getbytes("utf-8"); str.getbytes() 함수는 문자열을 바이트 배열로 반환시키는 함수이다. getbytes 함수안에 문자 형식을 지정하면 지정된 문자 형식으로 바꾸어 바이트 배열로 반환시킨다. 즉 자바가 사용하는 unicode 문자열을 utf-8로 바꾸어 바이트배열로 반환한다. (리눅스 서버와 자바 클라이언트 프로그래밍시 문자 인코딩 방식이 달라서 사용했던 방법이다..

[자바] 자바 프로그래밍 GUI를 비주얼적으로 하자.

이클립스에 VisualEditor란 플러그인이 있다. 이 플러그인은 자바 GUI를 비주얼적으로 작성가능케한다. 비주얼베이직이나 mfc같이 컴포넌트를 끌어다 놓는 방식으로 ui를 작성할 수 있다. 설치법 1. 이클립스 help -> install new software 를 클릭 2. 새창이 띄워지면 Work with란 레이블이 있다. 그 옆에 주소를 적을수 있는 공간이 있다. 3. 그곳에 http://download.eclipse.org/tools/ve/updates/1.5.0/ 를 적고 엔터를 누르면 밑에 Tools VE가 보일것이다. 4. Tools VE 를 체크 표시하고 next 로 진행하면 설치가 된다. 사용법 file -> new 의 other 을 클릭하고 java 에 Visual Class 가 ..

gdb 를 통한 디버깅 따라하기

gdb 를 통한 디버깅 따라하기 참고서적 : 유닉스 리눅스 프로그래밍 필수 유틸리티 : vi, make, gcc, gdb, cvs, rpm 1. 우선 컴파일 시에 디버깅 정보를 담아야 한다. gcc -g -o [프로그램명] [소스파일명] 디버깅 옵션인 -g 으로 컴파일하며, 최적화 옵션인 -O 은 주지 않도록 한다. 2. 실행방법 gdb [프로그램명] gdb [프로그램명] [core파일명] gdb [프로그램명] [실행중인프로세스pid] 3. 종료방법 q Ctrl + d 4. 소스 찾아가기 (list) l : main 함수를 기점으로 소스의 내용이 출력된다 l 10 : 10 행 주변의 소스가 출력되는데 10 - 5 행부터 10 + 5행까지 총 10행이 출려된다. l func : func 함수의 소스를 출력..

Camera driver(V4L2) 에 관한 간략한 설명

Camera driver(V4L2) 에 관한 간략한 설명 원본 : Camera driver(V4L2) 에 관한 간략한 설명 - MIZI Wiki by 구글캐쉬 V4L2 프로그램 구조(카메라 드라이버와 관련된) - 쓰는 파일오퍼레이션의 종류 mmap() - VIDIOC_REQBUFS를 통해 할당한 버퍼를 mmap을 이용해 유저 공간에 맵핑해서 사용. 원래 read(), mmap(), user pointer 세 가지 경우가 있으나 일단 지금은 mmap()의 경우만 지원함. ioctl() poll() - ioctl operation의 종류 VIDIOC_QUERYCAP (Query Capability) : 드라이버가 할 수 있는 정도를 유저가 요청 VIDIOC_G_FMT (Get format) : 현재 드라이버..

반응형