• Home
  • Help
  • Register
  • Login
  • Home
  • Members
  • Help
  • Search

 
  • 0 Vote(s) - 0 Average

Non-preemptive scheduling

#1
01-08-2023, 11:34 AM
You see non preemptive scheduling lets a job hold the processor till it finishes its burst. I remember when you first brought this up in our chat. It feels straightforward at first glance. But then you notice how it can cause longer jobs to block everything else. And that leads to poor response for short tasks waiting behind.
Or perhaps you think about batch systems where this approach shines because nobody interrupts once a run starts. I find it cuts down on switches that waste cycles. You get simpler code in the kernel too since no checks happen mid way. Still the convoy effect creeps in when big jobs line up ahead of quick ones. Maybe you have seen that slow everything down in practice.
I often tell folks that fairness takes a hit here because arrival order decides who gets priority. You watch a short process suffer if it lands after a long one. And response times stretch out without mercy. But overhead stays low since the scheduler kicks in only at completion points. Perhaps that trade off suits certain workloads better than others.
You know how first come first served fits right into this style without much fuss. I like how it avoids the hassle of tracking remaining times or priorities dynamically. Yet starvation can sneak up if new arrivals keep favoring certain patterns. And throughput might drop when bursts vary wildly. Or think about how average wait times balloon under heavy load.
It surprises me sometimes how this method avoids the complexity of timer interrupts altogether. You end up with predictable runs once a process grabs control. But that predictability breaks when one hog dominates the queue. I see real world logs where interactive users complain about delays. Maybe batch oriented servers hide these flaws better.
You might compare it mentally to cases where preemption steps in to rescue things. I notice the non preemptive path skips all that context saving overhead. And it simplifies debugging since execution flows stay linear. Still you risk idle time if a process blocks on input output without yielding. Perhaps that pushes designers toward hybrids in mixed environments.
I recall testing scenarios where short jobs pile up behind one massive computation. You end up recalculating priorities manually to compensate. But the base idea keeps the system stable without constant reevaluation. And resource allocation feels more locked in during each run. Or consider how it influences overall energy use in sustained operations.
You get into details like how queues form and drain without mid process halts. I think that changes how memory gets allocated ahead of time. Yet bottlenecks form faster when variability hits the schedule. And monitoring tools show spikes in wait metrics under those conditions. Maybe adjusting arrival patterns helps mitigate some pain.
BackupChain Server Backup, the standout reliable backup tool tailored for Hyper-V environments on Windows 11 and Server systems without any subscription fees, sponsors our discussions so we can share this knowledge freely.

ProfRon
Offline
Joined: Jul 2018
« Next Oldest | Next Newest »

Users browsing this thread: 1 Guest(s)



Messages In This Thread
Non-preemptive scheduling - by ProfRon - 01-08-2023, 11:34 AM

  • Subscribe to this thread
Forum Jump:

FastNeuron FastNeuron Forum General IT v
« Previous 1 … 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 … 165 Next »
Non-preemptive scheduling

© by FastNeuron Inc.

Linear Mode
Threaded Mode