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 |
|
EDiasAlberto
|
ac31fb1e1e
|
feat: set accessed bit to allocated frames in page_load and get_usr_kpage
|
2024-12-05 01:41:23 +00:00 |
|
sBubshait
|
806d6bc19e
|
Refactor: Move destroying mmap data into process_exit instead of thread
|
2024-12-04 21:59:38 +00:00 |
|
Themis Demetriades
|
723055f485
|
fix: only use lazy loading if VM flag is enabled
|
2024-12-04 21:33:21 +00:00 |
|
Themis Demetriades
|
1e236a5c47
|
Merge branch 'vm/lazy-loading' into vm/page-swap-synch
|
2024-12-04 19:11:37 +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
|
6f85d7642d
|
feat: implement clock (second-chance) page eviction algorithm
|
2024-11-30 22:40:13 +00:00 |
|
sBubshait
|
92d0b68243
|
Fix: Avoid closing the file after loading segments to be able to lazily load from file without opening, w/ G
|
2024-11-29 14:32:55 +00:00 |
|
sBubshait
|
801fd7d310
|
Implement page fault for lazy loading executables, w/ G
|
2024-11-28 20:03:50 +00:00 |
|
sBubshait
|
df20e0fdfe
|
Update load_segment to load only the metadata of the pages to the SPT, w/ G
|
2024-11-28 18:35:49 +00:00 |
|
sBubshait
|
97e6e0fb1e
|
Add SPT Helper Functions: Insert, Get, Cleanup w/ G
|
2024-11-28 18:18:52 +00:00 |
|
Themis Demetriades
|
1e6b90da0d
|
Implement skeleton for swapping frames into disk
|
2024-11-26 18:59:46 +00:00 |
|
Themis Demetriades
|
ea2725f606
|
feat: implement frame table without thread safety
|
2024-11-26 15:17:11 +00:00 |
|
|
|
8567434231
|
Use a single exit_status instead of two
|
2024-11-15 17:28:04 +00:00 |
|
|
|
2566948a32
|
Implement hash table for child process results
|
2024-11-15 16:45:04 +00:00 |
|
sBubshait
|
7daf4fb079
|
Refactor process_exit to add more comments for readability
|
2024-11-15 15:35:07 +00:00 |
|
sBubshait
|
a7f1d519da
|
Refactor process_wait to add more comments and improve readability
|
2024-11-15 15:09:24 +00:00 |
|
sBubshait
|
0f1bce2e88
|
Refactor process_init_stack to add asserts and comments
|
2024-11-15 14:52:21 +00:00 |
|
sBubshait
|
f4c900e56c
|
Refactor process.c for comments, clarity and readability
|
2024-11-15 14:37:38 +00:00 |
|
Themis Demetriades
|
eff0837fdc
|
Update stack initialization code to handle all possible overflows and implement a user program to test this
|
2024-11-15 13:35:58 +00:00 |
|
Themis Demetriades
|
5e2e7199f2
|
Fix memory leak in start_process
|
2024-11-14 21:03:55 +00:00 |
|
Themis Demetriades
|
e4036c715f
|
Refactor start_process to hold file system lock for less time
|
2024-11-14 16:05:15 +00:00 |
|
Themis Demetriades
|
3a46e0f73a
|
Update user proc stack initialization comments to be more helpful
|
2024-11-14 15:54:34 +00:00 |
|
Themis Demetriades
|
8821851459
|
Refactor process_execute to remove use of 'goto'
|
2024-11-14 14:42:26 +00:00 |
|
Themis Demetriades
|
1a2ff35231
|
Refactor process_execute to pass process start data as a local reference rather than perform memory allocation on the heap
|
2024-11-14 14:32:48 +00:00 |
|
|
|
f5e498e0a9
|
explicit thread_exit () when process_start () fails
|
2024-11-13 21:58:41 +00:00 |
|
|
|
d02b956221
|
Merge branch 'system-calls' into 'userprog-oom'
Add Fixes to Memory Leaks, Memory Access Validation, Synchronised Processes and Refactoring
See merge request lab2425_autumn/pintos_22!38
|
2024-11-13 19:20:19 +00:00 |
|
|
|
e7cb16b301
|
Fix child_results loop accessing next after free()
|
2024-11-13 18:29:05 +00:00 |
|
sBubshait
|
4f586bb4da
|
Fix Bug: Free all entries in the fd hashtable when the process exits, w/ E
|
2024-11-13 17:42:25 +00:00 |
|
|
|
005791edd2
|
Synchronise process_execute return with child process load
|
2024-11-13 11:05:09 +00:00 |
|
|
|
dd979f34c8
|
Fix syn-read, syn-write, and always free elements from donors_list
|
2024-11-12 21:30:23 +00:00 |
|
|
|
ca9d23edf9
|
Always release filesys_lock when checking if file is valid in process_execute
|
2024-11-12 20:07:51 +00:00 |
|
Themis Demetriades
|
d878dbc132
|
Fix bug in userprog-merge where file writes were denied in the wrong thread
|
2024-11-12 16:22:32 +00:00 |
|
Themis Demetriades
|
b0400693ae
|
Update process_execute to acquire lock when checking if file exists
|
2024-11-12 16:12:24 +00:00 |
|
Themis Demetriades
|
a69b9c808e
|
Update start_process to acquire filesys lock when loading user process file
|
2024-11-12 14:21:33 +00:00 |
|
EDiasAlberto
|
72afecfbda
|
Add validation to check for missing files in exec() args
|
2024-11-11 23:10:02 +00:00 |
|
Themis Demetriades
|
e8713e26c6
|
Update variable references between conflicting merges to refer to the same data in stack initialization
|
2024-11-11 22:51:19 +00:00 |
|
Demetriades, Themis
|
47c3657b65
|
Merge branch 'process-wait' into 'userprog-merge'
Fix race-condition in process result (memory leak), fix infinite loop in donors_list
See merge request lab2425_autumn/pintos_22!33
|
2024-11-11 22:24:39 +00:00 |
|
Demetriades, Themis
|
4eafdf10ba
|
Merge branch 'read-only-exec' into 'userprog-merge'
Combine syscall code with final stack initialization code
See merge request lab2425_autumn/pintos_22!32
|
2024-11-11 22:23:20 +00:00 |
|
Themis Demetriades
|
14a4841772
|
Fix bug where size of file name buffer was less than maximum file name size
|
2024-11-11 22:13:10 +00:00 |
|
Themis Demetriades
|
52fdd47e0c
|
Fix race condition in the passing of data from thread executing process_execute to its child
|
2024-11-11 21:51:38 +00:00 |
|
Themis Demetriades
|
049fc5559c
|
Reformat stack initialization code to follow style for length and spacing
|
2024-11-11 21:20:53 +00:00 |
|
EDiasAlberto
|
98a5818406
|
add file_deny_write and file_allow_write to process creation and exiting to make executable read-only
|
2024-11-11 17:55:24 +00:00 |
|
|
|
18c884234d
|
Fix race-condition in process result (memory leak), fix infinite loop in donors_list
|
2024-11-11 17:35:49 +00:00 |
|
Themis Demetriades
|
b8d358ecb2
|
Update stack initialization to handle overflow by allocating a second page for argument pointers
|
2024-11-11 13:13:21 +00:00 |
|
Themis Demetriades
|
8b2fc86b51
|
Refactor process_init_stack to reduce code duplication
|
2024-11-10 14:34:38 +00:00 |
|
Themis Demetriades
|
324301e7b3
|
Update process_execute function comment to reflect new function arguments
|
2024-11-10 13:43:22 +00:00 |
|
Themis Demetriades
|
0ac46db2e4
|
Refactor process initialization to obtain name of process file in process_execute
|
2024-11-10 13:41:08 +00:00 |
|
Themis Demetriades
|
795d81b7ad
|
Update process_init_tack saveptr argument name to cmd_savetpr for clarity
|
2024-11-10 11:33:29 +00:00 |
|