프로그래밍 QnA

puaxx의 이미지

-_-;;헉...이건 또 왠.....

int code_line2(char *xx,char *yy){
  printf("%s %s\n",xx,yy);
  .
  .
}
.
.
.
printf("%s %s\n",xx,yy);
code_line2(xx,yy);
.
.
.

에서 두 printf문의 결과가 다르네요.....이 황당함..

특히 code_line2안의 printf 문에서는 세그멘테이션 폴트 에러와 함께

xx=0x726573550a0d6d6f

와 같은 엄청난 숫자의 번지수가 들어가 있구요..

중간에 값이 변조 됐다는 건데...전혀 중간에 변수를 만지작 거리진 않거든요? 이럴수도

iamlow의 이미지

[질문] 리눅스 USB Audio 디바이스 드라이버를 만들기 위한 준비

리눅스 USB Audio 디바이스 드라이버를 만들고자합니다.

지금 공부한 것은 리눅스 커널 프로그래밍까지 공부를 한 상태입니다.

USB 디바이스 드라이버는 probe함수를 통해
장치인식까지는 했구요...

그런데.. 인제 오디오 디바이스를 제어 해야 하는데...

자료를 찾아보니 USB관련된 자료들을 구하기가 힘드네요..
어디에 뭐가 있는지 잘몰라서요...

제가 리눅스에서 USB Audio 디바이스 드라이버를 만들기 위해
필요한 것들 책이나 사이트 또는 자료같은 것 좀 추천해주세요..

finder77의 이미지

linker file(.ld) 에서 .bss .data에 대한 질문입니다.

제가 알고 있기로는 .bss section 에는 초기화되지 않은 전역변수
.data section 에는 초기화된 전역변수가 위치하는 것으로 알고 있습니다. 그런데 지금 개발하고 있는 코드의
.map 파일을 확인해 본 결과 초기화된 변수는 .data section에
모두 들어가지만 초기화 되지 않은 변수중에 어떤 것들 역시
.bss 영역이 아닌 .data 영역에 위치합니다.

제가 모르는 다른 linking 규칙이 있는지 궁금합니다.
조언 부탁드립니다.

<컴파일 환경>
compiler : diab compiler 5.0a

ky1031의 이미지

__LINE__ 매크로에 대한 질문입니다.

제가 cups라는 프로세스를 __LINE__라는 메크로를 사용을 해서 디버깅을 하려고하는데요 로그를 찍는 부분에 이것을 추가해서 컴파일을 하니까 컴파일을 되는데요 로그를 보면 안나오네요.. ㅠ.ㅠ
왜 그런지 지금 열심히 찾고있는데 잘 찾아지지가 않습니다.
고수님들의 조언 부탁드립니다.
감사합니다.

litdream의 이미지

context switch 에 대한 정보를 알아낼수 있나요?

performance 에 관계된 자료를 제출해줘야 하는데,
1초에 몇번의 context switch 가 일어나는지 알아내는 방법이 없을까요?
그 context switch 의 overhead 가 어느정도인지 (꼭 시간이 아니라도, clock 사용수같은것) 알아낼수 있나요?

대상 서버는 Linux, FreeBSD 입니다.

gentleyi의 이미지

IP 패킷 fragmentation 처리

Kernel 2.6.8.1을 이용하여 MIPL 을 통하여 IPv6 테스트를 하는데요..

IP fragmentation 처리하다가 Kernel에서 panic이 뜨네요... ㅠㅠ
IPv6에서는 중간 노드에서는 fragmentation 처리를 안하고
종단 노드에서 처리하느것으로 알고 있는데..

현재 현상은 ICMP로 1500 사이즈로 상대편 받아서 이를 받고
ICMP reply 전송하고 중간 노드에서 Packet too long을 되돌려줘서 1500 byte짜리 패킷을 두개로 잘라서 보내줄것 같은데..

이때 etherial로 보면 첫번쨰는 보내는데 두번째는 안나가는것으로 보이는것으로 보아서는 fragment 처리하는 부분에서 문ㅂ제가 있는것으로 보이는데..

moonhyunjin의 이미지

subversion 사용중 궁금해서요..

$ pwd
/home/moon/dep
$ svn co svn://kldp.net/svnroot/sample samdir
...
체크아웃된 리비전 1.
$ cd samdir
소스 수정
$ svn commit -m "commit test"
svn: 커밋이 실패하였습니다:
svn: Connection is read-only

위에만 봤을때 ssh에 대한 정보가 없는거 같아서 .svn/entries을 수정해 줬습니다. svn을 svn+ssh로 바꿔주고 id도 있는거 확인했고요.

그러고 다시 시도 해도 안됩니다. 그래서 아래와 같이 checkout하고 commit했더니 잘됩니다.
[code:1]
$ svn co svn+ssh://id@kldp.net/svnroot/sample samdir

nsa의 이미지

MPC(Media Player Classic)을 빌드할수가 없습니다

gabest 소스포지 CVS에서 파일들을 받아 빌드해보려하는데
아래와같은 오류가 뜨면서 빌드가 안됩니다.
비주얼스튜디오 2005로 시도하였습니다.
소스파일을 첨부할테니 무엇이 문제인지 좀 봐주세요.
[code:1]
------ Build started: Project: mplayerc, Configuration: Debug Unicode Win32 ------
Compiling...
StdAfx.cpp
WINVER not defined. Defaulting to 0x0502 (Windows Server 2003)
c:\program files\microsoft visual studio 8\vc\platformsdk\include\winnt.h(222) : error C2146: syntax error : missing ';' before identifier 'PVOID64'

stong의 이미지

우분투 브리지 Anjuta에서 컴파일 질문..

우분투 브리지(그놈)를 쓰는 유저 입니다.

윈도우즈의 VC와 비슷한 프로그램이 그놈에는 Anjuta가 있다고 해서 1.2.4버전을 설치 했습니다.

근데 소스 파일이 두 개 이상 일 경우 같이 컴파일 하는 방법을 모르겠습니다.
터미널에서는 $ g++ a.cpp b.cpp 하면 a.out이 생기면서 컴파일이 되는데 Anjuta에서는 두개 이상의 소스 파일을 같이 컴파일하려면 어떤 방법이 있는지요. (소스가 하나면 F9 -> F11 -> F3 을 차례로 눌러서 동작을 검사 했었습니다.)

좀 더 자세히 설명하면 C++을 배울려고 하는데 교재에서 보면

singing4u의 이미지

시리얼 포트를 사용하는 tlcd 드라이버를 만드려고합니다..

시리얼 포트를 이용한 tlcd 드라이버를 만드려고 시리얼에 대해
이것저것 알아 봤습니다만 정작 어떻게 정보를 보내는 지에 대한
지식은 없네요..^^;

아래에 어떤 분께서 시리얼 각 핀에 해당하는 레지스터 값을
말씀해 주셔서 생각해 봤습니다....
제가 사용하고자 하는 tlcd는 Rx가 3번핀이고 Tx가 2번핀..
그리고 GND로 5번핀을 사용합니다.
그렇다면 제 pc의 시리얼 3번핀에 해당하는 레지스터로 화면에 출력하고자하는
문자라든지 위치등의 정보를 보내면 되는 건가요?

페이지

프로그래밍 QnA 구독하기