Development

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

จากบทวิเคราะห์ของ 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

Hiring! บริษัทที่น่าสนใจ

Carmen Software company cover
Carmen Software
Hotel Financial Solutions
Next Innovation (Thailand) Co., Ltd. company cover
Next Innovation (Thailand) Co., Ltd.
We are web design with consulting & engineering services driven the future stronger and flexibility.
KKP Dime company cover
KKP Dime
KKP Dime บริษัทในเครือเกียรตินาคินภัทร
Kiatnakin Phatra Financial Group company cover
Kiatnakin Phatra Financial Group
Financial Service
Fastwork Technologies company cover
Fastwork Technologies
Fastwork.co เว็บไซต์ที่รวบรวม ฟรีแลนซ์ มืออาชีพจากหลากหลายสายงานไว้ในที่เดียวกัน
Thoughtworks Thailand company cover
Thoughtworks Thailand
Thoughtworks เป็นบริษัทที่ปรึกษาด้านเทคโนโยลีระดับโลกที่คว้า Great Place to Work 3 ปีซ้อน
Iron Software company cover
Iron Software
Iron Software is an American company providing a suite of .NET libraries by engineer for engineers.
CLEVERSE company cover
CLEVERSE
Cleverse is a Venture Builder. Our team builds several tech companies.
Nipa Cloud company cover
Nipa Cloud
#1 OpenStack cloud provider in Thailand with our own data center and software platform.
Bangmod Enterprise company cover
Bangmod Enterprise
The leader in Cloud Server and Hosting in Thailand.
CIMB THAI Bank company cover
CIMB THAI Bank
MOVING FORWARD WITH YOU - CIMB is the leading ASEAN Bank
Bangkok Bank company cover
Bangkok Bank
Bangkok Bank is one of Southeast Asia's largest regional banks, a market leader in business banking
MuvMi (Urban Mobility Tech Co.,Ltd.) company cover
MuvMi (Urban Mobility Tech Co.,Ltd.)
Shape the future of urban mobility towards affordable, clean, and safe solutions
T.N. Digital Solution Co., Ltd. company cover
T.N. Digital Solution Co., Ltd.
TNDS has been involving in every first move of banking’s major digital transformation.
KBTG - KASIKORN Business-Technology Group company cover
KBTG - KASIKORN Business-Technology Group
KBTG - "The Technology Company for Digital Business Innovation"
Siam Commercial Bank Public Company Limited company cover
Siam Commercial Bank Public Company Limited
"Let's start a brighter career future together"
Icon Framework co.,Ltd. company cover
Icon Framework co.,Ltd.
Global Standard Platform for Real Estate แพลตฟอร์มสำหรับธุรกิจอสังหาริมทรัพย์ครบวงจร มาตรฐานระดับโลก
REFINITIV company cover
REFINITIV
The Financial and Risk business of Thomson Reuters is now Refinitiv
H LAB company cover
H LAB
Re-engineering healthcare systems through intelligent platforms and system design.
The Gang Technology Co., Ltd. company cover
The Gang Technology Co., Ltd.
We're a Digital Agency that helps our customers transform their business into digital with ease.
LTMH company cover
LTMH
LTMH มุ่งเน้นการพัฒนาผลิตภัณฑ์ที่สามารถช่วยพันธมิตรของเราให้บรรลุเป้าหมาย
Seven Peaks company cover
Seven Peaks
We Drive Digital Transformation
Wisesight (Thailand) Co., Ltd. company cover
Wisesight (Thailand) Co., Ltd.
The Best Choice For Handling Social Media · High Expertise in Social Data · Most Advanced and Secure
MOLOG Tech company cover
MOLOG Tech
We are Modern Logistic Platform, Specialize in WMS, OMS and TMS.
Data Wow Co.,Ltd company cover
Data Wow Co.,Ltd
We enable our clients to realize increased productivity by solving their most complex issues by Data
LINE Company Thailand company cover
LINE Company Thailand
LINE, the world's hottest mobile messaging platform, offers free text and voice messaging + Call
LINE MAN Wongnai company cover
LINE MAN Wongnai
Join our journey to becoming No.1 food platform in Thailand

cblue Sun, 19/10/2008 - 17:02

In reply to by somsak_sr

มันเคยเป็นเหรอครับ ผมก็ไม่รู้ว่ามีใครเคยเอามาเป็นมุขรึเปล่า
แต่ตัวโครงการมีอยู่จริงครับ :)

Framekung Mon, 20/10/2008 - 01:25

ขอโทษนะครับ เอนก เขียนผิดครับ ต้องเขียนเป็น "อเนก" นะครับ

Iowan Mon, 20/10/2008 - 10:40

คำว่า machine นอกจากจะแปลว่าเครื่องจักรแล้ว
ผมว่าน่าจะแปลเป็นคำอื่นได้บ้างนะครับ
เพราะผมดูหัวข้อแล้วนึกว่าเป็นเครื่องจักรกล
แต่มันกลับเป็นการเขียนโปรแกรมคอมพิวเตอร์ชนิดนึง
หรือเป็นอย่างไรกันครับ?

cblue Mon, 20/10/2008 - 19:21

In reply to by DuRiAn

ขอบคุณทั้ง 2 ความเห็นครับ กำลังรออยู่เลยครับ

ตรงนี้เป็นประเด็นแฝงที่ผมก็อยากจะให้ลองคุยกันว่า Virtual Machine จะแปลว่าอะไร หรือแปลยังไง จะทับศัพท์ดีหรือไม่ ลองเทียบดูกับคำว่า "ภาษาไดนามิก" ที่แปล+ทับศัพท์แล้วย่อยง่ายกว่า ส่วนตัวผมก็คิดเหมือนกันว่า Virtual Machine จะแปลแล้วมีปัญหา เลยออกตัวว่า "ตั้งหัวข้อข่าวให้เข้ากับกระแสบรรยากาศไทย ๆ เล็กน้อย" ไว้ครับ

ผมอยากให้ลองตั้งสมมติฐานว่ายังไงก็ต้องแปลคำนี้ ก็จะเป็น

  • ย่อแล้วเรียกว่า วีเอ็ม อันนั้นส่วนตัวผมก็รับได้
  • machine จะแปลให้เป็น "เครื่อง" เฉย ๆ จะดีกว่าหรือไม่ ก็จะเป็นคำว่า เครื่องเสมือน
  • ทับศัพท์ virtual ว่า เวอร์ชวล
  • ทับศัพท์ machine เป็น แมชชีน
  • อื่น ๆ

Iowan Mon, 20/10/2008 - 22:42

In reply to by cblue

ถ้าแปลว่า เครื่องจำลอง ล่ะครับ ผมว่าน่าจะพอเข้าใจสำหรับคนทั่วๆไปนะครับ หรือท่านอื่นมีคำที่ใช่เลยกว่านี้มั้ยครับ

Thaina Mon, 20/10/2008 - 13:53

สุดท้าย Virtual Machine ก็จะกลายเป็นระบบปฏิบัติการ ผมคิดแบบนี้เหมือนกันนะ

แล้วจะเรียกใช้อะไรมาทำอะไร ก็เป็นไลบรารี่ในเฟรมเวิร์คทั้งหมด

คิดว่า Linux Core ใหม่ กับ Windows 8 ก็คงจะเป็นแล้ว(คาดว่า)

ผมว่า C# ดีกว่า Java ตรงที่ มันมี unsafe ที่ใช้ลง Low level ได้ง่ายกว่า

Iowan Mon, 20/10/2008 - 22:41

ถ้าแปลว่า เครื่องจำลอง ล่ะครับ ผมว่าน่าจะพอเข้าใจสำหรับคนทั่วๆไปนะครับ หรือท่านอื่นมีคำที่ใช่เลยกว่านี้มั้ยครับ

mk Mon, 20/10/2008 - 23:13

In reply to by Iowan

คำว่า "เครื่อง" ในภาษาไทย มันมีความหมายกว้างมากครับ เครื่องแก้ว เครื่องใช้ ได้หมด

Iowan Mon, 20/10/2008 - 23:49

In reply to by mk

machine ก็เป็นคำที่กว้างเหมือนกันนะครับ ในที่นี้ผมว่ามันเป็นตัวทำงานอย่างหนึ่ง ซึ่งก็น่าจะแปลว่า เครื่องจำลองการทำงาน และคำว่า เครื่อง ก็เป็นคำกว้างๆในภาษาไทยที่ประกอบกับคำอื่นทำให้มีความหมายได้หลากหลาย เช่น เครื่องยนต์ เครื่องบิน เครื่องเรือน เครื่องใช้ และอื่นๆครับ

mk Tue, 21/10/2008 - 01:34

In reply to by Iowan

คุณ cblue ผู้เขียนข่าว ถึงได้ใช้ "เครื่องจักร" ไงครับ

cblue Tue, 21/10/2008 - 10:31

In reply to by Iowan

มีอีกคำที่ความหมายคล้ายกันกับ virtual machine คือ emulator ครับฃ

ขอแยกเป็นประเภทแล้วลองดูกันนะครับ

  1. กลุ่มที่จำลองการทำงานของเครื่องคอมพิวเตอร์ พวก VMWare, Xen, Qemu เราจะเรียกกันว่าอะไร?
  2. กลุ่มที่จำลองการทำงานของอุปกรณ์ เช่น Android, iPhone และอื่น ๆ เราจะเรียกกันว่าอะไร? เป็นกลุ่มเดียวกับข้อ 1 ได้หรือไม่ ?
  3. กลุ่ม JVM, .NET, Parrot, LLVM, Rubinius และอื่น ๆ พวกนี้ไม่ได้จำลองการทำงานของอุปกรณ์หรือฮาร์ดแวร์ ตัวมันเอกมีเอกลักษณ์ มี instruction set ของมันเฉพาะ

ถ้า 1 และ 2 พอจะจัดกลุ่มกันได้ว่าเป็น Emulator มันก็จะเป็น เครื่องจำลอง และ Emulation ก็จะเป็นการจำลองการทำงาน
และ 3 ก็จะไม่เข้ากลุ่ม เพราะมันไม่ได้จำลองอะไรมา โปรแกรมในกลุ่มข้อ 3 ตัวมันเองมี concept เป็น machine เพียงแต่ไม่ใช่ hardware ครับ

Thaina Tue, 21/10/2008 - 11:18

In reply to by cblue

ผมเข้าใจว่ากลุ่ม 3 มันจำลองตัวเองเป็น OS ครับ คือโปรแกรมต้องไปรันบนมัน และไลบรารี่ก็อยู่บนมัน มันคุยกับ CPU เองได้ด้วย มีฮีปจำลองอีกต่างหาก

ถึงแม้ตอนนี้มันจะอาศัย C Library ใน OS ไปคุยกับฮาร์ดแวร์ต่ออีกชั้น แต่ต่อไปมันอาจจะคุยกับฮาร์ดแวร์ทุกตัวได้เองก็ได้

จำลองการทำงานของอุปกรณ์ ผมมักเรียกเป็น Emulator ครับ

จำลองการทำงานของเครื่องคอมพืวเตอร์ ผมก็ชินกับคำว่า Virtual Machine มากกว่า

ส่วนกลุ่ม 3 ผมเองก็เรียก Virtual Machine ถึงมันจะไม่ได้จำลองอะไรมาก็ตาม

คำๆ นึง ไม่จำเป็นต้องมีความหมายเฉพาะแค่อย่างนี้อย่างนั้น เพียงอย่างเดียวนี่ครับ

ในความเห็นของผม "Virtual Machine" มันฟังดูไม่มีตัวตนอยู่จริง แต่ "เครื่องจักรเสมือน" ฟังดูมีตัวตนมากกว่าครับ