Cytoscape 를 실행시키면 다음과 같은 에러 메세지가 뜰 수가 있다.
The JVM count not be started. The maximum heap size (-Xmx) might be too large or an antivirus or firewall tool could block the execution.
이 에러는 JVM이 올라가기엔 설정된 메모리가 너무 크다는 의미인데, 일단 해결책을 살펴 보고 에러의 뜻이 무엇인지 조금 자세히 알아 보자.
위와 같은 에러가 나타났다면, 일단 Cytoscape 가 설치되어 있는 경로로 간다. 일반적으로 C:\Program Files\Cytoscape 일 것이다. 그 곳에 가면 gen_vmoptions.bat 파일이 보일 것이다. 그것을 실행시키면 조금 있다 Cytoscape.vmpotions 라는 파일이 생성된다. 바로 안 나타나면 새로 고침(F5)을 한다. 그 파일은 실은 텍스트 파일이므로, 따라서, 메모장을 실행시키고 메모장에서 Cytoscape.vmoptions 파일을 불러 온다. 그러면 다음과 같은 내용이 있다.
-Xms10m
-Xmx1550m
-Dswing.aatext=true
-Dawt.useSystemAAFontSettings=lcd
-Xmx1550m
-Dswing.aatext=true
-Dawt.useSystemAAFontSettings=lcd
위에서 -Xmx 1550m 의 숫자를 1000m 정도로 바꾼 후 저장을 한다. 그리고 다시 Cytoscape 를 실행시킨다.
-Xms10m
-Xmx1000m
-Dswing.aatext=true
-Dawt.useSystemAAFontSettings=lcd
그러면 무리 없이 실행될 것이다.
위는 Cytoscape 가 자바로 만들어져 있기 때문에 발생한 것인데, 자바는 Java Virtual Machine 이라는, 가상의 운영체제를 먼저 구동시킨 후, 그 위에서 자바로 만들어진 프로그램들이 실행되게 작성되어 있다. 그러므로 일단 virtual machine 을 구동시킬 때 얘한테 사용할 적정 메모리(RAM)을 할당해 준다. 그런데, 기본으로 설정되어 있는 1.55GB 가 너무 크면 아예 virtual machine 을 구동시킬 수 없기 때문에, 이 값이 너무 크다고 위와 같은 메세지가 뜬 것이다. 일반적으로 Windows XP의 경우 대략 1GB 정도를 운영체제가 먹고 있는 것 같은데, 따라서 만약 컴퓨터에 붙어 있는 RAM이 2GB 이면 1GB 만 빈 곳으로 남으니까 1.55GB 를 virtual machine 한테 주라고 하면 에러가 날 수밖에. 따라서 자신의 RAM 용량에 적절히 저 -Xmx 값을 설정해 주면 되겠다. 램의 값을 보는 단축키는 시작 + Break 이다.
'컴퓨터 > 자질구레 팁' 카테고리의 다른 글
몇 가지 유용한 함수들 만들어 사용하기 (4) | 2011.05.06 |
---|---|
synergy : 여러 본체에서 키보드와 마우스 공유하기 (0) | 2011.03.11 |
매틀랩에서 히스토그램 선으로 그리기 (2) | 2011.03.09 |
정규표현식의 최소일치(non-greedy match) (2) | 2011.02.21 |
리눅스에서 무슨무슨 so 파일이 없다고 할 때 (5) | 2011.02.16 |