본문 바로가기

카테고리 없음

프로그래밍 언어 종류가 다양한 이유

1972년 켄 톰슨과 데니스 리치가 벨 연구소에서 
메모리에 접근 직접제어 하기 때문에 성능으론 역대 언어중 가장 빠르다  C언어를 만들었다. 

 

https://www.youtube.com/shorts/akke6_oHjQQ

 


하지만 메모리 해제를 제대로 해제 하지 못하면
메모리가 계속 점유하여 더이상 할 당 할 수 없는 상태에 이르게 된다.

1995년에 제임스 고슬링(James Gosling)과 다른 연구원들은
하나의 언어로 여러 플랫폼에서 사용 할 수 있는 JAVA라는 언어를 만들었다.

이 언어는 가상머신 위에서 실행되는데 각 플랫폼마다 가상머신이 설치 되어 있기 때문에
같은 언어로 여러곳에서 사용 할 수 있게 되는 것이다.

그 가상머신에는 더이상 사용하지 않는 변수나 객체들을 자동으로 해제 해주는 
쓰레기 수집기가 들어 있다. 그레서 개발자는 더이상 메모리 해제에 대한 고민을 덜하게 된다.

그런데 이 수집기는 주기적으로 메모리를 해제 해주는 일을 하기 때문에 
성능이 느려지는 상황이 발생했는데

2010년 파이어폭스 브라우저로 유명한 모질라 재단에서 쓰레기 수집기 없이 메모리 안전성을 제공하는
러스트 언어를 개발 하였다.

오너십이라는 개념으로 메모리를 자동으로 관리 해주는데 
소유권을 가진 변수가 특정 영역을 벗어나게 되면 자동으로 메모리가 해제 되는 방식이다.
성능도 빠르면서 메모리를 자동으로 관리해주는 언어라 급부상 하고 있는 중이다.