|
|
2566948a32
|
Implement hash table for child process results
|
2024-11-15 16:45:04 +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 |
|
|
|
dd979f34c8
|
Fix syn-read, syn-write, and always free elements from donors_list
|
2024-11-12 21:30:23 +00:00 |
|
EDiasAlberto
|
5b1e4b561b
|
merge process-wait
|
2024-11-11 15:50:21 +00:00 |
|
sBubshait
|
115c650c55
|
Fix Bug in thread initialisation: only init hash if USERPROG is defined
|
2024-11-08 19:10:42 +00:00 |
|
EDiasAlberto
|
92e93b8060
|
Implement syscall for file opening and refactor open_files initialisation in thread.c w/ S.
|
2024-11-08 15:33:47 +00:00 |
|
sBubshait
|
5bd94894e0
|
Update thread structure to add a hash table of open files and initialise it, w/ E
|
2024-11-08 15:13:04 +00:00 |
|
|
|
6ed1ccd21e
|
Fix process_result locking by acquiring in process_wait as well to prevent freeing memory too early
|
2024-11-08 10:50:10 +00:00 |
|
|
|
84fe637c7e
|
Remove process_result lock since it is an invalid solution
TODO : synchronise process_result in another way
|
2024-11-08 09:16:18 +00:00 |
|
|
|
7349b4e66f
|
Fix typo list_insert -> list_push_back for thread.child_results
|
2024-11-08 03:55:34 +00:00 |
|
|
|
ec8547aec9
|
Implement creation of process results
|
2024-11-08 03:31:48 +00:00 |
|
sBubshait
|
2dccd87a76
|
Update thread to add exit_status, intialised to -1, into the thread structure, w/ E
|
2024-11-05 22:38:09 +00:00 |
|
Themis Demetriades
|
4066354f8a
|
Refactor thread_create () to call thread_get_priority in order to retrieve priority
|
2024-10-25 17:03:18 +01:00 |
|
sBubshait
|
30ab3ae861
|
Update thread_create to only yield CPU to the new thread if necessary
|
2024-10-25 15:47:19 +01:00 |
|
|
|
6e072a557f
|
Allow priority donation with BSD scheduler.
- Recalculate priority with donations after BSD priority updates
- Remove mlfqs checks from lock_acquire
|
2024-10-25 14:03:55 +01:00 |
|
|
|
093c6efd30
|
Re-sort ready_list when priorities update + PRI_UPDATE_FREQ
- PRI_UPDATE_FREQ is a separate value from TIME_SLICE, they just
happen to be set the same.
|
2024-10-25 09:13:27 +01:00 |
|
EDiasAlberto
|
b88baede64
|
rename recent_cpu update function
|
2024-10-24 22:45:49 +01:00 |
|
EDiasAlberto
|
7d196ffc57
|
adjust spacing around brackets to fit styling conventions
|
2024-10-24 22:30:38 +01:00 |
|
EDiasAlberto
|
39f4edd5e6
|
remove unnecessary curly brace in thread_tick ()
|
2024-10-24 22:09:28 +01:00 |
|
EDiasAlberto
|
60acc2e58d
|
refactor thread_mlfqs checks in synch.c
|
2024-10-24 21:46:39 +01:00 |
|
EDiasAlberto
|
a6a0c4ad25
|
remove empty lines in thread.c
|
2024-10-24 20:47:30 +01:00 |
|
EDiasAlberto
|
74657bbf9c
|
reorder init_thread for clarity
|
2024-10-24 20:34:44 +01:00 |
|
EDiasAlberto
|
49a9284f02
|
refactor fixed-point.h to match style standards
|
2024-10-24 20:16:40 +01:00 |
|
EDiasAlberto
|
20be75748c
|
replace thread_mlfqs checks in priority calculations with assertions
|
2024-10-23 19:57:17 +01:00 |
|
EDiasAlberto
|
d8c843f16a
|
add mlfqs condition checking in synchronisation primitives
|
2024-10-23 19:37:27 +01:00 |
|
EDiasAlberto
|
1fb101c365
|
remove repeated comparator and reorder thread_init operations
|
2024-10-23 18:56:48 +01:00 |
|
EDiasAlberto
|
c357126cc1
|
fix missing curly brace
|
2024-10-23 17:51:48 +01:00 |
|
Dias Alberto, Ethan
|
ed11c61f87
|
Merge branch 'master' into 'BSD-merged', fixing merge conflicts
# Conflicts:
# src/threads/thread.c
|
2024-10-23 16:30:24 +00:00 |
|
Themis Demetriades
|
f9d82c92de
|
Update thread_recalculate_priority to disable interrupts preventing race conditions for access to donors and priorities w/ S
|
2024-10-23 16:16:25 +01:00 |
|
Themis Demetriades
|
b0074c80f0
|
Refactor ready_list_reinsert to require being called with interrupts disabled
|
2024-10-23 13:51:07 +01:00 |
|
Themis Demetriades
|
a875d5fcb4
|
Update donate_priority to only attempt to sort position of the donee that isn't waiting for a lock
|
2024-10-23 13:37:43 +01:00 |
|
sBubshait
|
5549b9c0cb
|
Refactor thread recalculate priority to add comments for clarity, w/ T
|
2024-10-22 20:52:52 +01:00 |
|
sBubshait
|
bf6104200c
|
Refactor thread set priority to remove unused variable and add comment, w/ T
|
2024-10-22 20:47:34 +01:00 |
|
Themis Demetriades
|
6983ccdd3b
|
Update thread_get_priority description comment to be more specific w/ S
|
2024-10-22 20:41:44 +01:00 |
|
sBubshait
|
d9b9572631
|
Fix Bug in recalculating priority, uses 'elem' instead of 'donor_elem', w/ T
|
2024-10-22 19:49:53 +01:00 |
|
Themis Demetriades
|
a19d40bcca
|
Reformat priority_more to obey code style
|
2024-10-22 19:01:55 +01:00 |
|
Themis Demetriades
|
f10514f4cc
|
Update priority_more comment description to specify which list_elem member it is compatible with
|
2024-10-22 18:59:19 +01:00 |
|
sBubshait
|
7f7b1648cd
|
Fix indentation in recalculate priority to match pintos style, w/ T
|
2024-10-20 22:28:29 +01:00 |
|
sBubshait
|
44de31c0ff
|
Fix Bug in Implementation of recalculate priority setting base priority, w/ T
|
2024-10-20 20:54:48 +01:00 |
|
Themis Demetriades
|
afcb12cef0
|
Reformat thread priority changing functions to follow style w/ S
|
2024-10-20 20:38:28 +01:00 |
|
sBubshait
|
b1dba1a0bd
|
Add implementation for recalculate effective priority, w/ T
|
2024-10-20 20:37:03 +01:00 |
|
Themis Demetriades
|
8e20884a23
|
Update releasing of locks to update donation information w/ S
|
2024-10-20 20:17:27 +01:00 |
|
sBubshait
|
343ac55d37
|
Implement priority donation helper function with propagation, w/ T
|
2024-10-20 19:42:35 +01:00 |
|
sBubshait
|
5a651f1279
|
Update implementation of thread set priority to account for donations, w/ T
|
2024-10-20 18:06:07 +01:00 |
|
Themis Demetriades
|
fcc8cbb71e
|
Implement initialization of new threads to track donation information, w/ S
|
2024-10-20 17:11:44 +01:00 |
|
|
|
cbb9d52455
|
Recover removed comment
|
2024-10-17 20:09:43 +01:00 |
|
sBubshait
|
bfdedc53e2
|
Update set priority so not to yield if no ready threads
|
2024-10-17 19:46:10 +01:00 |
|
sBubshait
|
c9a9d57019
|
Merge branch 'task1/priority-scheduling' into task1/merged/priority-scheduling
# Conflicts:
# .gitignore
# src/threads/synch.c
# src/threads/thread.c
|
2024-10-17 19:30:19 +01:00 |
|
|
|
044c383a0f
|
fix mlfqs tests, complete BSD scheduling
|
2024-10-17 18:31:09 +01:00 |
|
|
|
c5e41db9b0
|
Implement BSD calculations
- load_avg, recent_cpu, priority calculations
- reduce frac bits to 14
- ignore thread_set_priority when BSD enabled
|
2024-10-17 18:31:09 +01:00 |
|