ทางบริษัทไมโครซอฟท์ (ประเทศไทย) ได้เป็นเจ้าภาพส่งผมและอาจารย์หลายท่านจากมหาวิทยาลัยไทยไปเข้างานสัมมนาและอบรม 2009 Asia Pacific Windows Core Workshop ระหว่างวันที่ 11-13 เดือนมีนาคมที่ผ่านมา งานนี้จัดขึ้นที่กรุงปักกิ่ง โดยมีไมโครซอฟท์รีเสิร์ชแล็บที่ปักกิ่งเป็นเจ้าภาพร่วมกับทางมหาวิทยาลัยปักกิ่ง งานนี้เขาพาไปสอนการทำงานของวินโดวส์เคอร์แนล และแจกซอร์สมาให้ลองศึกษาเล่นเพื่อสอนเด็กมหาวิทยาลัยไทยครับ สุดยอดมาก
การที่มีการสัมมนานี้เกิดจากทางไมโครซอฟท์พบว่าการเรียนการสอนด้านระบบปฏิบัติการทั้งโลก ถ้าลงลึกแล้วสถาบันการศึกษาส่วนใหญ่จะใช้ยูนิกซ์หรือลีนุกซ์เป็นหลัก เนื่องจากการที่เราจะศึกษาระบบปฏิบัติการให้ลึกแบบนักชีววิทยาเขาผ่ากบนั้น ต้องมีซอร์สโค้ด ทางยูนิกซ์ก็มีซอร์สของบีเอสดี (BSD) ให้เล่น ส่วนลีนุกซ์นั้นหายห่วงมีทุกอย่างให้แกะดูได้หมด ทางไมโครซอฟท์เลยลำบากรับคนมาทีได้แต่คนเล่นลีนุกซ์เสียหมด ดังนั้นทางไมโครซอฟท์รีเสิร์ชเอเชีย (MSRA) จึงได้ขอให้ทีมทางระบบปฏิบัติการจัดทำชุดซอฟต์แวร์สำหรับการเรียนการสอนวิชาระบบปฏิบัติการขึ้น ประกอบด้วย หนึ่ง WRK (Windows Research Kernel) ซึ่งเป็นซอร์สของเคอร์เนลวินโดวส์เซิร์ฟเวอร์ 2003 ที่แก้ไข คอมไพล์ แล้วรันได้จริงๆ (จริงนะครับ ลองทำมากับมือ) สอง CRK (Curriculum Resources Kit) ซึ่งเป็นเอกสารและเพาเวอร์พอยต์กองใหญ่ที่อธิบายเรื่องการออกแบบและการทำงานภายในของวินโดวส์เอ็นที สาม Project OZ ซึ่งเป็นเทคโนโลยีที่จะใช้ศึกษาระบบปฏิบัติการในโหมดของยูสเซอร์โดยไม่ต้องไปแก้เคอร์เนล ของเหล่านี้อยากจะกระตุ้นให้บรรจาอาจารย์ทั้งหลายเอาเรื่องวินโดวส์ไปสอนเด็กมากขึ้น ดูแล้วน่าเล่นมากเลยครับ
พอฝ่าอากาศหนาว (ราว 8 องศา) ในปักกิ่งไปถึงงานสัมมนา โดยสถานที่จัดอยู่ที่ห้องคอมพิวเตอร์ของมหาวิทยาลัยปักกิ่งเป็นส่วนใหญ่ เขาก็เริ่มโดยให้ คุณเดฟ โปรเบิร์ต (Dave Probert) ซึ่งเป็น Kernel Architect จาก Windows Core Operating System Division มาเล่าให้ฟังเรื่องสถาปัตยกรรมของวินโดวส์ ท่านเดฟนี่ระดับเทพเรื่องระบบปฏิบัติการเลยครับ ไม่เชื่อลองดูหนังสือระบบปฏิบัติการแสนฮิต Operating System Principles 7th Edition ของ Silberschatz ที่ใช้กันมากมายในเมืองไทยสิครับ ในบทกิติกรรมประกาศตอนต้นหนังสือบอกเลยว่าบทที่ 22 ที่ว่าด้วยวินโดวส์เอ็กซ์พีนั้นเอามาจากเอกสารที่ท่านเดฟเขียนเอาไว้ครับ ท่านเดฟก็มาเล่าให้ฟังวินโดวส์เอ็นที นั้นเกิดมาจาก VMS นะครับ ดังนั้นหลักการออกแบบจะไม่เหมือนยูนิกซ์ ท่านร่ายยาวว่า ยูนิกซ์นั้นออกแบบมาในยุค 1970 กว่าๆ ที่ ซีพียูช้า แรมน้อย ดิสก์เล็ก เทคนิคที่ดีในสมัยนั้นไม่ใช่ว่าจะดีในสมัยนี้แล้วเพราะไปพยายามแก้ปัญหาที่ไม่ใช่ปัญหาในระบบสมัยนี้ ท่านยังแซวว่าคนที่เรียนเรื่องระบบจากยูนิกซ์ชอบคิดว่าแนวคิดที่พ้นสมัยบางอย่างนั้นเป็นของเลอเลิศโดยไม่รู้เหตุผลเบื้องหลังเลย ส่วนวินโดวส์เอ็นทีนั้นใช้สมมุติฐานการออกแบบมาจากระบบราวปี 1990 คล้ายๆ กับเครื่องยุคปัจจุบัน เดฟยกตัวอย่างของการที่วินโดวส์เอ็นทีคุมการระบุชื่อออปเจค์โดยออปเจคเมเนจอร์ โดยไม่ผูกกับระบบไฟล์เหมือนยูนิกซ์ ทำให้วินโดวส์มีแนวโน้มจะทำพวกไคล์เอนต์แบบไร้ดิสก์ได้ดีกว่าอย่างไร
ผมว่าเวลาสองสามชั่วโมงที่ฟังท่านเดฟเล่าเรื่องวินโดวส์ เหมือนไปขึ้นเขาบู็ตึงฝึกมวยไท้เก๊กกับปรมาจารย์จางซานฟง ยังไงยังงั้น คือ ผมว่างานนี้คนฟังถ้าไม่สำเร็จยุทธก็จะกระอักเลือดฟุบคาโต๊ะแน่นอน โชคดีที่ผมทำงานด้านระบบปฏิบัติการและสอนมาสิบกว่าปี เลยรอดลงเขามาได้ครับ
ตอนกินข้าวโชคดี ทางท่านเดฟมานั่งกับเราชาวไทยแถมนั่งติดกับผม เดฟเล่าให้ฟังว่าตอนนี้เขากำลังออกแบบวินโดวส์ 8 และวินโดวส์ 9 อยู่ และท่านเดฟบอกผมว่าตอนนี้ด้านระบบปฏิบัติการแล้วกำลังน่าสนใจมาก เพราะฮาร์ดแวร์มีการเปลี่ยนแปลงมากไม่ว่าจะเป็นเรื่องมัลติคอร์ การเป็นไฮบริดคอมพิวติ้ง (คือการเอาฮาร์ดแวร์อื่นเช่น การ์ดแสดงผลมาทำงานร่วมประสานกับซีพียู) ทำให้เราต้องคิดออกแบบด้วยหลักการใหม่ๆ ที่จริงท่านท้าในห้องให้พวกเราฉีกตำราทิ้งแล้วถามตัวเองว่าระบบปฏิบัติการแห่งอนาคตสำหรับปี 2010 กว่าๆ น่าจะเป็นอย่างไร
ภาคบ่าย หลังอิ่มมาท่านเดฟก็ร่ายต่ออย่างรวดเร็วจนจบ ตามด้วยทางทีมมาสอนแล็บ ผมว่าดีมากและน่าตื่นตาตื่นใจเป็นที่สุด ทางทีมไมโครซอฟท์มีคุณอาร์คาดี้ รีติกค์ (Arkady Retik) มาพูดคร่าวๆเรื่องการใช้ WRK/CRK ที่ให้และแจกแผ่นซีดีด้วย จากนั้นคุณเซอร์เก ลิดิน (Serge Lidin) มาสอนแลป หลักการคือ ทางไมโครซอฟท์จะแจกเวอร์ช่วลพีซี 2007 (Vistual PC 2007) และเวอร์ชวลแมชีนของวินโดวส์เซิร์ฟเวอร์ 2003 ที่สามารถใช้งานได้ในเวอร์ชวลพีซีมาให้ เราสามารถจะใช้ Visual Studio Express 2005 ที่ลงไว้คอมไพล์และสร้างเคอร์เนลใหม่จากซอร์สที่ให้มาได้
การคอมไพล์เคอร์เนลก็ง่ายและเร็วมากเลยครับ ใช้เวลาไม่กี่นาทีเอง พอได้เคอร์เนลวินโดวส์เป็น DLL แล้ว ก็เอาไปลงใน C:\Windows\System32 ของวินโดวส์ที่รันในเวอร์ช่วลแมชีน หลังจากนั้นก็แก้ Boot Profile อีกหน่อย พอสั่งรีบูทเราสามารถเลือกเคอร์เนลเราได้ทันที เท่มาก ที่เด็ดกว่านั้นคือ เคอร์เนลที่ให้มีดีบักโหมด เราสามารถบอกเวอร์ชวลพีซีให้รอการเชื่อมต่อจากดีบักเกอร์ภายนอกได้ ทำให้เราใช้ดีบักเกอร์ windbg เชื่อมกับเคอร์เนลแล้วหยุดหรือ single step เคอร์เนลในเวอร์ชวลแมชีนได้ แค่นี้ผมก็ตาโตเท่าไข่ห่านแล้วครับ
สำหรับวันที่สอง ตอนเช้าเป็นการให้อาจารย์จากมหาวิทยาลัยในจีนและเกาหลีมาเล่าให้ฟังเรื่องการนำ WRK/CRK ไปสอน ผมว่าเขาลงลึกกว่าเรามาก เขาใช้ TA มากกว่าเราทำให้อาจารย์หนึ่งคนสอนเด็กได้มากกว่าเรามาก ตอนบ่ายก็มีอาจารย์จากมหาวิทยาลัยซินหัว กับ เป่ยหัง มาสอนให้ฟังเรื่องการสร้างซิสเต็มคอลล์ใหม่ในวินโดวส์ว่าทำได้อย่างไร ทำประเดี๋ยวก็ได้เลยครับ ยอดมาก
วันสุดท้าย เป็นการไปเยี่ยมไมโครซอฟท์รีเสิร์ชแล็บที่ปักกิ่ง เข้าไปที่ห้องสาธิตเขาก็แสดงของใหม่ๆ สองสามอย่าง คนก็ไปมุงโต๊ะไมโครซอฟท์เซอร์เฟสกันใหญ่ ผมกับรุ่นน้องแอบค่อนแคะว่าเป็นไอพอดทัชขนาดเท่าโต๊ะนั่นเอง แต่ก็สวยดีนะครับ เขาก็มาแสดงงานใหม่ๆ เช่น ฟีเจอร์ใหม่ๆใน ไมโครซอฟท์เวอร์ชวลเอิร์ธ เป็นต้น บ่ายๆ งานหมดแล้ว ทั้งทีมเลยไปดูวังต้องห้ามกัน หนาวมากๆ เลยแต่สวย ดูแล้วแปลกดี เช้าดูของไฮเทค บ่ายดูของโบราณ แต่ทั้งคู่ก็แสดงให้เราเห็นความยิ่งใหญ่ของจีนครับ
งานนี้ต้องขอบคุณทางไมโครซอฟท์ประเทศไทยที่ทำให้ผมได้เปิดหูเปิดตา ได้แผ่นเพาเวอร์พ้อยต์มาสอนหนังสือเทอมหน้าโดยไม่ต้องเตรียม ขอขอบคุณคุณศิริพรและคุณกิจจาที่ทำตัวเป็นเจ้าภาพที่น่ารักตลอดงาน และทำให้พวกเราได้กินเป็ดปักกิ่งเจ้าเก่าที่ดังที่สุดและอร่อยประทับใจทุกคนครับ (ตัวที่ล้านกว่าแล้วที่เขาย่างขายมาราวร้อยกว่าปี) อาจารย์ท่านใดสนใจก็สามารถสอบถามข้อมูลเพิ่มเติมไปทางไมโครซอฟท์ประเทศไทยได้นะครับ