CnUnix

[알림판목록 I] [알림판목록 II] [글목록][이 전][다 음]
[ CnUnix ] in KIDS
글 쓴 이(By): HellCat (reentrant.� )
날 짜 (Date): 1995년07월12일(수) 11시50분09초 KDT
제 목(Title): 야곱 님 질문있어요.



시스템이 맛이 가는 정도가 어느 정도에요?


out of swap 이 됩니까?


그정도 까지 되면 가비지 콜렉션 들어가는 것도
300 메가 씩이나 하면 꽤 시간이 걸릴꺼에요 리커버가 된다해도
말이죠.

그리고 SunOS 4.1.4 쓰세요.

대부분 커늘 자체내에서 필요한 메모리는 아예 락이 되어있어서
지장이 없을 지 모르지만 시스템 자체내에 중요한
커늘 밖으로 돌아가는 중요한 프로세스들 자체가
스왑이 모자랄때 마침 메모리가 필요하게 된다는 둥
하게 될경우 그 프로세스 자체가 맛이 가면
그때는 정말 리부트 하는 수밖에 없죠.


예를 들어..스왑이 막 맛이 갔을때.

로긴을 할려고 막 하는데 그 로긴을 받아주는 프로세스를
spawn 해주다 메모리 부족 맛이 가기 시작하면
스폰 해주는 프로세스는 에러니까 다시 하려 하고
다시 또 메모리 부족으로 맛이가고..근데..그 re-spawn 해주는
속도가 타이트 룹 안에서 엄청난 속도로 해주게 되서
아무리 키보드를 빨리 친다해도 그 사이에 낑겨 들어
딴걸 하기에는 엄청난 인내심이 필요로 하지요.

즉 악순환이 계속 되는 불행한 사태도 가능합니다.



일단 어느정도 명령들을 실행할수있는 경우에는

top 을 실행 시켜 줘서 머가 그렇게 메모리를 쓰고 있는지
한번 검토 해보실 필요도 있지요.

시스템 디몬 프로세스가 맛이 가서..메모리를 말아 먹고
있게 될수도 있거든요 (스왑에러의 사이드 이펙트로 말이죠)


결국 그런 경우는 리부트 하니면 그 특정 프로세스를
죽이고 다시 시작해줘야 하겠죠.



근데..제 경우에는 일단 스왑 에러 한번 나면 리부트 합니다.


괜히 찝찝해서.. 괜히 제 실수로 잘못 되는 것도
이거 혹시 스왑에러 한번 나고 나서 사이드 이펙트 아닌가
하는 구실이 생기거든요.


몇몇 벤더들과 이야기 해본 결과는 스왑에러가 로그 될 경우
그 이후로 시스템 자체 기능이 undefined 라고
하면서 약을 올리더군요.. 그러면서 저보구 리부트 해서
쓰라는 황당한 대답을 들은 적도 있지요.



대게 메모리 싸이즈의 1.5 배 에서 2 배 이상은 사실
그리 필요가 없는데..


---
  if (t_snddis(KIDS[i].fd, (struct t_call *)NULL) == -1)
    { t_error("날 죽여라!!"); longjmp ((jmp_buf) HELL, -1); }
[알림판목록 I] [알림판목록 II] [글 목록][이 전][다 음]
키 즈 는 열 린 사 람 들 의 모 임 입 니 다.