부록 B. 자바 인스트럭션

자바 트러블슈팅: scouter를 활용한 시스템 장애 진단 및 해결 노하우를 부록 B을 요약한 내용입니다.

JVM 인스트럭션은 도대체 뭘까?

자바 애플리케이션이 어떻게 수행되는지, 내부적으로 어떻게 작동되는지를 알고자한다면, 자바의 인스트럭션 정보를 확인하면 된다. 즉, 컴퓨터의 작동 명령이라고 생각하면 조금 더 이해가 쉬울 것이다. 반드시 장애를 진단하기 위한 작업이 아니더라도, 자바를 개발한다면 인스트럭션에 대해서 어느 정도 알아 두는 것이 좋다. 이 인스트럭션 정보를 확인하는 가장 간단한 방법은 javap라는 명령어를 사용하는 것이다.

public class Hello {
    public void helloInstruction() {
        int a,b;
        a = 10;
        b = 20;
        int c = a + b;
    }
}

이 파일을 다음과 같이 컴파일하고 javap를 수행해 보자

Compiled from "Hello.java"
public class com.example.practice.threadDump.Hello {
  public com.example.practice.threadDump.Hello();
  public void helloInstruction();
}

자바 소스가 역컴파일되어서 화면에 출력되는 것을 볼 수 있다.

javap는 다양한 옵션이 있다. 옵션을 사용하여 더 상세히 살펴보자.

Last updated

Was this helpful?