เครื่องจักรเสมือนอเนกประสงค์

by cblue
19 October 2008 - 02:24

ตั้งหัวข้อข่าวให้เข้ากับกระแสบรรยากาศไทย ๆ เล็กน้อยครับ

จากบทวิเคราะห์ของ Peter Wayer และข่าวเก่า Neil McAllister เขียนเปิดประเด็นการมาของเครื่องจักรเสมือนอเนกประสงค์ (Generic Virtual Machines) ที่เราเริ่มจะเห็นกันมากขึ้น

ประเด็นที่น่าสนใจอยู่ที่เส้นทางของ "ภาษา"และ "แพล็ตฟอร์ม" เริ่มวิ่งมาตัดกัน Neil ย้อนให้ฟังถึงโครงการ Parrot ซึ่งเป็นเครื่องจักรเสมือนที่สร้างเพื่อ Perl 6 และคาดหวังว่าจะสนับสนุน Python ด้วย แต่เท่าที่ทราบเรื่องมันเงียบ ๆ ไปแล้ว จากนั้นก็ขยับมาที่ CLR (Common Language Runtime) ของ .NET ซึ่งหลักจากการประกาศตัวของ IronPython ทำให้เกิดการผลักดัน DLR (Dynamic Language Runtime) เพื่อเอื้อประโยชน์ให้ภาษาไดนามิค และแน่นอนว่าฝั่งจาวาก็ได้รับแรงกระตุ้นจาก DLR เช่นกัน จนทำให้เกิด Da Vinci Machine ขึ้นรอบนี้ JRuby เป็นภาษาแรกรันบนมันได้

ประเด็นถัดมาคือ ระบบปฏิบัติการ ไลบรารี (ของตัวรันไทม์) และเฟรมเวิร์ค มันพากันซับซ้อนเสียจนความต้องการใช้ C หรือ Assembly ในการพัฒนาแอพพลิเคชั่นนั้นแทบจะไม่มีแล้ว (แต่แน่นอนว่าในระดับของการพัฒนาใกล้ ๆ ฮาร์ดแวร์ยังต้องการ C/Assembly อยู่) รวมกับที่ภาษาที่ออกแบบมารันบนเครื่องจักรเสมือนมีความสามารถเด่น ๆ หลายอย่าง เช่น Garbage Collection - การเก็บกลับหน่วยความจำที่ไม่ได้ใช้, Runtime Bytecode Verification - การทวนสอบชุดคำสั่งก่อนทำงาน หรือ Security Sandbox - ระบบความปลอดภัยป้องกันการเข้าถึงทรัพยากรเครื่องโดยตรง เป็นต้น เมื่อเสริมด้วยความสะดวกของภาษาสคริปต์ที่ช่วยให้เขียนโปรแกรมได้มีกระชับขึ้น ทำให้เราได้ทั้งผลิตภาพ (productivity) และสมรรถภาพ (performance)

ประเด็นสุดท้ายที่ถูกชี้ออกมาคือการใช้เครื่องจักรเสมือนให้มากขึ้นจนมันลงไปอยู่ในระดับระบบปฏิบัติการ ซึ่งก็น่าสนใจว่าในที่สุดทิศทางจะเป็นแบบนี้จริงหรือ ประโยชน์มันชัดเจนหรือไม่เมื่อเทียบกับเทคโนโลยีอย่าง Virtualization (อ่านข่าวเก่า)

ที่มา - InfoWorld

Blognone Jobs Premium