First Come First Served Scheduling (FCFS) by Kittiamorn & Arisara

Project: First Come First Served Scheduling (FCFS)

โดย   นาย กิตติอมร ชุ่มอ่วม     1590901763

นางสาว อริสรา คำจีนสี    1590900484

Data Structure คือ ความสัมพันธ์ระหว่างข้อมูลที่อยู่ในโครงสร้างนั้น ๆ รวมทั้งกระบวนการในการจัดการข้อมูลในโครงสร้าง หรือ การจัดเตรียมรูปแบบการเก็บข้อมูลในหน่วยความจำอย่างมีระเบียบแบบแผนการแทนข้อมูลให้อยู่ในรูปแบบที่ถูกต้อง ตลอดจนกรรมวิธีการเข้าถึงข้อมูลในโครงสร้างให้เป็นไปอย่างมีประสิทธิภาพ

 

First-Come, First-Served Scheduling: FCFS (มาถึงก่อนได้รับบริการก่อน) วิธีนี้เป็นวิธีที่ง่ายที่สุดในการจัดลำดับการทำงานของ process บน CPU โดยใช้หลักเกณฑ์ง่าย ๆ ว่า process ไหนที่ร้องขอใช้งาน CPU และเข้ารออยู่ใน ready queue ( process ที่อยู่ในหน่วยความจำหลัก ) ก่อนก็จะได้รับสิทธิ์ในการเข้าใช้งาน CPU ก่อน เมื่อ process แรกทำงานเสร็จ process ที่มาถึงในลำดับถัดไปก็จะได้สิทธิ์ในการทำงานบน CPU เป็นลำดับถัดไป ตัวอย่างข้างล่าแสดงถึงลำดับการมาถึงของ process และ burst บอกเวลาที่ใช้ในการทำงานบน CPU ตามลำดับ

Process          Burst
P1                    24
P2                    3
P3                    3

 

จากข้อมูลด้านบนเราสามารถคำนวณเวลาทั้งหมดที่ต้องใช้ไปเพื่อให้การทำงานของแต่ละ process เสร็จสมบูรณ์ (turnaround time) และเวลาที่ใช้ในการรอของแต่ละ process (waiting time)ได้ดังนี้

 

จากในรูปเวลาเฉลี่ยที่ต้องในการทำงานให้เสร็จสิ้นของ process ทั้งหมดคือ 27 และเวลาเฉลี่ยที่ต้องใช้ในการรอของ process ทั้งหมดคือ 17  ข้อเสียของวิธีนี้ก็คือ เวลาที่จะต้องรอคอยในการเข้าทำงานบน CPU ของ process ที่มาถึงในลำดับท้าย ๆ นั้นจะนานมาก  และเวลาเฉลี่ยที่ต้องใช้ในการรอคอยก็สูงมากเช่นเดียวกัน FCFS จึงไม่เหมาะกับระบบที่เป็น time-sharing พึงสังเกตุว่า FCFS เป็นการจัดลำดับการทำงานแบบ non-preemptive

Flowchart การทำงานของโปรแกรม

การใช้งานโปรแกรม

วิธีการใช้งานโปรแกรม

  •  เมื่อเปิดหน้าโปรแกรมขึ้นมาแล้ว ให้ทำการป้อนค่า Arriver Time และ CPU Time ลงในช่องว่าง
  •  เมื่อป้อนค่าตามที่กำหนดครบแล้ว ให้กดปุ่ม Start
  • หลังจากกดปุ่ม Start หน้าโปรแกรมจะแสดงผลลัพธ์ออกมา

วีดีโออธิบายการทำงานและCode

YouTube Preview Image

ประโยชน์ที่ได้จากการทำโปรเจคเรื่องนี้ 

ให้เป็นโปรแกรมสำหรับศึกษาการทำงานของอัลกอลิทึม First Come First Served  และใช้ศึกษาเกี่ยวกับการทำงานของระบบในอดีต เพื่อเป็นแนวทางในการแก้ไขปัญหา และการพัฒนาต่อไปในอนาคต

Arisara Kamcheensee
at GlurGeek.Com
เป็นนักศึกษา คณะวิศวกรรมศาสตร์ ภาคคอมพิวเตอร์ ชอบการตัดต่อวิดีโอ และทำคลิปต่างๆ ชอบการถ่ายภาพ และการกินอาหาร ชอบดนตรีแนวEDM

Leave a Reply

© 2022 GlurGeek.Com