http://weltall.heliohost.org/wordpress/2011/05/14/running-vmware-workstation-player-on-linux-2-6-39-updated/


PDATE5: As it seems many are using still the 7.1.x series of vmware. As vmware didn’t update the kernel sources in there but only for 8.0.0 (I wonder why… maybe marketing reasons), as some have pointed out in the comments, in order to make these patches work you just need to change the version of vmware stated in the patch script to 7.1.5 instead of 7.1.4. Same goes for the player from 3.1.4 to 3.1.5.

UPDATE4: A fix for guest kernel modules is available here

UPDATE3: It seems the patchv3 had a little bug, which prevented, at least,  building on linux 3.0.0-rc1, I’ve replaced the file so if you’ve downloaded the archive before you’ve seen this update please get it again (even more if you had issues with it)

UPDATE2: I’ve added the script which was frequently used for vmware patches in the past (had also to fix it in order to make it handle vmblock) and I’ve also updated the patch to pass the correct variable to kern_path function. vmware2.6.39patchv3.tar

This is an update to the previous post fixing some issues with the patch in the vmblock module (so it doesn’t crash anymore and it initializes properly) and should support building also on previous kernels.

Even though VMware updated their packages to support up to 2.6.38 kernel series the support for linux is still quite lacking as they forgot entirely to support 2.6.39 which was just released.

So, as it seems no one bothered yet according to google and vmware community, in order to overcome this problem I had to put my hands at sources in order to make the modules build and run under this new version of the kernel. So little by little I’ve removed many of remaining things needing the BLK or which used wrongly SPINLOCK defines (we are talking of defines which were discouraged use since some years according to kernel documentation floating around).

The process was quite successful and I could run the VM well.

Attached Files:

  • patch vmware patch for linux 2.6.39 (v2)

    Perfectly working patch for vmware in order to use it with the linux 2.6.39 kernel

  • vmware2.6.39patchv3.tar

    This patch fixes vmware products module kernels in order to run on linux 2.6.39. Changelog from the second patch: -fixed a wrong varriable being passed to kern_path -added a script based on Artem S. Tashkinov's work (it needed to be fixed in order to patch also vmblock)


'' 카테고리의 다른 글

VMWARE workstation 7.1.4 patch for kerenel 3.1  (0) 2013.06.28
NX Client 속도 향상  (0) 2013.04.27
[명령어] 특정유저 프로세스 강제 종료 명령어  (0) 2013.04.08
NX 단축키  (0) 2013.04.05
Eclipse 속도 향상 팁  (0) 2013.03.06
Posted by 라판
TAG vmware

screen

툴/일반 2013.06.14 16:08


http://aperiodic.net/screen/quick_reference

- 스크린에 대한 짤막한 레퍼런스 

screen Quick Reference

Getting in

start a new screen session with session namescreen -S <name>
list running sessions/screensscreen -ls
attach to a running sessionscreen -r
… to session with namescreen -r <name>
the “ultimate attach”screen -dRR (Attaches to a screen session. If the session is attached elsewhere, detaches that other display. If no session exists, creates one. If multiple sessions exist, uses the first one.)
detach a running sessionscreen -d <name>

Escape key

All screen commands are prefixed by an escape key, by default C-a (that's Control-a, sometimes written ^a). To send a literal C-a to the programs in screen, use C-a a.

Getting out

detachC-a d
detach and logout (quick exit)C-a D D
exit screen“C-a : quit” or exit all of the programs in screen.
force-exit screenC-a C-\ (not recommended)

Help

See helpC-a ? (lists keybindings)

The man page is the complete reference, but it's very long.

Window Management

create new windowC-a c
change to last-visited active windowC-a C-a (commonly used to flip-flop between two windows)
change to window by numberC-a <number> (only for windows 0 to 9)
change to window by number or nameC-a ' <number or title>
change to next window in listC-a n or C-a <space>
change to previous window in listC-a p or C-a <backspace>
see window listC-a " (allows you to select a window to change to)
show window barC-a w (if you don't have window bar)
close current windowClose all applications in the current window (including shell)
kill current windowC-a k (not recommended)
kill all windowsC-a \ (not recommended)
rename current windowC-a A

Split screen

split display horizontallyC-a S
split display verticallyC-a | or C-a V (for the vanilla vertical screen patch)
jump to next display regionC-a tab
remove current regionC-a X
remove all regions but the current oneC-a Q

Scripting

send a command to a named sessionscreen -S <name> -X <command>
create a new window and run ping example.comscreen -S <name> -X screen ping example.com
stuff characters into the input buffer
using bash to expand a newline character
(from here )
screen -S <name> [-p <page>] -X stuff $'quit\r'
a full example
# run bash within screen
screen -AmdS bash_shell bash
# run top within that bash session
screen -S bash_shell -p 0 -X stuff $'top\r'
 
# ... some time later
 
# stuff 'q' to tell top to quit
screen -S bash_shell -X stuff 'q'
# stuff 'exit\n' to exit bash session
screen -S bash_shell -X stuff $'exit\r'

Misc

redraw windowC-a C-l
enter copy modeC-a [ or C-a <esc> (also used for viewing scrollback buffer)
pasteC-a ]
monitor window for activityC-a M
monitor window for silenceC-a _
enter digraph (for producing non-ASCII characters)C-a C-v
lock (password protect) displayC-a x
enter screen commandC-a :
quick_reference.txt · Last modified: 2013/05/31 16:24 by 216.46.98.249 · Currently locked by: 15.195.185



' > 일반' 카테고리의 다른 글

screen  (0) 2013.06.14
Launchy  (0) 2013.04.11
FreeNX : VNC을 대신할 RemoteDesktop (번외 eclipse 속도 tip)  (0) 2012.11.08
tightvnc에서 텍스트 복사/붙여놓기  (0) 2012.11.02
Posted by 라판
TAG screen

NX Client 속도 향상

2013.04.27 02:25

한때 회사 노트북을 받아 집에서 코딩을 하는 꿈에 부풀어 있다가, 

VPN으로 인한 어쩔 수 없는 NX의 퍼포먼스에 실망했었다. 

그러나 계속 남는 아쉬움 끝에 여러 가지 최적화 방법을 찾아봤고, 아래 NX Client Guide를 통하여 나름 쓸만한 환경이 되었다. 

http://www.nomachine.com/documents/configuration/client-guide.php

설정의 핵심은 

  • 최대한 필요없는 암호화 및 기능 제거 
  • 최대한 각종 압축률을 높이거나 이미지 퀄리티 낮춤

 

세부 설정

  • Desktop Link Type - ADSL
    • Link Type에 따라 lazy encoding level이나 각종 압축률이 증가한다고 한다. 일단 VPN을 쓰는 입장에서 속도는 ADSL이 제일 비슷할 것 같고 이게 제일 좋은 성능을 보여줘서 ADSL 낙점! 
  • Display Setting - Use custom settings
    • Only use JPEG Compression - 어차피 코딩만 하므로 압축률 좋은 JPEG 사용 
    • Use custom JPEG quality - 과감히 0! 최대한 낮춰라! 어파치 코딩만 하는데 좋은 이미지는 필요없다
  • Advanced

쓰고 나니, 오히려 이것저것 체크해놔서 느렸었구나 ㅡ.,ㅡ. 

그냥 Link Type만 ADSL로 해놔도 빨라졌을 것을; 


어쨌든 앞으로는 집에서도 즐겁게 코딩할 수 있어 기쁘다 ㅜㅜ 

카페에서 커피와 함께 코딩하는 로망이 실현되겠구나. 


ps. 참고로 VPN 게이트웨이는 상해가 제일 빠르다(제일 가까우니까)


'' 카테고리의 다른 글

VMWARE workstation 7.1.4 patch for kerenel 3.1  (0) 2013.06.28
NX Client 속도 향상  (0) 2013.04.27
[명령어] 특정유저 프로세스 강제 종료 명령어  (0) 2013.04.08
NX 단축키  (0) 2013.04.05
Eclipse 속도 향상 팁  (0) 2013.03.06
Posted by 라판
TAG NX

Launchy

툴/일반 2013.04.11 17:39

본래 단축키 사용을 위해 hotkey를 사용했는데, 회사 동료분이 마치 검색하듯이 프로그램을 찾고 수행하시는 거보고 한번 써보기로 했다. 


Launchy!! 

http://www.launchy.net/


' > 일반' 카테고리의 다른 글

screen  (0) 2013.06.14
Launchy  (0) 2013.04.11
FreeNX : VNC을 대신할 RemoteDesktop (번외 eclipse 속도 tip)  (0) 2012.11.08
tightvnc에서 텍스트 복사/붙여놓기  (0) 2012.11.02
Posted by 라판

특정 사용자와 관련된 모든 프로세스를 죽이는 명령어 
 

% kill `ps -ef | grep 특정ID | awk '{print $2}'` 

 

kill -9 `ps -fu USERNAME | awk '{print $2}'`

 

kill다음에 나오는 `은 `와 ` 사이에서 실행되는 결과값을 되돌린다는 것을 의미하며 따라서 ps -ef(BSD계열에선 -aux)을 통해 grep으로 들어간 프로세스 테이블 리스트들은 특정ID에게 소유된 것만 걸러 지게 되고 awk를 통해 프로세스 리스트의 두번째 컬럼 부분의 프로세스 ID가 다시 걸러 지게 되며, 최종적으로 이 값이 kill에 전달된다. 



http://blog.naver.com/PostView.nhn?blogId=wawoo33&logNo=60146917607

'' 카테고리의 다른 글

VMWARE workstation 7.1.4 patch for kerenel 3.1  (0) 2013.06.28
NX Client 속도 향상  (0) 2013.04.27
[명령어] 특정유저 프로세스 강제 종료 명령어  (0) 2013.04.08
NX 단축키  (0) 2013.04.05
Eclipse 속도 향상 팁  (0) 2013.03.06
Posted by 라판

 한번에 여러개의 파일을 편집 할 경우, 각각의 파일을 열고 닫을 필요 없이 한번에 작업할 수 있다.


(1) file1.c, file2.c, file3 파일을 한번에 작업 할 경우

vi file1.c file2.c file3.c

위 명령으로 3개의 파일을 열 경우 초기에 file1.c 를 출력한다.

- :ls             - 버퍼의 내용을 보여준다.
- :b[N]         - 버퍼의 N번째 작업 file로 이동.
- :bp            - 버퍼의 이전 작업 file로 이동.
- :bn            - 버퍼의 이후 작업 file로 이동.
- :bw           - 현재 작업파일 버퍼에서 삭제.


(2) vim 설정 파일에 키 매핑 추가
: 사용자의 홈 디렉토리에 .vimrc 파일을 생성하면 vim은 실행할 때 ~/.vimrc 파일을 읽어 실행한다.
  .vimrc 파일은 vim 설정 파일로, vim이 실행될 때 ~/.vimrc 파일에 적힌 명령을 차례로 수행한다.

○ ~/.vimrc파일을 열어 다음 내용을 추가하자.

map ,1 :b!1<CR>  "1번파일 버퍼로 이동
map ,2 :b!1<CR>  "2번파일 버퍼로 이동
map ,3 :b!1<CR>  "3번파일 버퍼로 이동
map ,4 :b!1<CR>  "4번파일 버퍼로 이동
map ,x :bn!1<CR>  "다음파일 버퍼로 이동
map ,z :bp!1<CR>  "이전파일 버퍼로 이동
map ,w :bw!1<CR>  "현재파일 버퍼 닫음

※ 여러 파일을 작업중 ",1" 단축키로 1번 파일 버퍼로 이동, ",2" 단축키로 2번 파일 버퍼로 이동 합니다.
    ( "는 .vimrc에서 주석을 의미 )


http://mintnlatte.tistory.com/171


' > 개발' 카테고리의 다른 글

VIM - 여러 파일 편집  (0) 2013.04.08
Eclipse에서 다른 유저의 프로세스 debug  (0) 2013.04.05
GDB에서 특정 쓰레드만 멈추게 하는 법  (0) 2013.03.27
vi 설정  (0) 2013.02.22
Difftool  (0) 2012.12.17
No repository found in Eclipse  (0) 2012.11.27
Posted by 라판
TAG vi

NX 단축키

2013.04.05 16:05

How to use NX keyboard shortcuts 
If you want to switch back from a fullscreen session to your native OS desktop, you can click on the 'magic pixel' on the upper right edge of your screen.

Keystrokes available in NX 3.x

      Ctrl + Alt + Shift + Esc to get rid of a not responding session

      Ctrl + Alt + T to terminate a session

      Ctrl + Alt + F to switch to fullscreen/windowed (Note: This feature is not
      available on Windows)

      Ctrl + Alt + Shift + F to switch to multimonitor fullscreen/windowed 
      (Note: This feature is not available on Windows) 

      Ctrl + Alt + M to minimize or maximize fullscreen window

      Ctrl + Alt + arrow keys to viewport navigation

      Ctrl + Alt + keypad arrow keys to viewport navigation (Note: this action 
      is performed also by keeping Ctrl + Alt pressed and dragging the
      content of the main window by the pointer)

      Ctrl + Alt + R to switch "auto-resize/viewport" mode. The agent starts 
      in auto-resize mode, so users can resize the desktop simply by resizing 
      the main window. In viewport mode, resizing the main window doesn't
      make the desktop resize itself, but users can navigate the desktop by 
      moving the viewport (Note: the auto-resize feature will be available on 
      Windows starting with NX 4.0.0)

      Ctrl + Alt + E to toggle the lazy encoding

      Ctrl + Alt + J to force a drawable's synchronization, in order to attempt
      a fix for a visualization problem

      Alt + F4 when the window manager is present, it allows you to suspend
      or terminate a session

      Ctrl + Alt + K  enable/disable the catching of Alt+Tab and Print Screen
      keys 



출처 : http://www.nomachine.com/ar/view.php?ar_id=AR03C00172

'' 카테고리의 다른 글

VMWARE workstation 7.1.4 patch for kerenel 3.1  (0) 2013.06.28
NX Client 속도 향상  (0) 2013.04.27
[명령어] 특정유저 프로세스 강제 종료 명령어  (0) 2013.04.08
NX 단축키  (0) 2013.04.05
Eclipse 속도 향상 팁  (0) 2013.03.06
Posted by 라판
TAG NX

Eclipse를 쓰다보니 디버깅도 Eclipse로 하고 싶어졌다. 

문제는 로그인한 유저와 디버깅 대상 프로세스가 실행되고 있는 유저가 다르다는 것. 

"C/C++ Attach to Application"을 사용하려 해도, 해당 프로세스에 대한 권한이 없어서 안된다. 


이를 해결하기 위해 첫 번째 해야 될 일은 "sudo gdb"이다. 

이렇게 하면, gdb를 실행할 때 root로 실행하기 때문에 다른 프로세스에 접근할 수 있게 된다.

그러나 실제로 위를 실행하면 실행이 안 되는데,  sudo를 할 때 패스워드를 입력해야 되어 프롬프트에서 멈추게 되는데, eclipse에서는 이를 입력할 수 있는 방법이 없다. 

그래서 두번째로 해야 될 일은 현재 유저가 gdb에 대해서는 root로 실행할 때 패스워드를 입력하지 않아도 되게 하는 것이다. 이는 root로 접속하여 visudo를 실행하여 아래와 같이 수정한다. 

<users> ALL=(root) NOPASSWD:<program>



이제 root 권한으로 이클립스에서 타 유저의 프로세스를 디버깅할 수 있게 된다. 


출처:http://stackoverflow.com/questions/2891356/how-to-debug-application-as-root-in-eclipse-in-ubuntu


' > 개발' 카테고리의 다른 글

VIM - 여러 파일 편집  (0) 2013.04.08
Eclipse에서 다른 유저의 프로세스 debug  (0) 2013.04.05
GDB에서 특정 쓰레드만 멈추게 하는 법  (0) 2013.03.27
vi 설정  (0) 2013.02.22
Difftool  (0) 2012.12.17
No repository found in Eclipse  (0) 2012.11.27
Posted by 라판

http://sourceware.org/gdb/onlinedocs/gdb/Non_002dStop-Mode.html#Non_002dStop-Mode

In non-stop mode, when a thread stops to report a debugging event, only that thread is stopped; gdb does not stop other threads as well, in contrast to the all-stop mode behavior. Additionally, execution commands such as continue and step apply by default only to the current thread in non-stop mode, rather than all threads as in all-stop mode. This allows you to control threads explicitly in ways that are not possible in all-stop mode — for example, stepping one thread while allowing others to run freely, stepping one thread while holding all others stopped, or stepping several threads independently and simultaneously.

To enter non-stop mode, use this sequence of commands before you run or attach to your program:

     # Enable the async interface.
     set target-async 1
     
     # If using the CLI, pagination breaks non-stop.
     set pagination off
     
     # Finally, turn it on!
     set non-stop on

You can use these commands to manipulate the non-stop mode setting:

set non-stop on
Enable selection of non-stop mode. 
set non-stop off
Disable selection of non-stop mode. 
show non-stop
Show the current non-stop enablement setting.

Note these commands only reflect whether non-stop mode is enabled, not whether the currently-executing program is being run in non-stop mode. In particular, the set non-stop preference is only consulted when gdb starts or connects to the target program, and it is generally not possible to switch modes once debugging has started. Furthermore, since not all targets support non-stop mode, even when you have enabled non-stop mode, gdb may still fall back to all-stop operation by default.

In non-stop mode, all execution commands apply only to the current thread by default. That is, continue only continues one thread. To continue all threads, issue continue -a or c -a.

You can use gdb's background execution commands (see Background Execution) to run some threads in the background while you continue to examine or step others from gdb. The MI execution commands (see GDB/MI Program Execution) are always executed asynchronously in non-stop mode.

Suspending execution is done with the interrupt command when running in the background, or Ctrl-c during foreground execution. In all-stop mode, this stops the whole process; but in non-stop mode the interrupt applies only to the current thread. To stop the whole program, use interrupt -a.

Other execution commands do not currently support the -a option.

In non-stop mode, when a thread stops, gdb doesn't automatically make that thread current, as it does in all-stop mode. This is because the thread stop notifications are asynchronous with respect to gdb's command interpreter, and it would be confusing if gdbunexpectedly changed to a different thread just as you entered a command to operate on the previously current thread.

' > 개발' 카테고리의 다른 글

VIM - 여러 파일 편집  (0) 2013.04.08
Eclipse에서 다른 유저의 프로세스 debug  (0) 2013.04.05
GDB에서 특정 쓰레드만 멈추게 하는 법  (0) 2013.03.27
vi 설정  (0) 2013.02.22
Difftool  (0) 2012.12.17
No repository found in Eclipse  (0) 2012.11.27
Posted by 라판
TAG GDB

Eclipse 속도 향상 팁

2013.03.06 16:07

참고로, eclipse.ini에 대한 위키는 여기를 참조:




* eclipse.ini 파일을 다음과 같이 수정

 원본수정 후 
-vmargs
-Dosgi.requiredJavaVersion=1.5 
-Xms40m  
-Xmx256m
-vmargs
-Dosgi.requiredJavaVersion=1.5 
-Xverify:none 

-XX:+UseParallelGC
-XX:-UseConcMarkSweepGC 

-XX:PermSize=32M
-XX:MaxPermSize=128M  
-XX:MaxNewSize=32M 
-XX:NewSize=32M 
-Xms256m  
-Xmx256m



* 설명

-Xverify:none                         // 클래스 검사 생략. 이클립스 실행 시간이 줄어든다.
-XX:+UseParallelGC               // Parallel Collector를 사용. 병렬 가비지 컬렉션.
-XX:-UseConcMarkSweepGC // 병행 mark-sweepGC 기능을 수행하여 GUI 응답 속도 처리
-XX:PermSize=32M                // 이클립스 클래스 로딩 기본 메모리
 
-XX:MaxPermSize=128M       // 이클립스 클래스 로딩 최대 메모리
-XX:NewSize=32M                 // JVM에서 새로운 객체가 생성 될때 로딩되는 최소 영역
-XX:MaxNewSize=32M           // JVM에서 새로운 객체가 생성 될때 로딩되는 최대 영역
-Xms256m                            // 이클립스 실행시 잡는 최소 메모리
-Xmx256m                            // 이클립스 실행시 잡는 최대 메모리

* Xms와 Xmx를 똑같이 잡아 주는 이유는 이클립스가 메모리를 유동적으로 관리하는데 이걸 정적으로 고정시켜 주기 위해서이다. 유동적으로 관리하게 놔두면 자바는 메모리가 부족할때 확보하려고 메모리 할당을 하게 되고 메모리의 여유가 있으면 남는 메모리를 조금씩 시스템으로 돌려버린다. 이러한 작업때문에 이클립스 속도가 더 느려지기에 아예 처음부터 최소값과 최대값을 고정시켜 버리면 불필요한 작업을 하지 않게 된다. 물론 메모리 값은 컴퓨터 사양에 따라 수정해주시면 된다. 




* 힙 메모리 정리
Window -> Perference -> General  에서 'Show heap status'에 체크.



체크를 해주면 이클립스 오른쪽 하단에 현재 메모리 사용량과 휴지통 아이콘이 생긴다.
힙에 메모리가 많이 쌓였을때 휴지통을 눌러서 한번씩 날려주면 빨라진다.






* 코드 오토 어시스트 기능 비활성화
 
코드 어시스트 기능을 끈다. 단축키 ctrl + space 로 코드 어시스트 사용가능하다.
Window -> Preferences -> Java -> Editor -> Code Assist tab 에서 'Enable auto activation' 을 꺼준다.

아래의 글은 Sun(Oracle?) Hotspot JVM을 기반으로 정리한 내용이다.

JVM에서 GC는 크게 Minor GC와 Major GC로 나뉜다. Minor GC는 Young Generation영역을 정리하는 GC이고, Major GC는 Old Generation영역을 정리하는 GC이다. 그리고 Major GC는 Full GC로도 불린다. 하지만 일부 CMS Collector를 설명하는 글에서는 Major GC와 Full GC를 구분하기도 하는 것 같다. Major GC와 Full GC의 명확한 구분은 잘 모르겠다.

                     Java Heap Memeory 구조


GC의 종류는 아래와 같다. 
===========================================================================================
1. Serial Collector
  - 단일 Thread로 GC 작업을 수행
  - "-XX:+UseSerialGC" 옵션 사용하여 활성화 할 수 있다. 
  - 요즘 H/W환경에서는 사용할 필요가 없는? GC라고 생각된다.
 
2. Parallel Collector
  - 복수의 Thread로 GC작업을 수행한다 
  - "-XX:+UseParallelGC" 옵션을 사용하여 Minor GC 에서 parallel collector를 활성화 할 수 있다.
  - "-XX:+UseParallelOldGC" 옵션을 사용하여 Major GC에서 parallel collector를 활성화 할 수 있다. 
  - 복수의 Thread를 사용하여 GC를 수행하기 때문에 Serial Collector에 비해서 GC가 빨리 수행된다.
  - 최대 성능을 내기 위한 GC라고 생각된다.

3. CMS Collector
  - Major GC 실행시 Application Thread와 GC Thread가 동시에 수행된다. (GC의 6단계 중에서 2단계에서만 Application Thread를 Block 하며 나머지 4단계는 동시에 수해된다.)
     * 참조 :  http://www.javaperformancetuning.com/news/qotm026.shtml
  - "-XX:+UseConcMarkSweepGC" 옵션을 사용하여 활성화 할 수 있다. 
  - Minor GC에서 Parallel Collector를 활성화하기 위해서는 "-XX:+UseParNewGC" 옵션을 사용해야 하며,  "-XX:+UseParallelGC" 와는 같이 사용해서는 않된다!!!
  -  Parallel Collector GC 보다는 최대 성능이 낮게 나오지만, GC로 인한 Application Thread 정지 시간을 최소화 하여 응답시간 지연을 줄이고자 하는 경우 사용된다.
  - CMS Collector에 의한 Major GC가 수행되는 동안 Application에 의해서 Old generation 영역이 꽉차게 되면, 모든 Application Thread를 멈추고, Full GC를 수행하게 된다.
===========================================================================================

JVM Heap 메모리 및 GC 옵션 예제
  - 최소 사이즈 : -Xms128m
  - 최대 사이즈 : -Xmx384m
 
 - GC 로그 옵션 
   > -verbose:gc -Xloggc:gc.log -XX:+PrintGCDetails -XX:+PrintGCTimeStamps
  - Young Gen 영역을 위한 옵션 
    > -XX:NewSize=100m -XX:MaxNewSize=100m -XX:SurvivorRatio=32
  - GC 소요시간 최소화 옵션
    > -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:-CMSParallelRemarkEnabled
  - 성능을 위한 기타 추가 옵션
    > -XX:MaxTenuringThreshold=0 -XX:CMSInitiatingOccupancyFraction=60
  - OutOfMemoryError 발생시 자동으로 힙덤프 생성 옵션
    > -XX:+HeapDumpOnOutOfmemoryError -XX:HeapDumpPath=/path

JVM 옵션 상세 정보 참고자료 :  http://wiki.ex-em.com/index.php/JVM_Options

기타 툴
  - Java Stack Trace (dead lock 분석)
    > jps   [java 프로세스 확인]
    > kill -3 <pid>  [IBM JDK]

    > $JAVA_HOME/bin/jstack <pid>   [Hotspot JDK
  - Runtime JVM Heap Dump 생성
    > jmap -dump:format=b,file=heap.hprof [pid]
  - 힙덤프 분석 툴 : jhat, MemoryAnalyzer, visualvm

'' 카테고리의 다른 글

VMWARE workstation 7.1.4 patch for kerenel 3.1  (0) 2013.06.28
NX Client 속도 향상  (0) 2013.04.27
[명령어] 특정유저 프로세스 강제 종료 명령어  (0) 2013.04.08
NX 단축키  (0) 2013.04.05
Eclipse 속도 향상 팁  (0) 2013.03.06
Posted by 라판