프로그래밍 언어론 3-2-1강. 메모리 관리 - 정적 할당(Static Allocation)

[프로그래밍 언어론]

2019. 10. 26. 14:27

 

[정적 객체(Static objects)]

메모리 구조내 정적 객체

: 정적 객체는 메모리에서 code + data에 속하게되는 객체들이다.

: 이 객체들은 프로그램 실행하는동안 변하지 않는 값들. (protected, read-only)

 => 실행 시점이전에 value 확정된다(이후 수정시 에러)

 +) C, Ada는 elaboration time 이전확정이면 정적 객체 -> const값 수정 가능(여기선 stack에 저장)

 +) C#에서 그래서 이를 구분 하기위해 const(compile-time)과 readonly(elaboration-time)으로 구별한다.

 

 

 

[정적 객체 종류]

  • 전역 변수
  • 프로그램의 기계어 코드를 구성하는 지시어들(instructions)
  • static 변수( ex. static int x; 전역변수처럼 사용됨)
  • 숫자, 문자 형태의 상수(const) (ex. 14.7, “hello, world”)