Language

Language/Java

[Java] JVM 구조 및 동작 구조와 메모리 구조에 대해 알아보자

JVM 구조 Class Loader(클래스 로더) Java는 클래스를 동적으로 읽어온다. 즉 프로그램이 실행 중인 런타임으로 들어가야만 모든 코드가 JVM과 연결이 되는 동적으로 class를 로딩해주는 역할이 바로 Class Loader(클래스 로더)이다. Java에서 소스를 작성하면 .java파일이 생성이 되고 .java파일을 컴파일 하면 .class파일이 생성된다 이 .class파일을 묶어서 JVM에게 보내주는 역할이 Class Loader(클래스 로더)이다. Execution Engine(실행엔진) 앞에서 .class파일은 바이트 코드라고 하는데 이 파일들은 각각 영역에 맞게 메모리 영역에 배치가 된다. 배치된 바이트 코드들은 Execution Engine에 제공되고 이때 로드된 바이트 코드를 실행..

Language/Java

[Java] 자바 가상 머신 JVM(Java Virtual Machine),JIT

JVM이란?? 자바 가상 머신 JVM(JAva Virtual Machine)은 자바 프로그램 실행환경을 만들어 주는 소프트웨어이다. 자바 코드를 컴파일하여 .class 바이트 코드로 만들면 이 코드가 자바 가상 머신 환경에서 실행됩니다. JVM은 자바 실행 환경 JRE(Java Runtime Environment)에 포함되어 있습니다. 현재 사용하는 컴퓨터의 운영체제에 맞는 자바 실행환경(JRE)가 설치 되어 있다면 자바 가상 머신이 설치되어 있다는 뜻이다. JVM의 이점 JVM을 사용하면 하나의 바이트 코드로(.class)로 모든 플랫폼에서 동작이 가능하다는 점이 가장 큰 이점이라고 할 수 있다. 여기서 .class 파일은 바이트 코드라고 하는데 사람이 쓰는 Java코드에서 컴퓨터가 읽는 기계어로 중간..

Language/Java

[Java] Java란?

Java는 어떤 언어인가? 제임스 고슬링이 만든 언어로 JVM(java를 컴파일 할 수 있는 가상기계)을 이용해서 운영체제가 달라도 상관없이 java를 쓸 수 있게 만들어 준다. java는 class단위로 컴파일을 한다. java는 안정적인 언어이다. 왜냐하면 가비지 컬렉터를 이용해 동적 메모리를 관리 할 때 쓰레기 값을 자동으로 java가 알아서 소멸시켜주기 때문이다. java는 C언어에서 객체 지향적 기능을 추가하여 만든 C++과 달리 처음부터 객체 지향 언어로 개발된 프로그래밍 언어이다. 바로 이러한 점이 수많은 개발자로 하여금 java를 사용 할 수 밖에 없는 원동력이 되고 있다. Java의 장점 java는 운영체제에 영향을 받지 않고 독립적으로 실행 할 수 있다. java는 불필요한 기능을 과감..

otso
'Language' 카테고리의 글 목록 (3 Page)