프로그래밍 QnA

zingle의 이미지

solaris에서 한구조체 안에서 멤버1(구조체)이 다른 멤버 참조할


/* 구조체 선언 */
struct st1 {
.....
struct ip *iph;

.....
u_char *buf;
....
}


int main(.....) {
  ....
  struct st1 packet;
  ....
  /* packet.buf에 raw패킷 데이터 입력 */
  ....
  packet.iph = packet.buf + <어쩌구어쩌구값>;
  ....
  handleIP(&packet);
   ....
}


int handleIP(struct st1 *packet) {
  ...
  struct ip *iph = packet->iph;
  ...

  fprintf(stderr, "%d", iph->ip_hl);

  ...

}

리눅스에서 짠 소스를 solaris로 포팅 작업 중입니다.

초코리의 이미지

[질문] DDD에서 한글 코맨트때문에 밀리는 문제...

리눅스에서 DDD로 디버깅을 하려고 합니다.

그전에는 GDB로 주로 디버깅하였는데

DDD의 그래픽한 화면이 맘에 들어 한번 써보려고 하는데요

DDD에서 한글로 된 주석이 나오면 정확하게 동작을 하지않네요.
(예) 한줄이 밀려 인식하는점등..

DDD를 한글 주석이 달린 소스에 쓰려면 어떤점을 수정하여야 할까요..

stypr의 이미지

[질문] 쓰레드 생성하여 scanf실행시

[code:1]
#include <pthread.h>
#include <stdio.h>

void serveIt1();
void serveIt2();

int main()
{
pthread_t tid;

if ( pthread_create(&tid, NULL, (void*) &serveIt2, NULL) ) {
printf("error creating thread.");
}
if ( pthread_create(&tid, NULL, (void*) &serveIt1, NULL) ) {
printf("error creating thread.");
}

blue39의 이미지

Makefile 오류 좀 도와주세요~~

안녕하세요~~

Busybox-1.0을 컴파일 하고 있습니다. 그런데 일반 gcc로 컴파일 하면 아무

문제없이 넘어가는 부분이 mips-gcc로 컴파일만 하면 이런 오류가 발생하네요.

/home/blue39/brecis/uClinux/brecis/tools/mipsisa32-brecis-uclinux/bin/../lib/gcc-lib/mipsisa32-brecis-uclinux/3.2/../../../../mipsisa32-brecis-uclinux/lib/libc.a(__uClibc_main.o): In function `__uClibc_main':
__uClibc_main.o(.text+0xc8): undefined reference to `main'
collect2: ld returned 1 exit status

제가 이걸 컴파일 하면서 뭔가 빠트린 부분이 있나 하는 생각도 드는데 도무지

son50의 이미지

[질문] 두가지, strcpy error 와 extra token

질문은 두가지 입니다. 원래 피리비에서 잘 컴파일되고 데비안 이전 시스템
에서도 잘 되던 놈이 에러가 나네요.

하나는 경고고 하나는 그냥 죽는군요.

경고는 컴파일시에

warning extra tokens at end of #endif directive

이런식으로 #if defined #endif 에서 나는거 같네요.

그리고 두번째는 strcpy() 에서 나는거 같은데요.

원래 피리비에선 이 함수가 strings.h 에 있었던거 같은데

리눅스에선 string.h 에 있는거 같아서 바꾸고 했는데도

죽어버리네요. 메시지는

quintus의 이미지

쉘스크립트로 파일의 내용을 바꾸려고 합니다.

test.txt 파일안의 total=0 이라는 부분을 1만큼 증가시키고 싶거든요

total='grep ^total test.txt | cut -f2 -d "="'
total=$(($total+1))
sed "s/^total=.*/total=$total/"
이렇게 하면 될거 같은데 안 되네요.

아니면
sed 의 substitution을 사용해서
sed "s/^total=./total=$(($.+1))"
이렇게 하면 안되나요??

파일 속의 변수의 값을 증가시키고 싶은데 어떻게 해야하는지...
참 그리고 grep ^total test.txt 의 ^는 파일에서 처음나오는 total이라는 뜻 맞나요?

codeart의 이미지

Disk I/O 의 시간 측정에 대해...

elevator 알고리즘 2 가지에 대하여 시간 측정을 해보고 있습니다.

READ / WRITE 연산을 쓰레드를 늘려가며 측정하고 있는 데...

문제는 buffer cache와 delayed write 입니다.

현재 같은 조건에서도 오차가 심해지는 것은 제가 필요없는 부분까지 시간을
측정하고 또 위의 2가지 때문인 것 같습니다.

정확한 시간 측정을 위한 조언 부탁 드립니다.
확실히 sync 할 수 있는 방법이 있나요?
그리고 buffer cache를 무효화 시킬 방법도 알려주시면 감사하겠습니다.

naisr00t의 이미지

카메라 드라이버 잡기

현재 핸폰의 카메라(Hynix) 드라이버를 잡고 있습니다.
그런데, 이넘의 Hynix Datasheet로는 정보가 정말 많이 부족합니다.
카메라(디지털)의 개념과 기본적인 구현에 대한 것을 구할 수 없을까요?
레지스터의 값등을 세팅하려구 해두 카메라에 대한 기본적인 개념, 정의, 용어등을
모르니까 세팅을 하면서도 뭘 세팅하는지 왜 세팅하는지를 모르겠구요.
그래서 그런지 잘 잡히지두 않네요.
Hynix 측에 연락을 했지만, 제가 가지고 있는 것 이상은 없다고 하네요.

ky1031의 이미지

ipc에 대해서 공부를 하고있는데여 너무 어려워서.... ㅠ.ㅠ

ipc에 대해서 공부를 하고있는데여 너무어려워서....
참고할만한 서적이나 예제 소스나 아니면 사이트라도....
아무거나라도 도움이 될만한것있으면 도움좀 부탁드립니다....^^

kkojiband의 이미지

tags 로 소스 코드 분석할때...?

커널이나 부피가 있는 소스 코드를 볼때 전 tags 를 주로 쓰는데요,

약간 불편한 점이 있습니다....

만약에 커널 소스의 루트 에서 ctags -R * 이렇게해서 tags 를 생성시켜놓고 init 의 main.c 을 살펴본다면 현재 디렉토리에 tags 가 없어서 실행이 안되잖아요...

전 그래서 임시방편으로 .vimrc 의 set tags 에 커널 소스의 tags 를 아예 걸어넣고 사용을 하고 있거든요...

정말 무식한 방법이죠...-_-;;;

이것때문에 파워툴 책도 살펴보고 여기저기 찾아봤는데 마땅한 해결책을 못 찾았습니다...

페이지

프로그래밍 QnA 구독하기