프로그래밍 QnA

impnees의 이미지

실행중인 특정 프로세서의 PID를 구하는 방법이 없을까요..?

안녕하세요..

현재 실행중인 프로세스의 PID를 구하는 방법을 알고 싶습니다.

예를들면 test란 프로스서가 떠 있는데..

이것의 PID를 구하는 방법이죠..

ps -ef |grep -v grep | grep test | grep -n 1 | awk '{print $2}'

이것을 실행 시키면 test 프로로세스의 PID를 화면으로 출력을 합니다.

제가 원하는것은 이 PID를 프로그램상으로 변수로 받아 올수 있냐 하는것이죠..

따로 쓸수 있는 함수나 방법이 있으시면 답변 부탁드립니다.

wfellow의 이미지

/usr/include/bits/waitstatus.h 관련한 error의 원인을 알고나니,...

정말 허탈하군요. pthread를 사용하는 소스에 vfork/exec를 사용하는 부분을 추가 하다가 아래와 같은 에러를 만났습니다.

Quote:
orange SQLAP # make
gcc -Wall -I. -I../LIB -I../SQLXX -I../SQLKM -I../SQLDB -I../SQLTL -c sqlap.c
In file included from /usr/include/sys/wait.h:79,
from sqlap.c:30:
/usr/include/bits/waitstatus.h:78: error: duplicate member `__w_retcode'
/usr/include/bits/waitstatus.h:79: error: duplicate member `__w_coredump'
/usr/include/bits/waitstatus.h:80: error: duplicate member `__w_termsig'
pok의 이미지

멤버변수에 할당하기

class InputFile {
	public:
		...
		Pcb* getPcbIndex(){return pPcbIndex_;}
		...
	private:
		...
		void makePcb();
		Pcb* pPcbIndex_;
		...
};

void InputFile::makePcb(){
	...
	pPcbIndex_ = new Pcb[50];
	...
}

makePcb()로 Pcb를 할당하고 멤버변수인 pPcbIndex_에 주소를 포인팅한후, getPcbIndex로 포인터를 받아서 사용하려합니다.

컴파일에서는 문제 없었는데, 세그멘트오류가 나는군요.
아마 new와 관련되서 뭔가를 놓치

pok의 이미지

멤버함수를 함수포인터로 쓸수 있나요?

class Ipc {
	public:
		....
		void setSig();
	private:
		....
		void p_action(int sig){printf("Parent:\n");}
		void c_action(int sig){printf("Child:\n");}
		struct sigaction pact, cact;
};

void Ipc::setSig(){
	pact.sa_handler = p_action;
	sigaction(SIGUSR1, &pact, NULL);
	cact.sa_handler = c_action;
	sigaction(SIGUSR2, &cact, NULL);
}

이런식으로 시그액션함수에 맴버함수를 포인터해서 쓰려고합니다.
devk의 이미지

str2hex

void str2hex(const char s[], char dest[], int n) 
{ 
    // 주어진 문자열을 헥사코드 형태로 출력한다. 

    for(int i = 0;n-->0;s++, i += 2){ 
     sprintf(dest + i, "%0.2x", *s); 
    } 
}

이진파일을 읽어서 hex코드로 나타내고자 합니다.

그런데 저 코드를 사용시에 중간에 1개의 문자가 FF로 바뀐다던지 중간에 FFFFFF 같은게 껴서 출력됩니다..

왜 그런건지 잘 모르겠습니다..

잘못된점을 좀 알려주세요 ( __) 그리고 더 나은 코드가 있으시다면..

superkkt의 이미지

Pseudo code??

Pseudo code.. 이게 뭔가요? 가끔 여기 글들을 읽다보면 이 단어가 종종 나오던데요.. OS 공부할때도 Pseudo device, Pseudo terminal 등등 자주 나왔는데 별관심 안가지고 그냥 넘어갔었는데요..

사전 찾아보면 허위의, 가짜의, 모조의 이런 뜻으로 나오는데.. 허위 코드.. 가짜 코드.. 허위 터미널.. 가짜 터미널... :oops:

이한길의 이미지

J2SE 5.0의 ArrayList와 Vector의 차이는 뭔가요?

제가 보기에는 거의 차이가 없어보입니다..

그런데 두가지가 존재하는건 분명 차이가 있을 텐데..

무슨 차이가 있는지 궁금합니다..

freesky의 이미지

C++에서 파일 출력 시 파일 오류 확인은?

질문 내용 그대로입니다.

파일에 내용을 출력하려는데 이미 해당 파일이 있는지 확인하는 부분 좀 알려 주세요..

저번에 이와 관련된 질문을 했는데 그 때 잊고 질문을 적지 못했습니다.

현재 갖고 있는 책이 부실합니다.

내용이 더 풍부한 C++ 책을 한 권 사야겠어요..

컴파일러는 Borland C++ 3.1입니다. (꽤 오래된 것이죠..)

superkkt의 이미지

파일에 구조체 자체를 저장하고 나중에 읽어서 사용할때..

	struct kkt {
		int a;
		char b[128];
		float c;
	} kkt = { 255, "superkkt", 3.1415 };

	fd = open("tempfile", O_RDWR | O_TRUNC | O_CREAT, S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH);
	write(fd, &kkt, sizeof(kkt));

이렇게 구조체 자체를 파일에 저장하고 나중에 불러서 쓰는 방법이 무조건 잘못된 건가요? 책에 보면 이기종간에 이런 방법은 호환성이 없다고 되어 있는데요.. 네트웍 프로그램이 아니라 단일 시스템에서만 작동하는 프로그램의 경우에는 이렇게 구조체 자체를 파일에 기록해도 문제가 없는건가요?

r0x2tk1t의 이미지

임베디드 프로그래밍?!

안녕하세요??

매일 눈으로 보기만 하다가, 오랜만에 글을 씁니다.

다름이 아니고..

제가 '펌웨어' 에 관심이 생겼습니다.

정확히 말하자면, mp3나 psp 같은-

그래서 펌웨어에 대해 공부를 해볼려고 합니다.

우선, 논리회로.회로이론.전자회로 :: 회로3종셋트.

를 공부할려고 하는데, 추천하시는 책 있다면 알려주세요!!

또, 책은 아니라도 공부하는 방법이나 도움이 될만한 사이트, 내용등

조금이라도 아시는 내용이 있다면 알려주세요-

덧.

페이지

프로그래밍 QnA 구독하기