Talk:Scheduling (computing)
![]() | Systems Unassessed | ||||||||||||
|
Category
If I would have to choose to put this article into Category:Scheduling (computing) or Category:Scheduling algorithms (the second category is a subcategory of the first one) I would choose Category:Scheduling (computing). What do you think? --surueña 13:22, 2005 May 28 (UTC)
- Agreed. --huwr 00:18, 29 May 2005 (UTC)
Swapping vs. Paging
Could you elaborate why paging in/out is incorrect?
- Paging is the process of mapping pages of virtual memory to and from physical memory; swapping is the process of moving pages of physical memory to and from secondary storage (disk-based swap files/partitions).
- According to virtual memory, "Paging is the process of saving inactive virtual memory pages to disk and restoring them to real memory when required.". This challenges what you're arguing. The Paging article differentiates "Paging" and "Swapping", but not in the way you explain. From my understanding of that article paging in/out covers the swapping in/out definition but can also apply to other kind of page/disk operations like Memory-mapped I/O. —Preceding unsigned comment added by 66.36.133.101 (talk) 11:19, 6 May 2008 (UTC)
- I guess, strictly speaking, you could say that only if a memory page cannot be "paged in" (in other words, a page fault occurs due to the page in question not being mapped in the page table), then it gets "swapped in". --Piet Delport 08:47, 25 April 2006 (UTC)
Software vs. Hardware
What about the schedulers in CPUs? Should that be a separate article, or should it be included here?the1physicist 20:06, 28 May 2006 (UTC)
- Either here or in the central processing unit article, probably, depending on the content. You don't need to worry too much, though; be bold and add it! :) The content can always be moved later. --Piet Delport 22:08, 28 May 2006 (UTC)
Job Shop Problem
The Job-Shop-Scheduling is linked to the article job shop. As far as I know, a job job is a sort of factory, but the job-shop-problem is a wide-spread scheduling problem with which a job shop can be analysed an optimized (and other problems, for sure).
Todo: Add this
The scheduler determines which process to run based on:
- Intrinsic Properties and
- -Running time
- -Space allocated
- etc
- Extrinsic Properties
- -Is there a priority associated with the program
- -Is the program focused
- etc
Separate communication article?
I suggest that the data packet scheduling issues are removed from scheduling (computing) and scheduling algorithm articles into a separate article on scheduling (communication). Perhaps the remaining scheduling algorithm article should be merged with [[[scheduling (computing)]], which now should focus on operational systems and multitasking.
Which of all the scheduling disciplines, policies and algorithms listed in the scheduling (computing) article belongs to networking, and which belongs to operational systems?
Is it possible to clearify what is an algorithm (such as fair queuing), and what is a policy or discipline (such as max-min fairness)?
Mange01 07:25, 21 October 2006 (UTC)
- Be bold, and take a stab at it! --Piet Delport 02:40, 22 October 2006 (UTC)
NT Scheduler
The cited source disagrees with the written text regarding the NT scheduler. I have removed it, and corrected what I can. If anyone knows more about the scheduler, please contribute. I've been looking for authoritative documentation of the the NT scheduler for quite a long time, and I've come up empty handed. jdstroy 06:30, 23 July 2007 (UTC)
Unisys 2200 Operating System CPU Dispatch Algorithm
The pattern used to allocate CPU time based on spiraling through the levels.
The pattern is 1213121412131215...
The time on CPU (ignoring intervening interrupt pre-processing) doubles for each step increase. For example, 1 might be 50 ms., 2 would be 100 ms., 3 would be 200 ms., 4 would be 400 ms., 5 would be 800 ms.
When a thread is put on the dispatch queue, it is assigned the shortest quantum corresponding to the 1-level. If it runs until it exceeds its quantum without causing an I/O, the quantum doubles and the level increases by 1. Eventually, the quantum assigned and level assigned is at some maximum. An I/O request causes a thread's level to revert to 1.
The plan is to permit CPU bound problems to solve with infrequent, long slurps from the CPU resource whilst I/O bound problems get frequent, short slurps to start the next I/O. Thus, context switches are minimized whilst I/O resources are kept as busy as possible.
A CPU quantum has traditionally been measured by a clock that runs only when the CPU is in user state (i.e. in Guard Mode). A thread that has not exceeded its quantum can continue to process until it exceeds its quantum or an exigent event (i.e. an interrupt that must be handled for longer than it would take to pre-process an I/O interrupt) occurs. On the Unisys 2200 architecture a context switch is not necessary in order to pre-process an I/O interrupt because the CPU contains a set of registers for user mode and an identical separate set for executive mode. Pre-processing an I/O interrupt entails recording everything necessary to be able to post-process the I/O interrupt: which IOU? which channel? which sub-channel? which device? what status? --72.75.104.219 (talk) 00:06, 29 April 2008 (UTC)
Outdated Reference
In the reference section, the link "Information on the Linux 2.6 scheduler" is outdated as only covers the Linux scheduler up to the 0(1) scheduler which, as the current article says, has been replaced by CFS in 2.6.23. I believe this should be noted next to the link. —Preceding unsigned comment added by 66.36.133.101 (talk) 11:03, 6 May 2008 (UTC)