Commit Graph

  • c767cfe159 Ignore thread_set_priority when BSD enabled Gleb Koval 2024-10-16 22:58:03 +01:00
  • eacd93b32d Optimise load_avg and recent_cpu updates - only run when BSD scheduler is enabled Gleb Koval 2024-10-16 22:56:47 +01:00
  • de8f303fa2 Implement BSD calculations - load_avg, recent_cpu, priority calculations - reduce frac bits to 14 Gleb Koval 2024-10-16 22:50:46 +01:00
  • 5967257bb0 Fix fixed-point returns Gleb Koval 2024-10-16 19:48:00 +01:00
  • 4a5de13d1e implement recent_cpu calculations on every second EDiasAlberto 2024-10-16 18:45:28 +01:00
  • 7a1aa21e1e implement logic to increment recent_cpu on every timer_interrupt () call EDiasAlberto 2024-10-16 18:34:56 +01:00
  • 0db3551a9a implement behaviour for thread recent_cpu to be defined based on parent recent_cpu, 0 for initial thread EDiasAlberto 2024-10-16 18:27:21 +01:00
  • 96fa718be1 Merge branch 'BSD-merged' into 'ethan-BSD' Dias Alberto, Ethan 2024-10-16 17:03:17 +00:00
  • 51d208f3ef Merge branch 'gleb/BSD' into 'BSD-merged' Dias Alberto, Ethan 2024-10-16 17:02:13 +00:00
  • 62c8818c05 Update thread_yield to add thread back in sorted order of priority sBubshait 2024-10-16 08:18:51 +01:00
  • fda79173c0 Update thread_unblock to maintain priority order in ready_list sBubshait 2024-10-16 08:00:50 +01:00
  • 1c53790ca7 Update set_priority to ensure that the new priority is within bounds sBubshait 2024-10-16 07:58:35 +01:00
  • 9bb0b758c8 Fix Error missing semicolon after function signature sBubshait 2024-10-16 07:40:41 +01:00
  • 8b3f9e353f Update creating thread to yield if the new thread has higher priority sBubshait 2024-10-16 07:33:24 +01:00
  • 83910f945c Add priority comparator function for thread list sorting sBubshait 2024-10-16 07:26:02 +01:00
  • 9f71c989a9 Update gitignore to ignore temporary Mac OS files and code editor folders sBubshait 2024-10-16 07:10:31 +01:00
  • 63742c5717 implement thread_get_nice & thread_get_recent_cpu Gleb Koval 2024-10-15 19:56:46 +01:00
  • 27d564ab49 inline funcs instead of macros for fixed-point Gleb Koval 2024-10-15 19:41:29 +01:00
  • efed660968 implement thread_set_nice and make skeleton for calculate_priority EDiasAlberto 2024-10-15 19:25:02 +01:00
  • ab66551c06 implement thread_get_nice EDiasAlberto 2024-10-15 19:21:15 +01:00
  • 3e379acd5e modify gitignore to ignore vscode files EDiasAlberto 2024-10-15 17:27:16 +01:00
  • 2834af032d fix bracketing issue in ROUNDING_FP_TO_INT EDiasAlberto 2024-10-15 17:23:03 +01:00
  • df89bda71e modify thread struct to track thread niceness and recent_cpu time EDiasAlberto 2024-10-15 17:09:06 +01:00
  • c32a69a368 Update repository settings to ignore shell scripts task1/priority-scheduling Themis Demetriades 2024-10-15 17:00:02 +01:00
  • 163b7f9016 Update setting of priority of threads to only yield when current thread's priority has been lowered Themis Demetriades 2024-10-15 15:38:31 +01:00
  • 5178b72370 comment fixed point arithmetic header EDiasAlberto 2024-10-15 15:34:06 +01:00
  • 724b6065f7 implement macros for fp multiplication and division EDiasAlberto 2024-10-15 15:24:34 +01:00
  • 1f1ffe4470 add brackets to fixed-point conversion_const calculation for clarity EDiasAlberto 2024-10-15 15:15:16 +01:00
  • 3c1a26b668 Update setting of thread priorities to yield in case a higher priority thread requires control Themis Demetriades 2024-10-15 15:14:05 +01:00
  • 42b0ff9d17 define basic fixed-point arithmetic operations EDiasAlberto 2024-10-15 15:13:40 +01:00
  • 54b46806ba Update thread creation to yield thread in case it's no longer the highest priority Themis Demetriades 2024-10-15 15:12:01 +01:00
  • 4e271ea5ab rewrite fixed-point.h to not have magic numbers EDiasAlberto 2024-10-15 15:04:26 +01:00
  • 4f6849c4a4 fix gitignore formatting EDiasAlberto 2024-10-15 14:59:57 +01:00
  • 1eb9abfdcd update gitignore to remove CLion files EDiasAlberto 2024-10-15 14:58:35 +01:00
  • 1042295e5f define fixed point arithmetic constants EDiasAlberto 2024-10-15 14:57:37 +01:00
  • 6855a48603 Update semaphore code to wake highest priority thread, and run if required Themis Demetriades 2024-10-15 13:53:48 +01:00
  • 79061fcb9b Update thread module to maintain list of ready threads in descending order of priority Themis Demetriades 2024-10-15 13:51:41 +01:00
  • d4d5a7a937 Update thread_priority_greater function signature to explicitly signal unused parameter Themis Demetriades 2024-10-15 12:01:03 +01:00
  • f1fa7d2ffb Reformat thread_priority_greater to fit code style Themis Demetriades 2024-10-15 11:51:40 +01:00
  • 1821d73b09 Add comparison function for thread list elements based on thread priority Themis Demetriades 2024-10-15 11:50:04 +01:00
  • 4ed64cf173 Add guard in thread_set_priority ensuring priority values are within correct range Themis Demetriades 2024-10-15 10:47:38 +01:00
  • 0a9cf6f242 Merge branch 'add-contributing-guidelines' into 'master' sb3923 2024-10-15 03:32:59 +00:00
  • a28bae3ad1 Add Contributing Guidelines for Group Collaboration sBubshait 2024-10-15 04:30:59 +01:00
  • 1be1350941 Merge branch 'gleb/non-busy-sleep' into 'master' Dias Alberto, Ethan 2024-10-14 18:29:16 +00:00
  • f5d130f832 Implement non-busy timer_sleep (task 0) Gleb Koval 2024-10-10 11:28:35 +01:00
  • d51648d7dc GitLab CI & testing image Gleb Koval 2024-10-10 17:19:53 +01:00
  • 1a669267d0 fixed interrupt disabling bug in threads_ready function Mark Wheelhouse 2024-10-02 15:04:13 +01:00
  • 8724a2641e provided code LabTS 2024-10-01 23:37:39 +01:00