{"id":3246,"date":"2025-06-01T13:46:16","date_gmt":"2025-06-01T13:46:16","guid":{"rendered":"https:\/\/diznr.com\/?p=3246"},"modified":"2025-06-01T13:46:16","modified_gmt":"2025-06-01T13:46:16","slug":"day-02part-05-operating-system-examples-based-on-first-come-first-serve-basic-algorithms-fcfs","status":"publish","type":"post","link":"https:\/\/www.reilsolar.com\/pdf\/day-02part-05-operating-system-examples-based-on-first-come-first-serve-basic-algorithms-fcfs\/","title":{"rendered":"Day 02Part 05 &#8211; Operating system- Examples based on First come first serve basic algorithms (FCFS)."},"content":{"rendered":"<p>Day 02Part 05 &#8211; Operating system- Examples based on First come first serve basic algorithms (FCFS).<\/p>\n<p>[fvplayer id=&#8221;316&#8243;]<\/p>\n<h3 data-start=\"0\" data-end=\"76\"><strong data-start=\"4\" data-end=\"74\">First Come, First Serve (FCFS) Scheduling \u2013 Examples &amp; Explanation<\/strong><\/h3>\n<h3 data-start=\"83\" data-end=\"127\"><strong data-start=\"87\" data-end=\"125\">1. Introduction to FCFS Scheduling<\/strong><\/h3>\n<ul data-start=\"128\" data-end=\"381\">\n<li data-start=\"128\" data-end=\"212\"><strong data-start=\"130\" data-end=\"164\">First Come, First Serve (FCFS)<\/strong> is the simplest <strong data-start=\"181\" data-end=\"209\">CPU scheduling algorithm<\/strong>.<\/li>\n<li data-start=\"213\" data-end=\"272\">The process that <strong data-start=\"232\" data-end=\"249\">arrives first<\/strong> gets executed first.<\/li>\n<li data-start=\"273\" data-end=\"381\">It is <strong data-start=\"281\" data-end=\"299\">non-preemptive<\/strong>, meaning once a process starts, it <strong data-start=\"335\" data-end=\"360\">cannot be interrupted<\/strong> until it finishes.<\/li>\n<\/ul>\n<h3 data-start=\"388\" data-end=\"435\"><strong data-start=\"392\" data-end=\"433\">2. Steps to Implement FCFS Scheduling<\/strong><\/h3>\n<p data-start=\"436\" data-end=\"621\"><strong data-start=\"440\" data-end=\"480\">Sort processes by their arrival time<\/strong> (earliest first).<br data-start=\"498\" data-end=\"501\" \/><strong data-start=\"505\" data-end=\"553\">Execute each process in the order of arrival<\/strong>.<br data-start=\"554\" data-end=\"557\" \/><strong data-start=\"561\" data-end=\"618\">Compute the completion, turnaround, and waiting times<\/strong>.<\/p>\n<h3 data-start=\"628\" data-end=\"667\"><strong data-start=\"632\" data-end=\"665\">3. Example of FCFS Scheduling<\/strong><\/h3>\n<h4 data-start=\"669\" data-end=\"690\"><strong data-start=\"674\" data-end=\"688\">Given Data<\/strong><\/h4>\n<table data-start=\"691\" data-end=\"962\">\n<thead data-start=\"691\" data-end=\"742\">\n<tr data-start=\"691\" data-end=\"742\">\n<th data-start=\"691\" data-end=\"701\">Process<\/th>\n<th data-start=\"701\" data-end=\"721\">Arrival Time (AT)<\/th>\n<th data-start=\"721\" data-end=\"742\">Burst Time (BT)<\/th>\n<\/tr>\n<\/thead>\n<tbody data-start=\"787\" data-end=\"962\">\n<tr data-start=\"787\" data-end=\"830\">\n<td>P1<\/td>\n<td>0 ms<\/td>\n<td>4 ms<\/td>\n<\/tr>\n<tr data-start=\"831\" data-end=\"874\">\n<td>P2<\/td>\n<td>1 ms<\/td>\n<td>3 ms<\/td>\n<\/tr>\n<tr data-start=\"875\" data-end=\"918\">\n<td>P3<\/td>\n<td>2 ms<\/td>\n<td>1 ms<\/td>\n<\/tr>\n<tr data-start=\"919\" data-end=\"962\">\n<td>P4<\/td>\n<td>3 ms<\/td>\n<td>2 ms<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h4 data-start=\"969\" data-end=\"1016\"><strong data-start=\"974\" data-end=\"1014\">Step 1: Compute Completion Time (CT)<\/strong><\/h4>\n<p data-start=\"1017\" data-end=\"1068\">FCFS executes processes in the order they arrive.<\/p>\n<table data-start=\"1070\" data-end=\"1399\">\n<thead data-start=\"1070\" data-end=\"1129\">\n<tr data-start=\"1070\" data-end=\"1129\">\n<th data-start=\"1070\" data-end=\"1080\">Process<\/th>\n<th data-start=\"1080\" data-end=\"1085\">AT<\/th>\n<th data-start=\"1085\" data-end=\"1090\">BT<\/th>\n<th data-start=\"1090\" data-end=\"1103\">Start Time<\/th>\n<th data-start=\"1103\" data-end=\"1129\">Completion Time (CT)<\/th>\n<\/tr>\n<\/thead>\n<tbody data-start=\"1184\" data-end=\"1399\">\n<tr data-start=\"1184\" data-end=\"1237\">\n<td>P1<\/td>\n<td>0<\/td>\n<td>4<\/td>\n<td>0<\/td>\n<td>4<\/td>\n<\/tr>\n<tr data-start=\"1238\" data-end=\"1291\">\n<td>P2<\/td>\n<td>1<\/td>\n<td>3<\/td>\n<td>4<\/td>\n<td>7<\/td>\n<\/tr>\n<tr data-start=\"1292\" data-end=\"1345\">\n<td>P3<\/td>\n<td>2<\/td>\n<td>1<\/td>\n<td>7<\/td>\n<td>8<\/td>\n<\/tr>\n<tr data-start=\"1346\" data-end=\"1399\">\n<td>P4<\/td>\n<td>3<\/td>\n<td>2<\/td>\n<td>8<\/td>\n<td>10<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h4 data-start=\"1406\" data-end=\"1452\"><strong data-start=\"1411\" data-end=\"1452\">Step 2: Compute Turnaround Time (TAT)<\/strong><\/h4>\n<p><span class=\"katex-display\"><span class=\"katex\"><span class=\"katex-mathml\">TAT=CT\u2212ATTAT = CT &#8211; AT<\/span><span class=\"katex-html\" aria-hidden=\"true\"><span class=\"base\"><span class=\"mord mathnormal\">T<\/span><span class=\"mord mathnormal\">A<\/span><span class=\"mord mathnormal\">T<\/span><span class=\"mrel\">=<\/span><\/span><span class=\"base\"><span class=\"mord mathnormal\">CT<\/span><span class=\"mbin\">\u2212<\/span><\/span><span class=\"base\"><span class=\"mord mathnormal\">A<\/span><span class=\"mord mathnormal\">T<\/span><\/span><\/span><\/span><\/span><\/p>\n<table data-start=\"1474\" data-end=\"1705\">\n<thead data-start=\"1474\" data-end=\"1515\">\n<tr data-start=\"1474\" data-end=\"1515\">\n<th data-start=\"1474\" data-end=\"1484\">Process<\/th>\n<th data-start=\"1484\" data-end=\"1490\">CT<\/th>\n<th data-start=\"1490\" data-end=\"1496\">AT<\/th>\n<th data-start=\"1496\" data-end=\"1515\">TAT (CT &#8211; AT)<\/th>\n<\/tr>\n<\/thead>\n<tbody data-start=\"1554\" data-end=\"1705\">\n<tr data-start=\"1554\" data-end=\"1591\">\n<td>P1<\/td>\n<td>4<\/td>\n<td>0<\/td>\n<td>4<\/td>\n<\/tr>\n<tr data-start=\"1592\" data-end=\"1629\">\n<td>P2<\/td>\n<td>7<\/td>\n<td>1<\/td>\n<td>6<\/td>\n<\/tr>\n<tr data-start=\"1630\" data-end=\"1667\">\n<td>P3<\/td>\n<td>8<\/td>\n<td>2<\/td>\n<td>6<\/td>\n<\/tr>\n<tr data-start=\"1668\" data-end=\"1705\">\n<td>P4<\/td>\n<td>10<\/td>\n<td>3<\/td>\n<td>7<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h4 data-start=\"1712\" data-end=\"1754\"><strong data-start=\"1717\" data-end=\"1754\">Step 3: Compute Waiting Time (WT)<\/strong><\/h4>\n<p><span class=\"katex-display\"><span class=\"katex\"><span class=\"katex-mathml\">WT=TAT\u2212BTWT = TAT &#8211; BT<\/span><span class=\"katex-html\" aria-hidden=\"true\"><span class=\"base\"><span class=\"mord mathnormal\">W<\/span><span class=\"mord mathnormal\">T<\/span><span class=\"mrel\">=<\/span><\/span><span class=\"base\"><span class=\"mord mathnormal\">T<\/span><span class=\"mord mathnormal\">A<\/span><span class=\"mord mathnormal\">T<\/span><span class=\"mbin\">\u2212<\/span><\/span><span class=\"base\"><span class=\"mord mathnormal\">BT<\/span><\/span><\/span><\/span><\/span><\/p>\n<table data-start=\"1776\" data-end=\"2006\">\n<thead data-start=\"1776\" data-end=\"1816\">\n<tr data-start=\"1776\" data-end=\"1816\">\n<th data-start=\"1776\" data-end=\"1786\">Process<\/th>\n<th data-start=\"1786\" data-end=\"1792\">TAT<\/th>\n<th data-start=\"1792\" data-end=\"1797\">BT<\/th>\n<th data-start=\"1797\" data-end=\"1816\">WT (TAT &#8211; BT)<\/th>\n<\/tr>\n<\/thead>\n<tbody data-start=\"1855\" data-end=\"2006\">\n<tr data-start=\"1855\" data-end=\"1892\">\n<td>P1<\/td>\n<td>4<\/td>\n<td>4<\/td>\n<td>0<\/td>\n<\/tr>\n<tr data-start=\"1893\" data-end=\"1930\">\n<td>P2<\/td>\n<td>6<\/td>\n<td>3<\/td>\n<td>3<\/td>\n<\/tr>\n<tr data-start=\"1931\" data-end=\"1968\">\n<td>P3<\/td>\n<td>6<\/td>\n<td>1<\/td>\n<td>5<\/td>\n<\/tr>\n<tr data-start=\"1969\" data-end=\"2006\">\n<td>P4<\/td>\n<td>7<\/td>\n<td>2<\/td>\n<td>5<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h4 data-start=\"2013\" data-end=\"2055\"><strong data-start=\"2018\" data-end=\"2053\">Step 4: Calculate Average Times<\/strong><\/h4>\n<p><span class=\"katex-display\"><span class=\"katex\"><span class=\"katex-mathml\">Average\u00a0Turnaround\u00a0Time=4+6+6+74=5.75\u00a0ms\\text{Average Turnaround Time} = \\frac{4 + 6 + 6 + 7}{4} = 5.75 \\text{ ms}<\/span><span class=\"katex-html\" aria-hidden=\"true\"><span class=\"base\"><span class=\"mord text\"><span class=\"mord\">Average\u00a0Turnaround\u00a0Time<\/span><\/span><span class=\"mrel\">=<\/span><\/span><span class=\"base\"><span class=\"mord\"><span class=\"mfrac\"><span class=\"vlist-t vlist-t2\"><span class=\"vlist-r\"><span class=\"vlist\">44<span class=\"mbin\">+<\/span>6<span class=\"mbin\">+<\/span>6<span class=\"mbin\">+<\/span>7<\/span><span class=\"vlist-s\">\u200b<\/span><\/span><\/span><\/span><\/span><span class=\"mrel\">=<\/span><\/span><span class=\"base\"><span class=\"mord\">5.75<\/span><span class=\"mord text\"><span class=\"mord\">\u00a0ms<\/span><\/span><\/span><\/span><\/span><\/span> <span class=\"katex-display\"><span class=\"katex\"><span class=\"katex-mathml\">Average\u00a0Waiting\u00a0Time=0+3+5+54=3.25\u00a0ms\\text{Average Waiting Time} = \\frac{0 + 3 + 5 + 5}{4} = 3.25 \\text{ ms}<\/span><span class=\"katex-html\" aria-hidden=\"true\"><span class=\"base\"><span class=\"mord text\"><span class=\"mord\">Average\u00a0Waiting\u00a0Time<\/span><\/span><span class=\"mrel\">=<\/span><\/span><span class=\"base\"><span class=\"mord\"><span class=\"mfrac\"><span class=\"vlist-t vlist-t2\"><span class=\"vlist-r\"><span class=\"vlist\">40<span class=\"mbin\">+<\/span>3<span class=\"mbin\">+<\/span>5<span class=\"mbin\">+<\/span>5<\/span><span class=\"vlist-s\">\u200b<\/span><\/span><\/span><\/span><\/span><span class=\"mrel\">=<\/span><\/span><span class=\"base\"><span class=\"mord\">3.25<\/span><span class=\"mord text\"><span class=\"mord\"> ms<\/span><\/span><\/span><\/span><\/span><\/span><\/p>\n<h3 data-start=\"2223\" data-end=\"2260\"><strong data-start=\"2227\" data-end=\"2260\">4. Gantt Chart Representation<\/strong><\/h3>\n<div class=\"contain-inline-size rounded-md border-[0.5px] border-token-border-medium relative bg-token-sidebar-surface-primary dark:bg-gray-950\">\n<div class=\"overflow-y-auto p-4\" dir=\"ltr\"><code class=\"!whitespace-pre\">| P1 |<span class=\"hljs-comment\">----4ms----| P2 |----7ms----| P3 |----8ms----| P4 |----10ms----|<\/span><br \/>\n<span class=\"hljs-number\">0<\/span>     <span class=\"hljs-number\">4<\/span>          <span class=\"hljs-number\">7<\/span>          <span class=\"hljs-number\">8<\/span>          <span class=\"hljs-number\">10<\/span><br \/>\n<\/code><\/div>\n<\/div>\n<h3 data-start=\"2388\" data-end=\"2425\"><strong data-start=\"2392\" data-end=\"2423\">5. Key Observations in FCFS<\/strong><\/h3>\n<p data-start=\"2426\" data-end=\"2638\"><strong data-start=\"2428\" data-end=\"2460\">Simple and easy to implement<\/strong>.<br data-start=\"2461\" data-end=\"2464\" \/><strong data-start=\"2466\" data-end=\"2502\">Works well for smaller processes<\/strong>.<br data-start=\"2503\" data-end=\"2506\" \/><strong data-start=\"2508\" data-end=\"2551\">Not optimal for minimizing waiting time<\/strong>.<br data-start=\"2552\" data-end=\"2555\" \/><strong data-start=\"2557\" data-end=\"2589\">Suffers from &#8220;Convoy Effect&#8221;<\/strong> \u2013 when a <strong data-start=\"2599\" data-end=\"2635\">long process delays shorter ones<\/strong>.<\/p>\n<p data-start=\"2645\" data-end=\"2703\" data-is-last-node=\"\" data-is-only-node=\"\">Would you like a <strong data-start=\"2662\" data-end=\"2682\">Python\/C program<\/strong> to simulate FCFS?<\/p>\n<h3 data-start=\"2645\" data-end=\"2703\"><a href=\"https:\/\/www.cse.fau.edu\/~sam\/course\/operating_systems\/hw\/osQuesCh5-8.pdf\" target=\"_blank\" rel=\"noopener\">Day 02Part 05 &#8211; Operating system- Examples based on First come first serve basic algorithms (FCFS).<\/a><\/h3>\n<div class=\"kb0PBd A9Y9g jGGQ5e\" data-snf=\"x5WNvb\" data-snhf=\"0\">\n<div class=\"yuRUbf\">\n<div class=\"b8lM7\">\n<h3 class=\"LC20lb MBeuO DKV0Md\"><a href=\"https:\/\/aissmspoly.org.in\/wp-content\/uploads\/2020\/01\/CPU-Scheduling-and-Algorithm-.pdf\" target=\"_blank\" rel=\"noopener\">Unit IV \u2013 CPU Scheduling and Algorithm<\/a><\/h3>\n<div class=\"kb0PBd A9Y9g jGGQ5e\" data-snf=\"x5WNvb\" data-snhf=\"0\">\n<div class=\"yuRUbf\">\n<div class=\"b8lM7\">\n<h3 class=\"LC20lb MBeuO DKV0Md\"><a href=\"https:\/\/www.vbspu.ac.in\/e-content\/Scheduling-Algorithm.pdf\" target=\"_blank\" rel=\"noopener\">Operating System : Scheduling Algorithm<\/a><\/h3>\n<p>Here\u2019s a clear and complete explanation for:<\/p>\n<h1>\ud83d\udda5\ufe0f <strong>Operating Systems \u2013 Day 02 Part 05<\/strong><\/h1>\n<h3>\ud83d\udd22 <strong>Examples Based on First Come First Serve (FCFS) Scheduling Algorithm<\/strong><\/h3>\n<hr \/>\n<h2>\ud83d\udccc What is FCFS?<\/h2>\n<p><strong>FCFS (First Come First Serve)<\/strong> is the simplest scheduling algorithm in operating systems.<\/p>\n<ul>\n<li><strong>Jobs are executed in the order they arrive<\/strong> in the ready queue.<\/li>\n<li>It is <strong>non-preemptive<\/strong>.<\/li>\n<li>Think of it like a <strong>queue at a ticket counter<\/strong>.<\/li>\n<\/ul>\n<hr \/>\n<h2>\ud83d\udccb Terminology<\/h2>\n<table>\n<thead>\n<tr>\n<th>Term<\/th>\n<th>Meaning<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td><strong>Arrival Time (AT)<\/strong><\/td>\n<td>Time at which process enters the ready queue<\/td>\n<\/tr>\n<tr>\n<td><strong>Burst Time (BT)<\/strong><\/td>\n<td>Time required by process to execute<\/td>\n<\/tr>\n<tr>\n<td><strong>Completion Time (CT)<\/strong><\/td>\n<td>Time when process finishes execution<\/td>\n<\/tr>\n<tr>\n<td><strong>Turnaround Time (TAT)<\/strong><\/td>\n<td><span class=\"katex\">CT\u2212ATCT &#8211; AT<\/span><\/td>\n<\/tr>\n<tr>\n<td><strong>Waiting Time (WT)<\/strong><\/td>\n<td><span class=\"katex\">TAT\u2212BTTAT &#8211; BT<\/span><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<hr \/>\n<h2>\ud83e\uddee Example 1 (With Same Arrival Time)<\/h2>\n<h3>\ud83d\udc47 Given:<\/h3>\n<table>\n<thead>\n<tr>\n<th>Process<\/th>\n<th>Arrival Time (AT)<\/th>\n<th>Burst Time (BT)<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>P1<\/td>\n<td>0<\/td>\n<td>5<\/td>\n<\/tr>\n<tr>\n<td>P2<\/td>\n<td>0<\/td>\n<td>3<\/td>\n<\/tr>\n<tr>\n<td>P3<\/td>\n<td>0<\/td>\n<td>8<\/td>\n<\/tr>\n<tr>\n<td>P4<\/td>\n<td>0<\/td>\n<td>6<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<blockquote><p><strong>All processes arrive at time 0.<\/strong><\/p><\/blockquote>\n<h3>\ud83d\udd50 Execution Order: P1 \u2192 P2 \u2192 P3 \u2192 P4<\/h3>\n<h3>\ud83d\udcca Calculations:<\/h3>\n<table>\n<thead>\n<tr>\n<th>Process<\/th>\n<th>AT<\/th>\n<th>BT<\/th>\n<th>CT<\/th>\n<th>TAT = CT-AT<\/th>\n<th>WT = TAT-BT<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>P1<\/td>\n<td>0<\/td>\n<td>5<\/td>\n<td>5<\/td>\n<td>5<\/td>\n<td>0<\/td>\n<\/tr>\n<tr>\n<td>P2<\/td>\n<td>0<\/td>\n<td>3<\/td>\n<td>8<\/td>\n<td>8<\/td>\n<td>5<\/td>\n<\/tr>\n<tr>\n<td>P3<\/td>\n<td>0<\/td>\n<td>8<\/td>\n<td>16<\/td>\n<td>16<\/td>\n<td>8<\/td>\n<\/tr>\n<tr>\n<td>P4<\/td>\n<td>0<\/td>\n<td>6<\/td>\n<td>22<\/td>\n<td>22<\/td>\n<td>16<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h3>\ud83d\udcc8 Gantt Chart:<\/h3>\n<pre><code>| P1 | P2 | P3 | P4 |\n0    5    8   16   22\n<\/code><\/pre>\n<hr \/>\n<h2>\ud83e\uddee Example 2 (With Different Arrival Times)<\/h2>\n<h3>\ud83d\udc47 Given:<\/h3>\n<table>\n<thead>\n<tr>\n<th>Process<\/th>\n<th>Arrival Time (AT)<\/th>\n<th>Burst Time (BT)<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>P1<\/td>\n<td>0<\/td>\n<td>4<\/td>\n<\/tr>\n<tr>\n<td>P2<\/td>\n<td>1<\/td>\n<td>3<\/td>\n<\/tr>\n<tr>\n<td>P3<\/td>\n<td>2<\/td>\n<td>1<\/td>\n<\/tr>\n<tr>\n<td>P4<\/td>\n<td>3<\/td>\n<td>2<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<blockquote><p>Processes are executed in <strong>arrival order<\/strong>.<\/p><\/blockquote>\n<h3>\ud83d\udd50 Execution Order: P1 \u2192 P2 \u2192 P3 \u2192 P4<\/h3>\n<h3>\ud83d\udcca Calculations:<\/h3>\n<table>\n<thead>\n<tr>\n<th>Process<\/th>\n<th>AT<\/th>\n<th>BT<\/th>\n<th>CT<\/th>\n<th>TAT<\/th>\n<th>WT<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>P1<\/td>\n<td>0<\/td>\n<td>4<\/td>\n<td>4<\/td>\n<td>4<\/td>\n<td>0<\/td>\n<\/tr>\n<tr>\n<td>P2<\/td>\n<td>1<\/td>\n<td>3<\/td>\n<td>7<\/td>\n<td>6<\/td>\n<td>3<\/td>\n<\/tr>\n<tr>\n<td>P3<\/td>\n<td>2<\/td>\n<td>1<\/td>\n<td>8<\/td>\n<td>6<\/td>\n<td>5<\/td>\n<\/tr>\n<tr>\n<td>P4<\/td>\n<td>3<\/td>\n<td>2<\/td>\n<td>10<\/td>\n<td>7<\/td>\n<td>5<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h3>\ud83d\udcc8 Gantt Chart:<\/h3>\n<pre><code>| P1 | P2 | P3 | P4 |\n0    4    7    8   10\n<\/code><\/pre>\n<hr \/>\n<h2>\ud83d\udccc Pros and Cons of FCFS<\/h2>\n<h3>\u2705 Advantages:<\/h3>\n<ul>\n<li>Simple to implement.<\/li>\n<li>Easy to understand.<\/li>\n<\/ul>\n<h3>\u274c Disadvantages:<\/h3>\n<ul>\n<li><strong>Convoy effect<\/strong>: Short processes wait for long ones.<\/li>\n<li><strong>Poor average waiting time<\/strong> in some cases.<\/li>\n<li><strong>Non-preemptive<\/strong> \u2192 not ideal for time-sharing systems.<\/li>\n<\/ul>\n<hr \/>\n<h2>\ud83e\udde0 Formula Summary<\/h2>\n<ul>\n<li><strong>Turnaround Time (TAT)<\/strong> = Completion Time &#8211; Arrival Time<\/li>\n<li><strong>Waiting Time (WT)<\/strong> = Turnaround Time &#8211; Burst Time<\/li>\n<\/ul>\n<hr \/>\n<p>Would you like <strong>practice questions<\/strong>, a <strong>Python code implementation<\/strong>, or comparison with <strong>SJF\/Round Robin<\/strong> next?<\/p>\n<h3><a href=\"https:\/\/ijcsn.org\/IJCSN-2014\/3-6\/Simulation-of-First-Come-First-Served-_FCFS_-and-Shortest-Job-First-_SJF_-Algorithms.pdf\" target=\"_blank\" rel=\"noopener\">Day 02Part 05 &#8211; Operating system- Examples based on First come first serve basic algorithms (FCFS).<\/a><\/h3>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Day 02Part 05 &#8211; Operating system- Examples based on First come first serve basic algorithms (FCFS). [fvplayer id=&#8221;316&#8243;] First Come, First Serve (FCFS) Scheduling \u2013 Examples &amp; Explanation 1. Introduction to FCFS Scheduling First Come, First Serve (FCFS) is the simplest CPU scheduling algorithm. The process that arrives first gets executed first. It is non-preemptive, [&hellip;]<\/p>\n","protected":false},"author":66,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[78],"tags":[],"class_list":["post-3246","post","type-post","status-publish","format-standard","hentry","category-operating-system"],"_links":{"self":[{"href":"https:\/\/www.reilsolar.com\/pdf\/wp-json\/wp\/v2\/posts\/3246","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.reilsolar.com\/pdf\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.reilsolar.com\/pdf\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.reilsolar.com\/pdf\/wp-json\/wp\/v2\/users\/66"}],"replies":[{"embeddable":true,"href":"https:\/\/www.reilsolar.com\/pdf\/wp-json\/wp\/v2\/comments?post=3246"}],"version-history":[{"count":0,"href":"https:\/\/www.reilsolar.com\/pdf\/wp-json\/wp\/v2\/posts\/3246\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.reilsolar.com\/pdf\/wp-json\/wp\/v2\/media?parent=3246"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.reilsolar.com\/pdf\/wp-json\/wp\/v2\/categories?post=3246"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.reilsolar.com\/pdf\/wp-json\/wp\/v2\/tags?post=3246"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}