Archived
Step 3 - TLB(全相联 + LRU)
This commit is contained in:
+9
-9
@@ -83,20 +83,20 @@
|
||||
|
||||
### TODO
|
||||
|
||||
- [ ] 新建 `TlbEntry.cs`:`VPN -> PFN` 映射及有效位
|
||||
- [ ] 新建 `TlbCache.cs`:查询、更新、淘汰
|
||||
- [ ] 使用 `Dictionary + LinkedList` 实现 O(1) 级 LRU
|
||||
- [x] 新建 `TlbEntry.cs`:`VPN -> PFN` 映射及有效位
|
||||
- [x] 新建 `TlbCache.cs`:查询、更新、淘汰
|
||||
- [x] 使用 `Dictionary + LinkedList` 实现 O(1) 级 LRU
|
||||
|
||||
### 行为要求
|
||||
|
||||
- [ ] `Lookup(vpn)`:命中返回 PFN,未命中返回失败
|
||||
- [ ] `InsertOrUpdate(vpn, pfn)`:已存在则更新并置为最近使用
|
||||
- [ ] 超出容量时淘汰最久未使用项
|
||||
- [x] `Lookup(vpn)`:命中返回 PFN,未命中返回失败
|
||||
- [x] `InsertOrUpdate(vpn, pfn)`:已存在则更新并置为最近使用
|
||||
- [x] 超出容量时淘汰最久未使用项
|
||||
|
||||
### 完成标准
|
||||
|
||||
- [ ] 构造用例可验证 LRU 淘汰顺序正确
|
||||
- [ ] 连续访问时命中统计准确
|
||||
- [x] 构造用例可验证 LRU 淘汰顺序正确
|
||||
- [x] 连续访问时命中统计准确
|
||||
|
||||
## 5. Step 4 - 二级页表 + 缺页 + FIFO
|
||||
|
||||
@@ -207,4 +207,4 @@
|
||||
|
||||
- [x] 先完成 Step 1(参数模型 + 校验)
|
||||
- [x] 紧接 Step 2(地址拆分)
|
||||
- [ ] 当天收尾前完成 Step 3(TLB LRU 最小可运行)
|
||||
- [x] 当天收尾前完成 Step 3(TLB LRU 最小可运行)
|
||||
|
||||
Reference in New Issue
Block a user