Time Slicing in CPU scheduling Last Updated : 24 Aug, 2020 Comments Improve Suggest changes 8 Likes Like Report CPUs kernel doesn't simply distribute the entirety of our PCs' resources to single process or service. CPU is continuously running many processes that are essential for it to operate, so our kernel needs to manage these processes without moment's delay. When program needs to run, process must be created for it. This process needs to have important resources like RAM and CPU. The kernel schedules time periods for CPU to perform commands and instructions in process. Be that as it may, there's just single CPU and numerous processes. How does CPU outstand to execute different processes without moment's delay? It does it by executing processes one by one, individually by time slice. A time slice is short time frame that gets assigned to process for CPU execution. Time slice : It is timeframe for which process is allotted to run in preemptive multitasking CPU. The scheduler runs each process every single time-slice. The period of each time slice can be very significant and crucial to balance CPUs performance and responsiveness. If time slice is quite short, scheduler will take more processing time. In contrast, if the time slice is too long, scheduler will again take more processing time. When process is allotted to CPU, clock timer is set corresponding to time slice. If the process finishes its burst before time slice, CPU simply swaps it out like conventional FCFS calculation. If the time slice goes off first, CPU shifts it out to back of ongoing queue. The ongoing queue is managed like circular queue, so, after all processes are executed once, scheduler executes first process again and then second and so forth. Example - Process Queue Required burst time by process(ms) P11P24P35 We have three processes(P1, P2, P3) with their corresponding burst times(1ms, 4ms, 5ms). A rule of thumb is that 80% of CPU bursts should be smaller than the time quantum. Considering time slice of 2ms. Here's how CPU manages it by time slicing. time-slicing approach for process management Advantages : Fair allocation of CPU resources. It deals all process with equal priority. Easily implementable on the system. Context switching method used to save states of preempted processes gives best performance in terms of average processing time. Disadvantages : If the slicing time is short, processor output will be delayed. It spends time on context switching. Performance depends heavily on time quantum. Priorities can't be fixed for processes. No priority to more important tasks. Finding an appropriate time quantum is quite difficult. Create Quiz Comment W whysodarkbro Follow 8 Improve W whysodarkbro Follow 8 Improve Article Tags : Computer Organization & Architecture Computer Organization and Architecture Explore Basic Computer InstructionsWhat is a Computer? 6 min read Issues in Computer Design 1 min read Difference between assembly language and high level language 2 min read Addressing Modes in 8086 7 min read Difference between Memory based and Register based Addressing Modes 4 min read Von Neumann Architecture 5 min read Harvard Architecture 3 min read Interaction of a Program with Hardware 3 min read Simplified Instructional Computer (SIC) 4 min read Instruction Set used in simplified instructional Computer (SIC) 1 min read Instruction Set used in SIC/XE 2 min read RISC vs CISC 3 min read Vector processor classification 5 min read Essential Registers for Instruction Execution 3 min read Single Accumulator Based CPU Organization 3 min read Stack based CPU Organization 3 min read Machine Control Instructions in Microprocessor 4 min read Very Long Instruction Word (VLIW) Architecture 3 min read Input and Output SystemsPrimary Instruction Cycles 4 min read Machine Instructions 5 min read Instruction Formats 6 min read Difference between 2-address instruction and 1-address instructions 4 min read Difference between 3-address instruction and 0-address instruction 4 min read Register content and Flag status after Instructions 3 min read Debugging a machine level program 3 min read Vector Instruction Format in Vector Processors 7 min read Vector Instruction Types 4 min read Instruction Design and FormatALU Functions and Bus Organization 5 min read Computer Arithmetic | Set - 1 5 min read Computer Arithmetic | Set - 2 4 min read 1's Complement Representation vs 2's Complement Representation 4 min read Restoring Division Algorithm For Unsigned Integer 4 min read Non-Restoring Division For Unsigned Integer 3 min read Booth's Algorithm 4 min read How the Negative Numbers are Stored in Memory? 2 min read Microprogrammed ControlMicro-Operation 3 min read Instruction Set Architecture and Microarchitecture 3 min read Program Control Instructions 4 min read Difference between CALL and JUMP instructions 5 min read Hardwired and Micro-programmed Control Unit 3 min read Implementation of Micro Instructions Sequencer 4 min read Performance of Computer in Computer Organization 5 min read Introduction to Control Unit and its Design 5 min read Computer Organization | Amdahl's law and its proof 2 min read Subroutine: Nesting and Stack memory 3 min read Different Types of RAM (Random Access Memory ) 8 min read Random Access Memory (RAM) and Read Only Memory (ROM) 8 min read 2D and 2.5D Memory organization 4 min read Input and Output OrganizationPriority Interrupts 5 min read I/O Interface (Interrupt and DMA Mode) 4 min read DMA Controller 8257/8237 2 min read Computer Organization | Asynchronous input output synchronization 7 min read Programmable peripheral interface 8255 4 min read Synchronous Data Transfer in Computer Organization 4 min read Introduction of Input-Output Processor 5 min read MPU Communication in Computer Organization 4 min read Memory Mapped I/O and Isolated I/O 5 min read Memory OrganizationIntroduction to memory and memory units 2 min read Memory Hierarchy Design and its Characteristics 6 min read Register Allocations in Code Generation 6 min read Cache Memory 4 min read Cache Organization | Set 1 (Introduction) 3 min read Multilevel Cache Organisation 6 min read Difference between RAM and ROM 6 min read Difference Between CPU Cache and TLB 4 min read Introduction to Solid-State Drive (SSD) 4 min read Read and Write operations in Memory 3 min read PipeliningInstruction Level Parallelism 5 min read Execution and Throughput 5 min read Pipelining Types and Stalling 3 min read Computer Organization and Architecture | Pipelining | Set 2 (Dependencies and Data Hazard) 6 min read Last Minute Notes Computer Organization 15+ min read Like