summaryrefslogtreecommitdiff
path: root/Kernel/Scheduler.cpp
AgeCommit message (Expand)Author
2019-08-10Kernel: Use a more detailed state machine for socket setupConrad Pankoff
2019-08-07Kernel: Don't create Function objects in the scheduling codeAndreas Kling
2019-08-01Scheduler: Fix bitrotted SCHEDULER_RUNNABLE_DEBUG codeAndreas Kling
2019-08-01Scheduler: Fix deadlock when first scheduling candidate being inspectedAndreas Kling
2019-07-22Move runnable/non-runnable list control entirely over to SchedulerRobin Burchell
2019-07-21Scheduler: Allow reentry into block()Robin Burchell
2019-07-20Thread: Cleanup m_blocker handlingRobin Burchell
2019-07-20Thread: Return a result from block() indicating why the block terminatedRobin Burchell
2019-07-19AK: Introduce IntrusiveListRobin Burchell
2019-07-19Kernel: Some small refinements to the thread blockers.Andreas Kling
2019-07-19Scheduler: Remove some raw use of the runnable listsRobin Burchell
2019-07-19Thread: Normalize all for_each constructs to use IterationDecisionRobin Burchell
2019-07-19Kernel: Restore state strings for block statesRobin Burchell
2019-07-19Kernel: Rename Condition state to Blocked now we only have one blocking mecha...Robin Burchell
2019-07-19Kernel: Convert BlockedSignal and BlockedLurking to the new Blocker mechanismRobin Burchell
2019-07-19Kernel: Avoid allocations for Select vectors by using inline capacityRobin Burchell
2019-07-19Kernel: Rename ThreadBlocker classes to avoid stutterRobin Burchell
2019-07-19Kernel: Port wait to ThreadBlockerRobin Burchell
2019-07-19Kernel: Port select to ThreadBlockerRobin Burchell
2019-07-19Kernel: Port sleep to ThreadBlockerRobin Burchell
2019-07-19Kernel: Introduce ThreadBlocker as a way to make unblocking neater :)Robin Burchell
2019-07-18Scheduler: Move thread unblocking out of a lambda to help make things more re...Robin Burchell
2019-07-18Kernel: Add a new block state for accept() on a blocking socketRobin Burchell
2019-07-17Kernel: Split SCHEDULER_DEBUG into a new SCHEDULER_RUNNABLE_DEBUGRobin Burchell
2019-07-14Kernel: Add Thread::block_until(Condition).Andreas Kling
2019-07-14Kernel: Add support for the WSTOPPED flag to the waitpid() syscall.Andreas Kling
2019-07-09Kernel: Move i8253.cpp => Arch/i386/PIT.cppAndreas Kling
2019-07-03AK: Rename the common integer typedefs to make it obvious what they are.Andreas Kling
2019-06-22printf: Oops, '-' is the left padding modifier, not ' '.Andreas Kling
2019-06-13Kernel: Rename "descriptor" to "description" where appropriate.Andreas Kling
2019-06-07Kernel: Qualify a bunch of #include statements.Andreas Kling
2019-06-07Kernel: Run clang-format on everything.Andreas Kling
2019-06-07Kernel: Implement the alarm() syscall.Andreas Kling
2019-06-07Kernel: Rename FileDescriptor to FileDescription.Andreas Kling
2019-05-20Kernel: Add support for recv() with MSG_DONTWAIT.Andreas Kling
2019-05-18Kernel: Make sure we never put the colonel thread in the runnable list.Andreas Kling
2019-05-18Kernel: Refactor thread scheduling a bit, breaking it into multiple lists.Andreas Kling
2019-05-15Kernel: Add a beep() syscall that beeps the PC speaker.Andreas Kling
2019-05-03Kernel: Prepare Socket for becoming a File.Andreas Kling
2019-04-29Kernel: Have File virtuals take a FileDescriptor& rather than a Process&.Andreas Kling
2019-04-29Kernel: Make FIFO inherit from File.Andreas Kling
2019-04-21Kernel: Get rid of the "cool globals" thingy.Andreas Kling
2019-04-20Kernel: Make the colonel run at "Idle" priority (the lowest possible.)Andreas Kling
2019-04-17Kernel: Scheduler donations need to verify that the beneficiary is valid.Andreas Kling
2019-04-14Kernel: Remove system.h and make the uptime global a qword.Andreas Kling
2019-03-25Kernel: Do timekeeping manually instead of asking the RTC all the time.Andreas Kling
2019-03-24Kernel: Fix broken destruction order for Process/Thread.Andreas Kling
2019-03-23Kernel: Set the colonel task to low priority.Andreas Kling
2019-03-23Kernel: Introduce threads, and refactor everything in support of it.Andreas Kling
2019-03-20Kernel: Snooze the NetworkTask until there are incoming packets to process.Andreas Kling