ระบบปฏิบัติการแบบทันที

จากวิกิพีเดีย สารานุกรมเสรี

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

ระบบปฏิบัติการแบบทันที (Real-time operating system: RTOS) คือระบบปฏิบัติการ ที่มี เวลา เป็นปัจจัยสำคัญ ในประสิทธิภาพของระบบ นั่นคือมีชุดคำสั่ง หรือโปรเซส บางอย่าง จำเป็นต้องทำงาน ณ เวลาที่กำหนด หรือทำให้เสร็จภายในเวลาที่กำหนด ถ้าทำไม่ได้อาจสร้างความเสียหายต่อระบบ หรือเกิดค่าความเสียหาย (cost) กับระบบ โดยทั่วไปสำหรับระบบปฏิบัติการแบบทันที การทำงานไม่ทันในเวลาที่กำหนด มีค่าเทียบเคียงได้กับ การไม่ทำงานนั้นเลย ส่วนมากระบบปฏิบัติการแบบทันที ถูกออกแบบมาเพื่อแอปพลิเคชันแบบฝังตัว หรือแอปพลิเคชันที่สร้าง และติดตั้งมากับระบบตั้งแต่แรก เพื่อทำงานเฉพาะด้าน ยกตัวอย่างเช่น ระบบปฏิบัติการของเครื่องเล่นแผ่นเพลงแบบคอมแพคดิสก์หรือซีดี (CDs) ทันทีที่ระบบปฏิบัติการอ่านข้อมูลจากแผ่นซีดีแล้ว จะต้องประมวลผลข้อมูล และส่งสัญญาณเสียง ออกไปให้ผู้ฟังทันที ถ้าระบบปฏิบัติการทำงานช้าก็จะทำให้เพลงฟังไม่รู้เรื่อง

สารบัญ

[แก้] คุณลักษณะที่สำคัญของระบบปฏิบัติการแบบทันที

ระบบปฏิบัติการแบบทันทีมีจุดที่ต้องระวังในการออกแบบเป็นพิเศษอยู่ 2 จุดก็คือ

[แก้] การจัดลำดับแบบทันที

โดยโปรแกรมจัดลำดับ (scheduler) จะต้องมีความสามารถในการจัดลำดับการทำงาน ให้ทุกโปรเซส สามารถทำงานได้ทันตามที่ต้องการ โดยในปี ค.ศ. 1973 2 นักวิจัยคือลิวและเลย์แลนด์ได้พิสูจน์ทฤษฎีบทบางอย่าง เกี่ยวกับการจัดเวลาว่า กลุ่มโปรเซสลักษณะแบบใด จะสามารถจัดเวลาได้ทัน หรือในกรณีที่ไม่สามารถจัดเวลาได้ทันสำหรับทุกโปรเซส ลิวและเลย์แลนด์ก็ยังได้เสนออัลกอริทึมการจัดลำดับ ที่จัดเวลาให้มีค่าความเสียหายน้อยที่สุด โดยปกติแล้วระบบปฏิบัติการที่ถูกออกแบบเพื่อใช้กับงานทั่วไป (general-purpose OS) ไม่เหมาะที่จะจัดลำดับโปรเซสแบบทันที เนื่องจากจะมี ค่าใช้จ่ายส่วนเกิน หรือ ค่าใช้จ่ายอื่น (overhead) ในการทำกระบวนการสับเปลี่ยนโปรเซส (context-switching) สูง

[แก้] การจัดสรรหน่วยความจำ

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

นอกจากนั้น ยังมีปัญหาเรื่อง การแตกกระจายของหน่วยความจำ (memory fragmentation) เนื่องจากการจัดสรรเนื้อที่หน่วยความจำในทันทีเ ป็นเรื่องยากที่จะจัดสรรให้มีระเบียบ ปัญหานี้ไม่เป็นปัญหาใหญ่นัก สำหรับเครื่องคอมพิวเตอร์แบบตั้งโต๊ะทั่วไป เพราะว่ามีการเปิด-ปิดอยู่บ่อยครั้ง อย่างไรก็ตามสำหรับระบบฝังตัว ที่ทำงานอยู่ตลอดปี โดยไม่ได้เปิด-ปิดเลย ปัญหานี้ถือเป็นประเด็นสำคัญ

[แก้] ตัวอย่างของระบบปฏิบัติการแบบทันที

  • BeOS
  • ChorusOS
  • eCos
  • FreeRTOS
  • ITRON
  • LynxOS
  • MicroC/OS-II
  • Nucleus
  • Nut/OS
  • OS-9
  • OSE
  • OSEK/VDX
  • OSEKtime
  • pSOS
  • QNX
  • RMX
  • RSX-11
  • RT-11
  • RTOS-UH
  • VRTX
  • VxWorks
  • Windows CE
  • RTLinux
  • RTAI

[แก้] ดูเพิ่ม

หลายบริษัทก็ยังขายลีนุกซ์ที่มีการดัดแปลงเพิ่มขีดความสามารถการปฏิบัติการแบบทันที และเมื่อ 8 ตุลาคม พ.ศ. 2547 บริษัท มอนตาวิสตา (Montavista) ส่งแพทช์ (patch) ไปยัง Linux kernel mailing list เพื่อทำให้ลีนุกซ์เป็นระบบปฏิบัติการแบบทันที

[แก้] อ้างอิง

A. Tanenbaum and A. Woodhull. Operating Systems: Design and Implementation. Prentice Hall, 1997.