ระบบปฏิบัติการแบบทันที
จากวิกิพีเดีย สารานุกรมเสรี
ระบบปฏิบัติการแบบทันที (Real-time operating system: RTOS) คือระบบปฏิบัติการ ที่มี เวลา เป็นปัจจัยสำคัญ ในประสิทธิภาพของระบบ นั่นคือมีชุดคำสั่ง หรือโปรเซส บางอย่าง จำเป็นต้องทำงาน ณ เวลาที่กำหนด หรือทำให้เสร็จภายในเวลาที่กำหนด ถ้าทำไม่ได้อาจสร้างความเสียหายต่อระบบ หรือเกิดค่าความเสียหาย (cost) กับระบบ โดยทั่วไปสำหรับระบบปฏิบัติการแบบทันที การทำงานไม่ทันในเวลาที่กำหนด มีค่าเทียบเคียงได้กับ การไม่ทำงานนั้นเลย ส่วนมากระบบปฏิบัติการแบบทันที ถูกออกแบบมาเพื่อแอปพลิเคชันแบบฝังตัว หรือแอปพลิเคชันที่สร้าง และติดตั้งมากับระบบตั้งแต่แรก เพื่อทำงานเฉพาะด้าน ยกตัวอย่างเช่น ระบบปฏิบัติการของเครื่องเล่นแผ่นเพลงแบบคอมแพคดิสก์หรือซีดี (CDs) ทันทีที่ระบบปฏิบัติการอ่านข้อมูลจากแผ่นซีดีแล้ว จะต้องประมวลผลข้อมูล และส่งสัญญาณเสียง ออกไปให้ผู้ฟังทันที ถ้าระบบปฏิบัติการทำงานช้าก็จะทำให้เพลงฟังไม่รู้เรื่อง
สารบัญ |
[แก้] คุณลักษณะที่สำคัญของระบบปฏิบัติการแบบทันที
ระบบปฏิบัติการแบบทันทีมีจุดที่ต้องระวังในการออกแบบเป็นพิเศษอยู่ 2 จุดก็คือ
- การจัดลำดับแบบทันที (Real-time scheduling)
- การจัดสรรหน่วยความจำ (Memory allocation)
[แก้] การจัดลำดับแบบทันที
โดยโปรแกรมจัดลำดับ (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.