Practice Question
Duration: 17 min
This video lesson is available to enrolled students.
Inside: a video lesson and guided study material.
Module outline
- About Course: BTSC About Course
- Basics of Computer Science: Basics of COA, Number System, Number Representation
- Operating System: Introduction to OS, Process Management, CPU Scheduling, Process Synchronization, Threads & Process Creation, Deadlock, Memory Management, Virtual Memory
- Data Structures & Algorithms: Introduction to DS, Array, Stack, Queue, Linked List, Tree, Graphs, Hashing, Algorithm Analysis, Time Complexity Analysis, Sorting Algorithms
- Database Management Systems(DBMS): Basics of DBMS, ER Diagram, Relational Model & Functional Dependencies, Keys & Integrity Constraints, Normalization (1NF - BCNF), Relational Algebra, SQL, Transaction Management, Concurrency Control, Database Recovery
- Networking and Internet: Introduction to CN, Data Communication, Net Layer: IPv4 & Proto, Net Layer: IP Addressing, Application Layer, Hardware Basics, Network Access Technologies, Network Security
- Cyber Security Basics: Cyber Threats and Malware Attacks, Role of Internet and Web Services, Electronic Data Interchange and E-Commerce, Cyber Safety and Security
- C Programming (Programming Fundamentals): C Fundamentals, Control Flow, Functions, Arrays & Pointers, Storage Classes, Structures & Enums, DMA, Macros, Scoping & File Handling
- C++, OOPs & Java (Programming Fundamentals): Java, OOPS with C++
- Python (Programming Fundamentals): Introduction to Python, Tokens, Variables, Data Types, I/O, Operators & Expressions, Control Flow & Looping, Collections & Strings, Functions & Modules
- Web Development Basics: Internet Fundamentals, Web Design & Development, Protocols & Services, Web Publishing & Hosting, Server Side & Security, Emerging Technologies, JavaScript-Basics, HTML Basics
- Software Engineering: Fundamentals of Software Engineering, Software Requirements and Quality Assurance, Software Design, Estimation and Metrics, Software Testing
- Software and Hardware Tools: MS Office Applications, Unix OS, Linux OS
- Emerging Trends. AI & Social Ethics: Artificial Intelligence, Emerging Tech Trends, Society, Law & Ethics
- Full Mock Test:
AI summary & chapters
AI Summary
An AI-generated summary of this video lecture.
This lecture is a practice question on CPU scheduling, specifically calculating the Average Turnaround Time (TAT) and Average Waiting Time (WT) using both Preemptive and Non-Preemptive Priority Scheduling. The instructor presents a table with four processes (P0 to P3) and their Arrival Times (AT), Burst Times (BT), and Priorities. The rule is that a lower priority number indicates a higher priority. The instructor first determines the execution order based on priority (P1, P3, P2, P0) and then constructs a Gantt chart for the Non-Preemptive case, showing process blocks P0, P1, P3, P2 with time marks 50, 70, 110, 210. He then transitions to the Preemptive case, where he updates the remaining burst times (e.g., 50→30, 20→0, 100→80) and constructs a new Gantt chart with boundary times 0, 30, 40, 60. Throughout the video, the instructor uses a whiteboard to draw the Gantt charts and a state diagram with 'Ready', 'Running', and 'Terminated' states to track the processes. The final timeline shows a Gantt chart with time marks 0, 20, 40, 60, 100, 180, 210, indicating the completion of the Preemptive scheduling calculation.
Chapters
0:00 – 2:00 00:00-02:00
The instructor introduces the practice question: 'Calculate the Average Turnaround Time (TAT) and Average Waiting Time (WT) using both Preemptive and Non-Preemptive Priority Scheduling.' A table is displayed with columns for P. No, AT, BT, Priority, CT, TAT = CT - AT, and WT = TAT - BT. The AT column lists 50, 20, 100, 40 (later corrected to 0, 20, 40, 60) and the Priority column lists 4, 1(h), 3, 2. The instructor points to the priority column and writes the sequence P1, P3, P2, P0, indicating the order of execution based on priority, with a note that a lower priority number indicates a higher priority.
2:00 – 5:00 02:00-05:00
The instructor begins the Non-Preemptive Priority Scheduling calculation. The table lists P0 (0, 50, 4), P1 (20, 20, 1(h)), P2 (40, 100, 3), P3 (60, 40, 2). He draws a green Gantt-style bar at the bottom, filling in P0 then P1 with time marks 50 and 70. He also sketches a diagram at the right showing 'Ready', 'Running', and 'Terminated' circles to track the state of the processes. The instructor points to the 'Non-Preemptive' label circled in pink, emphasizing the current method.
5:00 – 10:00 05:00-10:00
The Non-Preemptive Gantt chart is completed, showing process blocks P0, P1, P3, P2 with time marks 50, 70, 110, 210. The instructor uses a pink pen to gesture toward the green rectangle outline below the table. He then sketches three green ovals on the right labeled 'Ready', 'Running', and 'Ternate' (Terminated), with arrows connecting them. In the 'Running' oval, 'P1' appears, while the 'Ready' oval shows 'P0' and 'P1' crossed out in pink, indicating the transition of processes between states.
10:00 – 15:00 10:00-15:00
The instructor transitions to the Preemptive Priority Scheduling calculation. The whiteboard table shows several BT entries crossed out and rewritten (50→30, 20→0, 100→80), representing the remaining burst times. A Gantt chart at the bottom extends from 'P0 | P1' to 'P0 | P1 | P2 | P3', with boundary times 0, 30, 40, 60 marked beneath it. Green hand-drawn ovals on the right are labeled 'Ready', 'Running', and 'Rem Data', each containing process names such as P0, P1, P2, to track the preemptive state changes.
15:00 – 16:33 15:00-16:33
The Preemptive Gantt chart is progressively filled with process labels P0, P1, P2, P3 and time marks 0, 20, 40, 60, 100, 180, 210. Green handwritten notes on the right group processes under 'Ready', 'Running', and 'Time/Date' with several entries crossed out in red. The instructor stands before the digital whiteboard, completing the visualization of the Preemptive scheduling timeline, which allows for the final calculation of TAT and WT for both methods.
The lecture focuses on solving a CPU scheduling problem involving Preemptive and Non-Preemptive Priority Scheduling. The key concepts include the definition of Turnaround Time (TAT = CT - AT) and Waiting Time (WT = TAT - BT), and the rule that a lower priority number signifies higher priority. The instructor demonstrates the step-by-step process of determining the execution order based on priority and arrival time. For the Non-Preemptive case, the Gantt chart is built by running each process to completion once it starts, resulting in a timeline of P0, P1, P3, P2. For the Preemptive case, the instructor updates the remaining burst times and adjusts the Gantt chart to reflect preemptions, resulting in a more complex timeline with multiple state transitions. The use of state diagrams ('Ready', 'Running', 'Terminated') helps visualize the movement of processes through the system. This practice question is designed to help students understand the differences between preemptive and non-preemptive scheduling and how to calculate performance metrics for each.