1. 從計算機如何作業開始

首先讓程式進入記憶體

重定位:修改程式中的地址(是相對地址)

程式載入后還需要移動

重定位的最合適時機---運行時重定位

首先在記憶體中找一段空閑的記憶體,然后把這段空閑記憶體的地址找到例如起始地址1000,然后把這個1000賦給PCB,因為創建了行程自然就有了PCB,這個起始地址就作為基地址,然后PC置好初始地址開始執行,
把程式放到找到的空閑記憶體中,每次執行都有進行地址翻譯
基地址+偏移量
思路如下:

當進行交換時

2. 引入分段
是將整個程式一起載入記憶體中嗎?不是
程式員眼中的程式

每一個段都有一個基址

GDT+LDT
作業系統這個表放在GDT里,而每個行程有自己的LDT表(行程段表,在PCB中)
此時轉換的時候不是整個程式,而是程式中對應的段進行轉換

轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/124002.html
標籤:Linux
上一篇:#Linux學習# 用戶管理命令
