heap(2)
-
[Rust/러스트] 소유권(Owner)
■ 소유권 소유권은 러스트의 핵심 기능으로써, 모든 프로그램은 실행하는 동안 컴퓨터의 메모리를 사용하는 방법을 관리해야 합니다. 러스트가 아닌 다른 몇몇 언어들은 프로그램이 실행될 때 더 이상 사용하지 않는 메모리를 끊임없이 찾는 가비지 콜렉션을 갖고 있으며, 이는 프로그래머가 직접 명시적으로 메모리를 할당하고 해제해야 합니다. 이와 달리 러스트의 메모리는 컴파일 타임에 컴파일러가 체크할 규칙들로 구성된 소유권 시스템을 통해 관리됩니다. 따라서 소유권 기능들은 런타임 비용이 발생하지 않습니다. 소유권을 잘 이해하기 위해 소유권의 규칙과 스택(Stack), 힙(Heap) 메모리에 역할과 기능에 대해 알아둘 필요가 있으며, 아래에서 간단히 확인해 보겠습니다. ◆ 소유권 규칙 러스트의 각각의 값은 해당값의 오..
2022.02.17 -
[JAVA] JVM의 메모리 구조
■ JVM 이란? JVM(Java Virtual Machine)은 Java로 작성된 애플리케이션을 실행시키기 위해 반드시 필요한 가상 컴퓨터로서, Java 애플리케이션이 OS와 하드웨어에 독립적으로 실행가능하게 한다. OS와 하드웨어와의 관계가 독립적이라는 의미는 어떤 OS(Windows, Linux .. ) 라고 하더라도 해당 OS에 실행가능한 JVM만 존재한다면, Java 애플리케이션이 실행가능하다는 것이다. 단, JVM는 OS에 종속적이기 때문에 해당 OS에서 실행가능한 JVM이 필요하다. ■ Java 애플리케이션 실행 구조 예시) OS가 Windows일 경우 JVM은 Java 애플리케이션을 OS와 하드웨어에 구애받지 않고 실행가능하게 함으로써 Java 애플리케이션이 한번 작성되면 어떤 환경(OS,..
2020.08.05