|
|
ce89d3577f
|
fix: synchronise pagedir which now may be accessed by other threads, with a lock
|
2024-12-06 18:22:00 +00:00 |
|
sBubshait
|
7f058ffc90
|
Refactor page_type to rename PAGE_FILE to PAGE_EXECUTABLE as mmap and executables are now separate
|
2024-12-06 16:22:26 +00:00 |
|
|
|
f64b92bbfa
|
refactor: document shared_file_page
|
2024-12-06 15:35:23 +00:00 |
|
Themis Demetriades
|
65da1659e5
|
feat: merged shared-read-only-executables with the rest of VM
|
2024-12-06 04:15:13 +00:00 |
|
Themis Demetriades
|
31403ac7cb
|
fix: obtain correct page table entry when performing eviction
|
2024-12-06 00:56:03 +00:00 |
|
|
|
1da0c7d48c
|
fix: properly assign frame owners and deallocate in all required places
|
2024-12-06 00:29:57 +00:00 |
|
|
|
9aa9cdb91e
|
feat: implement proper destruction of pages, including for shared pages
|
2024-12-05 22:23:50 +00:00 |
|
Themis Demetriades
|
2811ea0eb3
|
fix: SPT never removes entries until process termination or special case
|
2024-12-05 22:05:02 +00:00 |
|
|
|
dd46200256
|
feat: initial shared file page management and initialization
|
2024-12-05 21:46:49 +00:00 |
|
|
|
4dd6b6e928
|
fix: do not leak when inserting the same page twice, just update
|
2024-12-05 19:38:27 +00:00 |
|
Themis Demetriades
|
d03e253046
|
feat: implement synchronisation to protecting access to PTEs of SPTs during eviction
|
2024-12-05 16:51:15 +00:00 |
|
sBubshait
|
f13fd435cd
|
Merge remote-tracking branch 'origin/vm/page-swap-synch' into vm/virtual-memory/saleh
# Conflicts:
# .gitlab-ci.yml
# src/Makefile.build
# src/threads/thread.c
# src/userprog/exception.c
# src/userprog/process.c
# src/vm/frame.c
# src/vm/page.c
# src/vm/page.h
# src/vm/stackgrowth.c
# src/vm/stackgrowth.h
|
2024-12-05 02:21:53 +00:00 |
|
sBubshait
|
941e1e067a
|
Update SPT page entry to change type from EXECUTABLE to PAGE_FILE to capture mmaps in addition to executables
|
2024-12-04 17:51:30 +00:00 |
|
Themis Demetriades
|
4bf6914cfa
|
feat: incorporate lazy-loading data & helpers into supplemental page table
|
2024-12-04 16:45:36 +00:00 |
|
Themis Demetriades
|
08eafcf7ef
|
feat: implement page swapping
|
2024-12-03 16:53:47 +00:00 |
|
Themis Demetriades
|
6f85d7642d
|
feat: implement clock (second-chance) page eviction algorithm
|
2024-11-30 22:40:13 +00:00 |
|
sBubshait
|
801fd7d310
|
Implement page fault for lazy loading executables, w/ G
|
2024-11-28 20:03:50 +00:00 |
|
sBubshait
|
97e6e0fb1e
|
Add SPT Helper Functions: Insert, Get, Cleanup w/ G
|
2024-11-28 18:18:52 +00:00 |
|
sBubshait
|
14fc96febf
|
Implement Supplemental Page Table (SPT) per thread along with structure for its entries, w/ G
|
2024-11-28 17:54:15 +00:00 |
|
Themis Demetriades
|
1e6b90da0d
|
Implement skeleton for swapping frames into disk
|
2024-11-26 18:59:46 +00:00 |
|