카테고리 없음

[삼쾌한 IT 강의] 큰 기계에서는 자바언어가 어떻게 작동할까요?

삼쾌한IT 2019. 1. 10. 15:27

 안녕하세요! 삼쾌한 IT강의 백소라강사입니다.


 오늘은 수업시간에 들어온 질문을 가지고 포스팅을 해보고자 합니다. 제목과 같이 "큰 기계에서는 자바언어가 어떻게 작동할까요?" 라는 질문을 받았습니다.

 결론을 먼저 말씀드리자면 큰 기계든 작은 기계든 자바언어는 동일하게 실행이 됩니다. 그럼 구체적으로 자바가 어떻게 실행되는지 알아볼까요? 

( 이 포스팅은 커맨드창과 메모장으로 자바 실행하기를 선행해서 읽어주시면 이해에 도움이 됩니다. 2019/01/06 - [JAVA/실습예제] - [삼쾌한 IT강의] 커맨드창+메모장으로 실습하기  )


 우리가 아침에 일어나서 웹브라우져를 켜서 뉴스를 확인하고, 음악 어플로 노래를 듣고, 메신저를 통해 문자를 주고받는데 이때 사용하는 웹브라우져, 음악어플, 메신저들을 모두 프로그램이라고 합니다. 이러한 프로그램들을 실행시키기 위해서는 컴퓨터에 명령을 줘야하는데, 이러한 명령을 프로그래머가 프로그래밍 언어를 통해서 줄 수 있습니다. 

 그런데, 컴퓨터는 0 과 1 로만 이루어진 기계어만 알아들을 수 있기 때문에 우리가 작성한 프로그래밍 언어를 기계어로 번역을 해줘야 합니다. 이렇게 번역 해 주는 것을 '컴파일' 이라고 하며 '컴파일러'가 '컴파일'을 수행합니다.


 아래의 사진과 같이 우리가 자바언어로 작성한 파일을 컴파일을 해주면, .class로 끝나는 파일이 생기는걸 확인할 수가 있죠? 


 그런데, 이렇게 컴파일의 결과물인 .class 파일은 완벽한 기계어로 번역이 된 것이 아니라 중간정도 번역된 '바이트코드'로 이루어져있습니다. 이 '바이트코드'는 자바 가상머신을 통해 실행을 시킬수가 있죠. JDK (자바 개발 도구) 를 설치하셨다면, 자바 가상 머신이 함께 설치가 되어 '바이트코드'로 번역된 파일을 문제없이 실행을 했을겁니다. 

 

 이렇게 자바는 프로그래머가 코딩(소스코드 작성)을 한 후 → '바이트 코드'로 컴파일 → '자바 가상 머신'에서 프로그램 실행 의 순서로 작동합니다. 


 궁금증이 해결이 됐을까요?  이상 유쾌,상쾌,통쾌 삼쾌한 IT강의, 백소라 강사의 설명을 마치겠습니다.

내용이 도움이 되셨다면 공감버튼 클릭, 댓글은 센스! 감사합니다.