프로그램 내에서 process name 얻는 방법 ???

air74의 이미지

안녕하세요.

매번 엉성한 질문만 하네요.

getpid(); 의 경우 process ID 를 얻어 오는데.

프로그램 내에서 process_name 을 얻어오는 방법이 없을까요?

그럼 고수님들의 조언 부탁 드립니다.

감사 합니다.

dondek의 이미지

argv[0]

진리를 나의 수준으로 끌어내리지 마라.
나를 진리의 수준으로 끌어올려라. - 배꼽 중에서

air74의 이미지

argv[0]을 쓸 수 없는 상황 입니다. ㅠㅠ

방법이 없을까요?

어설푼 이..

맹고이의 이미지

pid로 /proc 을 뒤지면 될 것 같은데요.

vinus의 이미지

어떤 상황에서 argv[0]를 사용할 수 없는 상황이 될수 있는지 궁금합니다.

어쨋던 사용하지 못하신다니까...
환경 변수에서 잘찾아 보십시오.

만약 /proc하위에서 찾고 싶으시다면..

시스템이 리눅스혹은 솔라리스라면,
/proc/pid/내의 파일로 부터 읽을 수 있습니다.
리눅스의 경우 간단히 cmdline라는 파일을 읽는 것으로 하시고자 하는 일을
할 수 있을 것 같습니다.

만일 솔라리스라고 한다면, usr/include, 하위를 잘 뒤져 보시면, 시스템 상태관련
헤더파일 을 찾을 수 있을 겁니다.
시스템 상태에 대한 구조도 그쯤에서 정의 되어 있는 것을 볼수 있을 겁니다.

>>>행복한 웃음<<<