sBubshait
|
6a1d10a19b
|
Refactor synch to follow PintOS curly braces indentation style in if statements
|
2024-11-15 13:51:10 +00:00 |
|
|
|
dd979f34c8
|
Fix syn-read, syn-write, and always free elements from donors_list
|
2024-11-12 21:30:23 +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 |
|
|
|
18c884234d
|
Fix race-condition in process result (memory leak), fix infinite loop in donors_list
|
2024-11-11 17:35:49 +00:00 |
|
sBubshait
|
91cef4d650
|
Refactor lock release and sema up to remove unnecessary code
|
2024-11-06 15:36:56 +00:00 |
|
sBubshait
|
c2414ec54d
|
Add priority_less for comparing threads based on priority and Refactor sema up to use list_max for clarity
|
2024-10-25 16:04:55 +01:00 |
|
sBubshait
|
81309dcda9
|
Refactor sema_up to follow PintOS styling of if statements
|
2024-10-25 15:44:56 +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 |
|
EDiasAlberto
|
60acc2e58d
|
refactor thread_mlfqs checks in synch.c
|
2024-10-24 21:46:39 +01:00 |
|
EDiasAlberto
|
d8c843f16a
|
add mlfqs condition checking in synchronisation primitives
|
2024-10-23 19:37:27 +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
|
95386971e2
|
Update lock_release to disable interrupts in critical sections w/ S
|
2024-10-23 16:45:42 +01:00 |
|
sBubshait
|
4879775d0b
|
Update donate priority to add an assertion that intrrupts are disabled, w/ T
|
2024-10-23 16:32:40 +01:00 |
|
sBubshait
|
6223846fde
|
Update lock_acquire to disable interrupts to eliminate race-conditions, w/ T
|
2024-10-23 16:30:38 +01:00 |
|
Themis Demetriades
|
5f8dea21be
|
Fix donate_priority to disable interrupts for entire update of possibly-ready donatee's priority
|
2024-10-23 14:10:48 +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
|
2cd4da17a4
|
Refactor donate_priority to only allow for the current thread to donate its priority
|
2024-10-23 13:42:36 +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
|
d82176a2e2
|
Refactor lock release to follow PintOS indent style and use list functoins, w/ T
|
2024-10-22 22:52:29 +01:00 |
|
Themis Demetriades
|
7aec2e6862
|
Refactor donate_priority to include comments explaining its purpose and logic w/ S
|
2024-10-22 21:15:30 +01:00 |
|
sBubshait
|
78c6fd36e3
|
Refactor sema_up to add comments for clarity, w/ T
|
2024-10-22 21:04:14 +01:00 |
|
Themis Demetriades
|
48104b3a41
|
Refactor cond_signal to add comment clarifying the logic w/ S
|
2024-10-22 20:57:18 +01:00 |
|
sBubshait
|
244db41434
|
Update condvar to use linear search due to changes in priority from donations, w/ T
|
2024-10-22 20:25:13 +01:00 |
|
Themis Demetriades
|
21cbfc9fe0
|
Implement transfer of orphaned donors when releasing lock w/ S
|
2024-10-22 20:06:21 +01:00 |
|
Themis Demetriades
|
dae5b0d097
|
Update semaphore priority scheduling to use linear search on unordered list w/ S
|
2024-10-20 22:50:31 +01:00 |
|
Themis Demetriades
|
840df8af78
|
Fix bug in donate_priority that wouldn't update the list of donors w/ S
|
2024-10-20 22:29:20 +01:00 |
|
Themis Demetriades
|
8e20884a23
|
Update releasing of locks to update donation information w/ S
|
2024-10-20 20:17:27 +01:00 |
|
Themis Demetriades
|
ee0cf632b9
|
Fix attempt to donate priority within lock acquisition w/ S
|
2024-10-20 19:45:05 +01:00 |
|
sBubshait
|
343ac55d37
|
Implement priority donation helper function with propagation, w/ T
|
2024-10-20 19:42:35 +01:00 |
|
Themis Demetriades
|
f98e4bc81c
|
Update lock_acquire to attempt donation of priorities, w/ S
|
2024-10-20 19:20:26 +01:00 |
|
Themis
|
6b9b671368
|
Update sema_up to properly yield during execution of an interrupt handler
|
2024-10-17 20:01:55 +01:00 |
|
Themis
|
711efdc78a
|
Implement priority scheduling for condition variables
|
2024-10-17 19:43:35 +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 |
|
sBubshait
|
88967acdaa
|
Update cond_wait to insert into waiters list in sorted order of priority
|
2024-10-17 08:53:53 +01:00 |
|
sBubshait
|
e74ee59e17
|
Update sema priority compare to take aux optionally as priority of first sema
|
2024-10-17 08:46:14 +01:00 |
|
sBubshait
|
53b296d6c4
|
Add function to compare the priority of two semaphores
|
2024-10-17 08:36:29 +01:00 |
|
sBubshait
|
0d6fb2f167
|
Update sema_up to yield CPU if unblocked has higher priority
|
2024-10-17 07:15:10 +01:00 |
|
sBubshait
|
24900545d4
|
Update sema_down to insert into waiters list in priority sorted order
|
2024-10-17 06:54:10 +01:00 |
|
Themis Demetriades
|
6855a48603
|
Update semaphore code to wake highest priority thread, and run if required
|
2024-10-15 13:53:48 +01:00 |
|
LabTS
|
8724a2641e
|
provided code
|
2024-10-01 23:37:39 +01:00 |
|