발표자 : 이지연 Programming Systems Lab.

Slides:



Advertisements
Similar presentations
3. 메소드와 변수 SCJP 자격증 프로젝트 발표자 : 최선웅. 1. 메 소 드 개 념 2. 메 소 드 양 식 3. 메 소 드 변 수 4. 메 소 드 예 제 5. 참 고 문 헌 / 자 료 목 차.
Advertisements

목 차 C# 언어 특징 .NET 프레임워크 C# 콘솔 프로그램 C# 윈도우 프로그램 실습 프로그래밍세미나 2.
클래스 class, 객체 object 생성자 constructor 접근 access 제어 이벤트 event 처리.
Power Java 제3장 이클립스 사용하기.
최윤정 Java 프로그래밍 클래스 상속 최윤정
JAVA 클래스와 멤버 2014년 4월 2일 19:00 손은경 강원대학교 데이터베이스 연구실 강원대학교 데이터베이스 연구실.
Ch.07-5 xml-rpc 사용하기 김상엽.
제1장 기초 사항 융합기술공학과 김형진 교수.
어서와 Java는 처음이지! 제1장 기초 사항 IT응용시스템공학과 김형진 교수.
1장. 자바 개요.
JSP Programming with a Workbook
Power Java 제2장 자바 개발 도구.
제 1 장. JAVA란 작성자 : NLIP.
Chapter 4. 클래스와 객체 PS Lab. 이지연.
8.1 인터페이스 개요와 인터페이스 정의 8.2 인터페이스의 사용 8.3 인터페이스의 상속 8.4 인터페이스 참조
UNIT 07 Memory Map 로봇 SW 교육원 조용수.
Java 기초 (Java JDK 설치 및 환경설정)
5장. 참조 타입.
07. 디바이스 드라이버의 초기화와 종료 김진홍
CHAPTER 02 OpenCV 개요 PART 01 영상 처리 개요 및 OpenCV 소개.
Chap08 다중 스레드 8.1 스레드 개요 8.2 Thread 클래스와 스레드 생명주기 8.3 스레드 생성과 사용
11장. 포인터 01_ 포인터의 기본 02_ 포인터와 Const.
SqlParameter 클래스 선문 비트 18기 발표자 : 박성한.
Power Java 제4장 자바 프로그래밍 기초.
자바 5.0 프로그래밍.
Lesson 7. 클래스와 메소드 - 1.
자료구조: CHAP 4 리스트 (3) 순천향대학교 컴퓨터공학과 하 상 호.
Chapter 03 : 서블릿 ( Servlet ) 개요. chapter 03 : 서블릿 ( Servlet ) 개요.
Chap.10 자바 컴파일링의 안쪽 PS Lab. 이지연.
제 01 장 인터넷 프로그래밍 개요 학기 인터넷비즈니스과 강 환수 교수.
자바 5.0 프로그래밍.
CHAP 12. 리소스와 보안.
Chapter6 : JVM과 메모리 6.1 JVM의 구조와 메모리 모델 6.2 프로그램 실행과 메모리 6.3 객체생성과 메모리
7장 인터페이스와 추상 클래스.
Method & library.
JA A V W. 03.
자바 5.0 프로그래밍.
Chap 6.Assembler 유건우.
UNIT 07 Memory Map 로봇 SW 교육원 조용수.
이름 : 황 상 두 전화번호 : 이메일 : PinTool 이름 : 황 상 두 전화번호 : 이메일 :
메모리 관리 & 동적 할당.
RMI Messenger 지도 : 김정배 교수님 조봉진.
Go Lang 리뷰 이동은.
Lesson 2. 기본 데이터형.
Chapter6 : JVM과 메모리 6.1 JVM의 구조와 메모리 모델 6.2 프로그램 실행과 메모리 6.3 객체생성과 메모리
15장 컬렉션 프레임워크 Section 1 컬렉션 프레임워크의 개요 Section 2 리스트 Section 3 셋
컴퓨터 프로그래밍 기초 - 10th : 포인터 및 구조체 -
자바 5.0 프로그래밍.
자바 가상 머신 프로그래밍 Chap 10. 자바 컴파일링의 안쪽 ② Pslab 오민경.
ARM Development Suite v1.2
Power Java 제11장 상속.
JA A V W. 06.
ATmega128의 특징 아이티즌 기술연구소
10장. 실현기술 10.1 유한 어장 영향 10.2 디지털 필터의 기본 하드웨어 10.3 하드웨어에 의한 디지털필터 실현
CHAP 21. 전화, SMS, 주소록.
Java Programming Java Programming 3장 백석대학교 인터넷멀티미디어 LAB1111호.
알고리즘 알고리즘이란 무엇인가?.
데이터 동적 할당 Collection class.
JVM의 구조와 메모리 모델 JVM의 내부 구조 클래스 파일 클래스 로더 메소드(method) 영역 힙(heap) 영역
클래스 : 기능 CHAPTER 7 Section 1 생성자(Constructor)
Chapter 01 자바의 개요 자바는 최초 전자기기의 내장형 소프트웨어를 위해 개발되었으나, 최근 엔터프라이즈 응용에도 폭 넓게 활용됨 자바의 특징과 실행방법, 개발 환경 및 도구에 대해 소개.
JSP Programming with a Workbook
CHAP. 2 안드로이드 개발 도구 설치.
멀티미디어시스템 제 5 장. 멀티미디어 데이터베이스 개념 IT응용시스템공학과 김 형 진 교수.
바이트 순서 변환 함수 주소 변환 함수 바이트 조작 함수 원격지 호스트 정보를 얻는 함수
프로그래밍 언어 학습을 위한 가상실습환경 창원대학교 이수현.
2.가상머신의 탐험 도구, Oolong에 대하여 ps lab 김윤경.
29장. 템플릿과 STL 01_ 템플릿 02_ STL.
자바 프로그래밍 입문 : 객체지향적 사고법 chapter 01. 자바 언어의 소개.
7 생성자 함수.
Presentation transcript:

발표자 : 이지연 Programming Systems Lab. JVM Seminar Chap.1 자바 가상 머신의 소개 발표자 : 이지연 Programming Systems Lab.

목 차 1.1 자바 가상 머신이란 무엇인가? 1.2 자바 가상 머신의 개념적 구성 목 차 1.1 자바 가상 머신이란 무엇인가? 1.2 자바 가상 머신의 개념적 구성 1.3 가비지 콜렉션(Garbage Collection) 1.4 자바 가상 머신의 구현 1.5 자바 가상 머신의 미래

1.1 자바 가상 머신이란? 하나의 프로그램이 모든 시스템에서 실행될 수 있도록 하는 “추상화된 컴퓨터” 팀 린드홀름(Tim Lindholm)과 프랭크 옐린(Frank Yellin)이 쓴 “자바 가상 머신 명세서” 명령어들의 집합과 각 명령어의 의미의 정의 Class파일 형식이라고 불리는 바이너리 형식 프로그램에 문제가 없는지를 확인하는 알고리즘

1.1 자바 가상 머신이란? 명령어 집합 바이트 코드라 불리는 명령어들의 집합 (Oolong언어로 표현) Getstatic java/lang/System/out Ljava/io/PrintStream; Ldc “Hello, world” Invokevirtual java/io/Println(Ljava/lang/String;)V

1.1 자바 가상 머신이란? Class 파일 형식 검증(Verification) 프로그램이 JVM에서 요구하는 규칙들을 만족시키는 것을 확인 스택 오버플로우, 접근할 수 없는 메모리 영역에의 접근 시도, 객체를 부적합한 타입으로 캐스팅하기, 금지된 메모리 영역의 포인터 값을 얻어내기 등

1.2 자바 가상 머신의 개념적 구성 Class area : 프로그램 코드와 상수 저장 Java stack : 프로그램 수행 도중 메소드 호출 기록 Heap : 객체 저장 Native method stacks : 네이티브 메소드 지원

1.2 자바 가상 머신의 개념적 구성 클래스 영역 수퍼클래스(Superclass) 인터페이스들의 리스트 필드(field)들의 리스트 메소드들의 리스트와 구현된 메소드 상수들의 리스트

1.2 자바 가상 머신의 개념적 구성 자바 스택

1.2 자바 가상 머신의 개념적 구성 힙

1.3 Garbage Collection Garbage Collection 객체가 더 이상 사용되지 않는다면 객체에 주어진 메모리 공간을 반환 class A { B b; } class B A a; A foo = new A(); foo.b = new B(); foo.b = null;

1.3 Garbage Collection

1.4 자바 가상 머신의 구현 자바프로그램이 시스템에 독립적일 수 있도록 자바 가상 머신이 모든 시스템 수용 썬 마이크로시스템의 JDK(Java Development Kit) JDK 내에 있는 가상 머신 : “java” 라는 이름의 프로그램 ex) java Hello

1.5 자바 가상 머신의 미래 “한 번 작성하면, 어디에서나 실행시킬 수 있다(Write Once, Run Anywhere)” 실현 속도와 성능 향상 : 바이트 코드를 프로그램이 실행되는 컴퓨터의 프로세서에 최적화된 네이티브 코드로 변환