[ CnUnix ] in KIDS 글 쓴 이(By): HellCat () 날 짜 (Date): 1995년04월04일(화) 22시57분07초 KST 제 목(Title): re: signal 11 from compiler 큰 프로그램을 콤파일/링크 시키려면 메모리가 상당히 많이 필요합니다..특히 라이브러리들도 일단은 한꺼번에 메모리에 로드를 한담에 필요한거 뽑아내서 링크를 시켜 주기때문에 메모리가 많이 필요 할수 밖에 없지요. 근데..들리는 바에 의하면 리눅스의 경우 콤파일할때 메모리가 부족하면 이 signal 11 이 날라온다고 하는 소문이 있더군요. 가능한 해결책은 메모리 늘리는 것이 최선일테고 우선 궁여지책으로 스왑을 늘릴수도 있겠지요. 근데..이 스왑의 개념이.. 리눅스 경우 머 속을 까보지 않아서 모르겠는데.. 결코 그냥 피지칼 메모리에 연결되어서 메모리가 그만큼 늘어난것이 되는 그런 간단한 문제가 아닙니다 - 적어도제가 알고 있는 시스템에서는.. 예를 들어서 메모리 4 메가 에 스왑 12 메가 해서 16 메가짜리 프로그램이 4+12 에 들어갈수 있다는 것은 잘못된거지요. 4 메가 메모리에서 스왑에어리아로 뽑아주고 다른 프로그램을 로드 시켜 주고 다시 스왑해주고 원래꺼 넣어주고 이런식이지 스왑을 늘린다고 그게 그냥 메모리가 늘어나는 역활을 하는게 아니라는 거지요.. 그냥 많은 사람이 그런식의 개념으로 말씀을 하는 것 같아서.. --- if (t_snddis(KIDS[i].fd, (struct t_call *)NULL) == -1) { t_error("날 죽여라!!"); longjmp ((jmp_buf) HELL, -1); } |