프로그래밍 QnA

nullpointer의 이미지

데몬을 만들때 왜 파일을 close을 하나요?

다음은 제가 인수인계 받은 소스의 일부분입니다.

int GoDaemon(void) {
int i;
pid_t pid;

if ( (pid = fork()) != 0)
{
exit(0); //Terminate. destroy parent - daemon

}

setsid(); // set session leader

if ( (pid = fork()) != 0)
{
exit(0); //Terminate. destroy the 2nd parent - daemon
}

umask(022);
chdir("/");

for (i = 0; i < 64; i++) // clear fd
close(i);

return 0;
}

프로그램을 데몬으로 띄우면 보통 다음과 같이 프로그램을 짜는데

신태관의 이미지

GCC에서 ELF 파일 생성 어떻게 하죠?

일반적으로 LINUX에서 GCC -O 옵션을 주고
컴파일 하면 elf 포맷으로 된 파일이 생성이
됩니다. 그런데 AIX, HP-UX, SOLARIS, Tru64
등에서 컴파일을 하면 다른 포맷으로 나옵니다.
어떻게 하면 ELF 파일 형식으로 나오게 하죠?

관련 인터넷 자료를 찾아보니깐,,,
a.out을 ELF 파일로 변환해서 컴파일 하는
방법이 있데요.

http://ww.telent.net/linux/ELF-HOWTO-1.html

이대로 AIX, HP-UX, SOLARIS, Tru64등에서
설정을 하고 컴파일 한다면 제가 원하는
ELF32로 오브젝트 파일 생성이 가능할까요?

sun1226의 이미지

store procedure 에 대해 물어봐도 되나요...?

프로시져를 만들면 같은 이름으로 만들면 "이미 사용된 객체"라고 나오잖아요..
그러면 프로그램이 죽었다 다시 리부팅되면 계속해서 프로시져가 살아있는지
아님 삭제 명령이 따로 있는지 가르쳐주세요....

또....한가지만더요....
저는 프로시져를 SQL> CREATE PROCEDURE name.....
이렇게 만들거든요...근데 파일로 (name.sql)도 만들수 있나요...
파일로 만들면 @name.sql이렇게도 되는건지...

잘모르겠네요...

fairycat의 이미지

linux/unix에는 msdn이 없나요?

tputs라는 함수를 msdn에서 뒤져도 안나오네요. 리눅스 프로그램을 할때
는 필요한 함수가 어떤 역할을 하는지 어떻게 알수 있나요? 그냥 헤더파
일만 열어보시고 작업하시나요? 구글에서 tputs에 대한건 찾았는데 리눅
스/유닉스도 그런 레퍼런스할 수 있는 검색 사이트같은 것이 없을까 해서
요. 참조할만한 사이트가 있다면 추천 부탁드립니다.

urmajest의 이미지

시그널 블록시키기

안녕하세요
저의 무지를 일깨워주세요 -_-

시그널 블록이란게무시하는게 아니라 나중에 시그널을 보내도록 하는건가요?

예를 들어 SIGUSR1, SIGUSR2, SIGTERM 시그널에 대해 child가 임의의 행

동을 하게 되는데..

아래와 같이 설정하는게 SIGUSR1, SIGUSR2의 핸들러가 실행되는 동안 다른

시그널 핸들러를 실행하지않고 기다리다가, 실행중인 핸들러 실행후에 시그널

을 받아서 처리하게 되나요?

[code:1]
sigset_t mask;
sigemptyset(&mask);

sun1226의 이미지

proc에서 스퀀스에 관한....질문

DB 에서 스퀀스를 num_seq라고 만들었다면..
proc에서 (db에서 만들어서 proc에서 별도로 변수를 만들지 않았음)
EXEC SQL INSERT INTO table values(num_seq.nextval);
이렇게 사용하니깐 에러가 나더라구요...
원래 잘못된 문장인지,,,정상적인 문장인지...
궁금합니다...

bugger의 이미지

스레드가 SIGSTOP 시그날을 받으면서 계속 죽네요..

안녕하세요.

스레드가 뜨자 마자 SIGSTOP을 받아 죽는 이유가 뭘까요?....

무시할수 도 없구..

미리 답변 감사드립니다.

sozu의 이미지

파일을 admin도 지울수 없게 하려면?

모듈에서 파일을 생성하고 작업한뒤...

그 파일을 admin도 지울수 없게 하고 싶습니다.

어떤 방법이 있는지 궁금합니다^^

andrea0705의 이미지

float에서 곱셈...

main()
{
float aaa, bbb;

aaa = 0.817 * 100;

printf( " aaa[%f]...\n", aaa);
}

실행시켜보면 aaa= 81.7 이 나와야 하는데,
실제로 81.699997 이 나옵니다.
물론, printf( " aaa[%.5f]...\n", aaa); 로 하면 제대로 나오는데
aaa라는 변수에 넣을 수가 없어요..
방법을 가르쳐 주세요..

stoneshim의 이미지

spin_lock_irqsave() 에 대하여...

spin_lock 테스트 중에 spin_lock_irqsave(), sin_unlock_irqrestore() 를 사용하면 실행 시에 segmentation fault 를 내며 죽습니다.

아래 소스 중에 spin_lock_irqsave() 대신 spin_lock() 을 사용하고, spin_unlock_irqrestore() 대신 spin_unlock()을 사용하면 잘 돌아갑니다.

spin_lock_irqsave() 나 spin_lock_irq() 를 사용하면 local CPU 의 interrupt를 중지시킨다고 하고, 그냥 spin_lock()은 cpu의 interrupt에 대해서는 아무 처리도 하지 않는다는데.... cpu 의 interrupt에 대해서 정확히 파악되지 않아 안전해 보이는 spin_lock_irqsave()를 사용하려고 합니다.

페이지

프로그래밍 QnA 구독하기