현재 system에 올라와 있는 Task확인

|
process id list는 /proc 안에 전부 들어 있따
system이 알아서 관리!
그럼 이것을 뽀개보쟝!
proc 안에보면 각 디렉토리가 번호로 되어 있다
이 번호가 process id가 되겠다
HP UNIX기준 /proc/pid/psinfo <== 요녀석이 process 정보를 가지고 있는 넘 되겠다

이 녀석에 내용을 어떻게 읽어오는지에 대해서 하루 종일 찾아 해맸다 -_-;
정확히 말하자면 psinfo내용을 담을 구조체를 찾고 있었다고 해야 정확하겠지..
검색 결과 pstat.h안에 내용이 정의 되있으니 뒤져보면 된다는 것!
허나 아무리 찾아봐도 pstat.h는 존재 하지 않음 !
find / -name pstat.h
-_-? 내용 없음!
쳇..

결국 header를 뒤지기로 결심! 비슷한 이름의 header를 뒤지기 시작했다!
우선 proc부터 차근 차근.. 그랬더나 한녀석이 폭! 튀어나 오더군..
바로 procfs.h라는 녀석! 그래서 이녀석을 이용해 codeing을 시작해서 결과를 볼려고 하니
에러가 폭! 떨어져버리는군.. 내가 import했던녀석은 <sys/procfs.h>
그런데 안에는 내용이 정의가 되어 있는데 없다고 나오는 어처구니 없는 현상!

결국 procfs를 시작으로한 검색이 시작됬다!
업무 종료 30분전에 발견한 web문서! sun solaris에 있는..
그래서 다시 안에 있는 내용을 기반으로 작성을 했는데 문제는 <sys/procfs.h>가 아니라
<procfs.h> -_-;; 장난도 아니고 ;; 이걸로 한 2시간 보낸거 생각하면 짜증이 ㅜㅜ

결국은 해냈지만 -_-v 힘들었다..

대략 code를 보자면



대략 이런 형태?
아직 완성된게 아니라서 올리가 민망하군 -_-;;

대략 logic부분을 설명하자면 이렇다
/proc 안에 있는 내용을 읽는다
안에 내용이 이상한게 아니라면 file 이름을 setting 물론 경로 포함!
디렉토리가 수치일 경우 /proc/pid/psinfo내용을 읽어 psinfo구조체에 집어 넣는다
그리고 이름을 뿌려본다!
된다면 반절이상은 성공(난 반성공 -_-v ㅋㅋㅋ)
이제 남은건 특정 txt file을 만들어 거기에 Task이름을 등록 시킨뒤
현재 process 내용에 Task내용이 없다면 해당 경로에 있는 Task 실행!
이렇게 하면 Unix용 whatch dog 제작 완료!
물론 log는 필수! 현재 whatch dog이 실행한 시간!
그리고 Task가 죽었을경우 죽은시간과 Task살린 시간을 기록!
완.벽.해! ㅋㅋㅋ
And