■ 시스템을 총괄하는 운영체제


우리가 사용하는 하드웨어들의 기술이 발전하는 속도는 예측하기 어려울 정도로 빠르다. 인간이 할 수 없는 여러가지 일들을 똑똑한 컴퓨터들은 척척 해낸다. 하지만, 우리의 언어를 컴퓨터는 이해할 수 없기 때문에 컴퓨터 언어를 사용하여 컴퓨터에게 명령을 내린다. 이때, 중요한 역할을 담당하는 것이 있다. 그것이 바로 운영체제이다.





우리의 인종은 다양하며 다양한 언어를 사용한다. 언어가 다르면 의사소통을 할 수 없다. 컴퓨터도 마찬가지로 다양한 운영체제가 존재한다. 

운영체제는 하드웨어를 제어하고 컴퓨터 자원을 관리하는 컴퓨터 시스템 총괄자 역할을 한다.  대표적인 운영체제로, Window 운영체제, Linux 운영체제, 맥키토시 운영체제가 있다. 컴퓨터의 명령을 내리기 위해서는 운영체제의 도움이 필요한데 운영체제가 다르면 소통할 수 없다.


 운영체제 통역사 JVM


실제로 운영체제와 대화하는 것은 JAVA언어가 아니다. 바로 JVM이 이러한 역할을 수행한다. JVM은 자바 가상머신이라 불리며, JAVA언어를 어떤 운영체제에서 사용하든지 JVM이 통역 역할을 담당하여 문제없이 프로그램을 실행 시킬 수 있다. 그래서 JAVA 언어의 특징 중에 하나가 이식성이 좋다는 말이 있다. 물론 운영체제 환경에 맞는 JVM를 사용해야 한다. 그래서 오라클 홈페이지에서 JAVA를 다운받을 때 운영체제 맞는 JAVA를 다운받는 것이 이때문이다.


자바의 구동원리는 아래와 같다.

1. 사용자가 작성한 코드로 MyProgram.java라는 소스파일을 만든다. 소스파일은 우리가 이해할 수 있는 언어로 작성된 파일이므로 JVM이 해석 할 수 없다. 그래서 JVM이 해석할 수 있도록 중간 작업을 거쳐야 한다. 

2.  javac.exe라는 실행파일이 자바 컴파일러다. 이는 JVM을 구동시키고, 자바 프로그램이 실행 될 수 있도록 해준다. 컴파일러가 사용자가 작성한 자바 코드를 해석하여 JVM이 해석할 수 있도록 바이트코드로 변환한다. 이렇게 변환된 파일이 MyProgram.class파일이다.

3. 컴파일로 부터 전달받은 클래스 파일을 JVM이 해석하여 우리가 작성한 MyProgram 프로그램을 실행하게 된다.












'JAVA' 카테고리의 다른 글

자바설치  (0) 2018.08.16
변수 & 변수의 종류 & 변수의 자료형  (0) 2018.08.02

+ Recent posts