Themis Demetriades
|
6adf2e743b
|
refactor: dynamic stack growth functions to follow code style
|
2024-12-02 19:50:40 +00:00 |
|
Themis Demetriades
|
05a48cf9c6
|
refactor: page fault exception handler follows code style
|
2024-12-01 23:36:55 +00:00 |
|
Themis Demetriades
|
bb16abdc0d
|
refactor: supplemental page table helper functions follow code style
|
2024-12-01 23:30:50 +00:00 |
|
Demetriades, Themis
|
9d35beb2e4
|
Merge branch 'virtual-memory' into 'page-swap-helpers'
# Conflicts:
# src/vm/frame.c
# src/vm/page.c
|
2024-12-01 21:44:17 +00:00 |
|
Themis Demetriades
|
7ce512305e
|
fix: remove DVM flag when compiling outside of vm directory
|
2024-12-01 00:41:09 +00:00 |
|
Demetriades, Themis
|
d8edc6d3fe
|
Merge branch 'virtual-memory' into 'ethan-stack-growth'
# Conflicts:
# src/Makefile.build
|
2024-11-30 23:21:16 +00:00 |
|
Themis Demetriades
|
6f85d7642d
|
feat: implement clock (second-chance) page eviction algorithm
|
2024-11-30 22:40:13 +00:00 |
|
EDiasAlberto
|
94adc11f03
|
Feat: implement page_get_swap and page_set_swap functions
|
2024-11-30 03:21:34 +00:00 |
|
EDiasAlberto
|
40c553d68b
|
Merge stack growth functions
|
2024-11-30 01:54:28 +00:00 |
|
EDiasAlberto
|
13de832586
|
Refactor stack growth code to remove messy conditions
|
2024-11-29 23:52:05 +00:00 |
|
EDiasAlberto
|
5c661c2e24
|
Feat: pointer validation checks string across multiple pages and handle kernel page faults
|
2024-11-29 23:49:49 +00:00 |
|
EDiasAlberto
|
5f40d83e66
|
Implement MMU-based user memory validation
|
2024-11-29 23:03:31 +00:00 |
|
Themis Demetriades
|
149bb42889
|
feat: implement clock (second-chance) page eviction algorithm
|
2024-11-29 19:30:47 +00:00 |
|
EDiasAlberto
|
4f84a83611
|
Refactor: abstract new page allocation to one general function and make helper functions static
|
2024-11-27 19:41:22 +00:00 |
|
EDiasAlberto
|
c74a8c55aa
|
Implement stack growth for system calls and add stack pointer tracking to thread
|
2024-11-27 19:21:43 +00:00 |
|
EDiasAlberto
|
c670c29e47
|
update stack growth header to fit virtual memory naming format
|
2024-11-27 18:57:20 +00:00 |
|
Themis Demetriades
|
ea2725f606
|
feat: implement frame table without thread safety
|
2024-11-26 15:17:11 +00:00 |
|
EDiasAlberto
|
af7f2ba873
|
Fix: Magic number in stackgrowth.c
|
2024-11-26 04:54:00 +00:00 |
|
EDiasAlberto
|
3ef5264b6e
|
feat: allow stack to grow for process up to 8MB in size
|
2024-11-26 04:43:25 +00:00 |
|
|
|
aedb72246b
|
fix: do not acquire filesys_lock for tell and seek
|
2024-11-24 15:41:18 +00:00 |
|
|
|
e1f0258f8e
|
fix: handle malloc result in init_process_result
|
2024-11-24 15:09:32 +00:00 |
|
|
|
8567434231
|
Use a single exit_status instead of two
|
2024-11-15 17:28:04 +00:00 |
|
sBubshait
|
8f82f9d747
|
Fix Bug in fd_counter initialisation when USERPROG is not defined
|
2024-11-15 16:57:16 +00:00 |
|
|
|
2566948a32
|
Implement hash table for child process results
|
2024-11-15 16:45:04 +00:00 |
|
sBubshait
|
ea3b3594ea
|
Update fd_hash to use the fd itself as the hash value for performance, w/ G & E
|
2024-11-15 15:53:01 +00:00 |
|
sBubshait
|
6b1dbdd34f
|
Update thread and syscall to use local fd counter instead global one, preventing overflow
|
2024-11-15 15:48:56 +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 |
|
sBubshait
|
82d45880f7
|
Update validate_user_pointer to start from the beginning of the page rather than the given ptr
|
2024-11-15 13:51:10 +00:00 |
|
sBubshait
|
1c757ecdfe
|
Update syscall to add more helpful comments for clarity and readability
|
2024-11-15 13:51:10 +00:00 |
|
sBubshait
|
6a1d10a19b
|
Refactor synch to follow PintOS curly braces indentation style in if statements
|
2024-11-15 13:51:10 +00:00 |
|
Themis Demetriades
|
7947ac78e8
|
Remove args-ovf user program binary, replacing with source for testing
|
2024-11-15 13:40:21 +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 |
|
sBubshait
|
fa2fb4a711
|
Refactor system call comments for accuracy and grammar
|
2024-11-13 18:48:23 +00:00 |
|
sBubshait
|
31ea215805
|
Refactor validate_user_string to remove unnecessary variable to track length of str
|
2024-11-13 18:30:24 +00:00 |
|
|
|
e7cb16b301
|
Fix child_results loop accessing next after free()
|
2024-11-13 18:29:05 +00:00 |
|
sBubshait
|
9549ca28e5
|
Refactor syscall: Use EXIT_FAILURE instead of magic numbers & close files on failure
|
2024-11-13 18:18:41 +00:00 |
|
sBubshait
|
b1c5819469
|
Avoid masking the struct syscall_arguments using typedef for consistency
|
2024-11-13 18:06:51 +00:00 |
|
sBubshait
|
287130ca7b
|
Update syscall.c to use syscall_exit on failure instead of calling thread_exit directly
|
2024-11-13 18:02:08 +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 |
|
sBubshait
|
d890c2353e
|
Add constant MAX_SYSCALL_ARGS to avoid magic numbers [Gleb]
|
2024-11-13 17:16:15 +00:00 |
|