본문 바로가기
  • 책과 글
CS/운영체제

13. The Abstraction: Address Spaces

by twfnm67 2019. 11. 8.

13.1 Early Systems

출처 : Operating Systems_Three Easy Pieces

 - 초기의 OS는 실행 중인 프로그램에 물리적 주소를 할당해 주고선, 남은 메모리를 사용했다.

 

13.2 Multiprogramming and Time Sharing

 - the era of multiprogramming --> the era of time sharing

 - time sharing을 구현하는 한 가지 방법은 위 13.1과 같은 방식으로 한 프로그램에게 full로 메모리 접근성을 부여하고 그 프로그램이 멈출 때 모든 상태를 저장한 후에 다른 프로그램을 다시 메모리에 할당해 주는 방식(비효율)

 - 문제점 : 메모리가 커질수록 속도가 너무 느려진다.

 

13.3 The Address Space

 

출처 : Operating Systems_Three Easy Pieces

 - 코드 영역 : 프로그램이 실행되는 동안 크기가 변경될 일이 없음(static)

 - 스택/힙 : 프로그램이 실행되면서 점점 커지는 경향. 따라서 스택과 힙은 opposite ends에

 --> 위의 주소값들은 다 가상임(실제 물리주소는 다름)

 

13.4 Goals

 - 1. transparency : OS는 실행 중인 프로그램으로 하여금 가상 주소를 눈치채지 못하게 함

 - 2. efficiency : 가상화를 최대한 효율적으로 실현해야 함. 시공간적인 측면에서

 - 3. protection : 프로세스들끼리의 영향으로부터 안전해야 함

 

 

-출처-

<OPERATING SYSTEMS three easy pieces>

 

REMZI H. ARPACI-DUSSEAU

ANDREA C. ARPACI-DUSSEAU

UNIVERSITY OF WISCONSIN-MADISON

'CS > 운영체제' 카테고리의 다른 글

15. Mechanism: Address Translation  (0) 2019.11.10
14. Interlude: Memory API  (0) 2019.11.10
12. A Dialogue on Memory Virtualization  (0) 2019.11.08
10. Multiprocessor Scheduling (Advanced)  (0) 2019.11.06
9. Scheduling : Proportional Share  (0) 2019.11.06

댓글