Page 18 - สถาปัตยกรรมคอมพิวเตอร์และระบบปฏิบัติการ
P. 18

11-8 สถาปัตยกรรม​คอมพิวเตอร์แ​ ละ​ระบบป​ ฏิบัติก​ าร

สรุปค​ า่ เวลา​รอค​ อยและเวลา​ครบร​ อบ​งาน ได้​ดังนี้

โพรเซส      เวลารอคอย (มลิ ลิวนิ าที)                  เวลาครบรอบงาน (มลิ ลิวินาท)ี
  B                  0                                            4
  C                  4                                            8
  A                  8                                            31
                     4                                           14.3
คา่ เฉลีย่

       เห็น​ได้​ว่า​ถ้า​เปลี่ยน​ลำ�ดับ​การ​เข้า​ใช้​ซีพียู​โดย​เลือก​ให้​โพร​เซส​ที่​มี​ระยะ​เวลา​เข้า​ใช้​ซีพียู (CPU-burst time)​
น้อยก​ ว่าเ​ข้าใ​ชก้​ ่อนจ​ ะท​ ำ�ใหค้​ ่าเ​ฉลี่ยข​ องเ​วลาร​ อค​ อย และค​ ่าเ​ฉลี่ยเ​วลาค​ รบร​ อบง​ านล​ ดล​ ง สำ�หรับว​ ิธกี​ ารม​ าก​ ่อนไ​ดก้​ ่อน​
(FCFS) จาก​ตัวอย่าง​นี้​เห็น​ได้​ว่า​ถ้า​โพร​เซส​ใด​ได้​ครอบ​ครอง​ซีพียู โพร​เซ​สนั้น​จะ​ประมวล​ผล​คำ�​สั่ง​ไป​จน​กระทั่ง​
เสรจ็ ส​ นิ้   เ​ปน็ ว​ ธิ ก​ี ารจ​ ดั การเ​วลาแ​ บบไ​มต​่ ดั ตอน(nonpreemptivescheduling)วธิ ก​ี ารน​ ไ​ี้ มเ​่ หมาะส​ �ำ หรบั ก​ ารป​ ระมวลผ​ ล​
​แบบแ​ บ่ง​ปัน​การใ​ช้เ​วลา (time-sharing system)

       2.2		งาน​สั้น​ได้​ทำ�​ก่อน (Shortest-Job-First Scheduling: SJF) วิธี​การ​นี้​พิจารณา​จาก​ค่า​ของ​เวลา​การ​ใช้​
ซีพียู​โดย​คัด​เลือก​โพร​เซส​จาก ready queue ที่​มี​ระยะ​เวลา​การ​ใช้​ซีพียู​ที่​สั้น​ที่สุด แต่​ถ้า​มี​ค่า​เท่า​กัน​จะ​ใช้​วิธี​มา​ก่อน​
​ได้​ก่อน​มา​เป็น​เกณฑ์​ใน​การ​คัด​เลือก อัล​กอ​ริ​ทึม​งาน​สั้น​ได้​ทำ�​ก่อน​นี้​สามารถ​จัดการ​เวลา​ใช้​ซีพียู​ที่​เป็น​ได้​ทั้ง​แบบ​
ไม่ต​ ัดตอน (nonpreemptive scheduling) หรือ​แบบต​ ัดตอน (preemtive scheduling) ก็ได้ ดัง​ตัวอย่าง​ต่อไ​ป​นี้

       ตวั อย่างท​ ่ี 2 กำ�หนดใ​ห้​มี​โพรเ​ซ​ส​ถูกส​ ่งม​ าป​ ระมวลผ​ ล เวลา 0 นาฬิกา จำ�นวน 4 โพรเ​ซส​ได้แก่ โพรเซส A,
B C และ D สมมติร​ ะบบ​ปฏิบัติ​การ​ใช้ว​ ิธีก​ ารจ​ ัดเ​วลา​ซีพียูง​ านส​ ั้นไ​ด้​ทำ�ก​ ่อน (SJF) แบบไ​ม่​ตัดตอน โดยแ​ ต่​ละโ​พร​เซส​
ต้องการ​ระยะเ​วลาเ​ข้า​ใช้ซ​ ีพียู ดังนี้

            โพรเซส  ระยะเวลาเข้าใชซ้ ีพยี ู (มลิ ลิวินาที)
              A                 8
              B                 11
              C                 9
              D                 5

       ดัง​นั้น ทั้งส​ ี่​โพรเ​ซสจ​ ะ​ถูกน​ ำ�ม​ า​เก็บ​ใน ready queue เมื่อ​เริ่ม​ประมวล​ผล โพรเซส D จะ​ถูก​คัด​เลือก​ให้​เข้า​ใช​้
ซพี ยี ก​ู อ่ นเ​นือ่ งจากม​ ร​ี ะยะเ​วลาเ​ขา้ ใ​ชซ​้ พี ยี ส​ู ัน้ ท​ ีส่ ดุ ใชเ​้ วลาป​ ระมวลผ​ ล 5 มลิ ลว​ิ นิ าทโ​ี ดยซ​ พี ยี ไ​ู มถ​่ กู ต​ ดั ตอนจ​ นป​ ระมวลผ​ ล​
โพรเซส D เสร็จ ต่อ​จาก​นั้น​โพรเซส A จะ​ถูก​คัด​เลือก​เป็น​ลำ�ดับ​ถัด​ไป ตาม​ด้วยโพรเซส C และ B ตาม​ลำ�ดับ​
ซึง่ โ​พรเ​ซสใ​ดก​ ต็ ามท​ ไี​่ ดร​้ บั ค​ ดั เ​ลอื กใ​หใ​้ ชซ​้ พี ยี จ​ู ะไ​ดค​้ รอบค​ รองซ​ พี ยี จ​ู นก​ ระทัง่ ป​ ระมวลผ​ ลง​ านจ​ นเ​สรจ็ โ​ดยไ​มถ​่ กู ต​ ดั ตอน​
จากร​ ะบบ​ปฏิบัติก​ าร ดังภ​ าพท​ ี่ 11.3 ดังนี้
   13   14   15   16   17   18   19   20   21   22   23