728x90
프로그램 번역과 실행
Compiler : C원시코드를 어셈플리 언어 프로그램으로 바꾼다.(.asm)
     .asm 파일은 typically linking 후 순식간에 삭제된다.

Assembler : 어셈블리 프로그램을 Object file(기계어모듈)로 바꾼다.
     기계어 모듈로 만들어주는데 메모리에 적재하기에는 완벽하지 않다.

Linker : 라이브러리에 있는 다른 목적파일을 가져와서 obj 파일들을 합친다.
     이과정이 끝나면 디스크에 Exe 파일이 완성된다.
     이걸 메모리에 주기 위해 loader를 사용하여 메모리에 올려 수행한다.


* 자바프로그램의 실행 
자바의 목적은 실행시간은 느리더라도 어느 컴퓨터에서나 안전하게 실행시킬 수 있게 하자.

1. 자바는 어셈블리언어로 컴파일을 하지 않고 인터프리트 하기 쉬운 바이트코드로 먼저 컴파일한다. 
     -> 여기에서 javac가 사용.
2. JVM 소프트웨어 인터프리터가 바이트코드(JVM의 명령어 집합)를 실행한다. -> 독립적플랫폼
     자바는 별도의 어셈블리 단계가 필요없다.

자바의 장점은 이식성. 단점은 성능이 낮다. C보다 10배 정도 느리다고 함
따라서 이식성을 훼손하지 않으며, 성능을 개선하기 위해 실행되는 도중에 번역을 하는 컴파일러 제작
   -> 그것이 JIT(Just In Time) : 많이 사용되는 메소드를 찾아내서 실행중에 기계어로 컴파일한다.
    

 

728x90

'컴퓨터구조' 카테고리의 다른 글

컴퓨터구조 단어 정리  (1) 2012.08.01
컴퓨터 구조 정리 9번째  (0) 2012.07.13
컴퓨터 구조 정리 7번째  (0) 2012.07.13
컴퓨터 구조 정리 6번째  (0) 2012.07.13
컴퓨터 구조 정리 5번째  (0) 2012.07.13
Posted by 정망스
,


맨 위로
홈으로 ▲위로 ▼아래로 ♥댓글쓰기 새로고침