운영체제

운영체제 address space

cheesecrust1008 2023. 3. 12. 17:08

메모리에는 여러 프로세스의 정보들이 저장된다.

 

이때에, 여러 프로세스들은 가상 주소를 가진다는 것을 앞서서 알아 보았다. 

 

예를 들어 같은 코드의 프로세스를 두개를 동시에 실행하였을 때에 같은 주소를 공유하는 경우가 있었다.

 

하지만, 실제로는 둘 다 다른 주소의 메모리를 사용한다는 것이다.

그리고 cpu와 저장되어있는 코드들, 메모리에도 가상주소를 기준으로 저장되어있다. 

 

따라서 우리는 우리가 가지고 있는 가상메모리 주소를 실제의 물리주소로 바꾸어 주어야 한다. 

 

따라서 이를 수행해주는 곳이 바로 mmu 이다. 

 

이 mmu 의 목표는 투명해야 하여, 빨라야 하고 메모리 들은 서로 나누어져 고립되어 있어야 한다. 

 

여기서의 투명의 의미는 바로 뒤의 실행 되는 것이 보인다는 것이다.

 

예를 들어서 우리가 프로그램을 작성할 때에, 한 줄 한 줄 사이에서는 많은 일이 일어나지만, 우리는 한줄 다음에 실행될 다음 줄이 무엇인지를 볼 수 있다. 

 

그리고 주소변경은 dual mode, (kernal mode 와 user mode가 있다는 것이 dual mode 를 지원한다는 말이다.) 를 통해서 하고, 하드웨어를 통해서 변환된다.  

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

운영체제 segmentation, free space  (0) 2023.03.15
운영체제 adress translation  (0) 2023.03.12
운영체제 scheduling proportional share  (0) 2023.03.12
운영체제 MLFQ  (0) 2023.03.11
운영체제 schedule intro  (0) 2023.03.11