Skip to content

Latest commit

 

History

History
37 lines (20 loc) · 1.69 KB

Main Memory 7aa920409087415e8061a4de3a6cbd4e.md

File metadata and controls

37 lines (20 loc) · 1.69 KB

Main Memory

講義: https://reurl.cc/j7695M

program 變成 process 的關鍵在於他 load 到 memory裡了

Background

唯一 CPU可以直接 access的。

多個process裝在 memory 同時執行,於是我們就要去控制這些process 各是在 memory的哪裡做,要保護這些process不能去影響到彼此。

program 跟 memory 的連結

program 裡面有很多變數,會變成 memory 裡的 address。整個 program 到 memory 的流程裡有三個時間點:

  1. compile time
  2. load time
  3. execution time

static loading: 還沒執行就把 library load進來

dynamic loading: 在執行的時候才 load 進 memory

Address binding

Linking

Swapping: To move a program between memory & disk

allocation

Paging: Non-contiguous memory allocation

Memory Protection

Segmentation: Non-Contiguous Memory Allocation