มาใช้ Mac OS X แบบ 64 บิตกัน
Apple ได้โปรโมทเรื่อง 64 บิตมานานหลายปีแล้วนับแต่ยุค Mac OS X Tiger และในคอมพิวเตอร์ยุคปัจจุบันของ Apple ก็ได้ใช้งาน CPU ที่สนับสนุน 64 บิตมาแล้วพักหนึ่ง บัดนี้น่าจะถึงเวลาอันดีที่เราจะมาทำความเข้าใจเรื่อง 64 บิตใน Mac OS X กัน มาดูกันว่ามันมีดีอะไร แล้วเราจะใช้มันได้หรือไม่ และจะใช้มันได้อย่างไร
ประวัติ 64 บิตอย่างย่อบน Mac OS X
Tiger เป็นระบบปฏิบัติการตัวแรกในสาย Mac OS X ที่สนับสนุนการใช้งาน Kernel แบบ 64 บิต ซึ่งในขณะนั้นส่วนที่รองรับ 64 บิตจริง ๆ ยังมีแค่เพียงส่วนของ UNIX ที่อยู่เบื้องหลังของตัวระบบเท่านั้น ใน Leopard การรองรับ 64 บิตมีมากขึ้นขยายมาถึงส่วนของ UI Framework ที่เป็น Cocoa แล้ว (ยกเลิกแผนการพัฒนา Carbon) และใน Snow Leopard ที่เพิ่มความสามารถในการใช้หน่วยความจำให้ใช้ได้มากถึง 16 TB (ถ้าสามารถผลิตได้) รวมถึงการเพิ่มความสามารถของ Application ระบบทุกตัว (ไม่เกี่ยวกับ iTunes, iLife และ QuickTime รุ่นเก่า) ให้รองรับการใช้งานแบบ 64 บิต
ทำไมต้อง 64 บิต
ปัญหาหลักของระบบปฏิบัติการแบบ 32 บิตคือไม่ว่าจะเพิ่มหน่วยความจำให้แก่เครื่องเท่าใด สามารถใช้งานหน่วยความจำสูงสุดทำได้แค่เพียง 4 GB เท่านั้น (ไม่นับข้อจำกัดบน Hardware สำหรับ CPU แบบ 32 บิตที่อ้างอิงหน่วยความจำได้สูงสุดแค่ 2 GB เท่านั้น) นอกจากนี้ด้วยความสามารถของ Mac OS X สามารถใช้ประโยชน์จาก 64 บิตในการป้องกันการถูกโจมตีจากโปรแกรมไม่พึงประสงค์ที่จ้องเล่นงานหน่วยความจำของโปรแกรมเพื่อแทรกแซงการปฏิบัติการของโปรแกรมนั้น ๆ ให้มีพฤติกรรมอันไม่พึงประสงค์ซึ่งอาจจะเป็นอันตรายต่อข้อมูลและตัวระบบปฏิบัติการ
อีกจุดที่ Apple พยายามขายในหน้าผลิตภัณฑ์คือความเร็วที่มากขึ้น ซึ่งก้ำกึ่งว่าอาจจะไม่เป็นความจริงก็ได้ เนื่องจากหมายเหตุตอนท้ายด้วยสเปคของเครื่องที่ใช้ทดสอบที่ต่างกัน คือ MacBook 2.0 GHz กับ iMac 2.66 GHz ทำให้ไม่สามารถสรุปได้ว่าเรื่องนี้เป็นจริงหรือไม่ คงจะต้องทดสอบด้วยเครื่องที่สเปคเท่ากัน เช่น Mac Pro (Mid 2010) ที่บูตเป็น 32 บิตและ 64 บิต จึงจะได้ข้อสรุปที่ชัดเจนในการทดสอบว่าช่วยเรื่องความเร็วจริงหรือไม่?
ความต้องการพื้นฐาน
เครื่องคอมพิวเตอร์ที่สนับสนุนการใช้งาน Kernel แบบ 64 บิต ซึ่งไม่ได้หมายความว่าจะเป็นเครื่องที่ใช้ CPU สนับสนุนคำสั่งแบบ 64 บิต (PowerPC G5, Intel Core 2 Duo หรือใหม่กว่า) ซึ่งทาง Apple ได้กำหนดชนิดของเครื่องไว้ตามลิงก์อ้างอิงด้านล่าง
สำหรับรายการเครื่องที่สนับสนุนการใช้งานคร่าวๆ (อ้างอิงจากวันที่เขียนบทความนี้) เป็นดังรายการต่อไปนี้
- Mac Pro (Mid 2010)—กำหนดให้บูตเป็น 64 บิตเป็นค่าปริยาย
- XServe (Early 2008 และหลังจากนั้น), Mac Pro (Early 2008 และหลังจากนั้น), Mac mini (Mid 2010)—กำหนดให้ Mac OS X Server บูตเป็น 64 บิตเป็นค่าปริยาย แต่สำหรับ Mac OS X ต้องกำหนดเอาเอง
- iMac (Early 2008 และหลังจากนั้น), MacBook Pro (Early 2008 และหลังจากนั้น)
ข้อสังเกต: ไม่มี MacBook และ MacBook Air ในรายการนี้ ซึ่งน่าจะชัดเจนตามการวางสายผลิตภัณฑ์ของ Apple หากถึงยุคแห่ง 64 บิตจริง ๆ อาจจะมีปรากฏในรายการนี้ได้ในอนาคต
สำหรับกรณี Mac Pro/MacBook Pro ซึ่งสามารถต่อพ่วงอุปกรณ์เพิ่มเติมผ่านทางช่อง PCI Express/ExpressCard นั้น ตัวอุปกรณ์ที่ต่อพ่วงจำเป็นต้องมี Kernel Extension ที่รองรับ Kernel แบบ 64 บิตด้วยเพื่อให้สามารถใช้งานต่อไปได้ มิเช่นนั้นจะไม่สามารถใช้อุปกรณ์ดังกล่าวได้ในโหมด 64 บิต
วิธีการเปิดใช้งาน
การเปิดใช้งาน Mac OS X แบบ 64 บิตสามารถทำได้ 3 วิธีด้วยกัน แต่ในคลังความรู้ของ Apple แนะนำไว้เพียง 2 วิธีเท่านั้น ส่วนวิธีการที่ 3 เป็นวิธีการที่ไปค้นได้จากเว็บอื่นในอินเตอร์เน็ตซึ่งจะขอเรียกมันว่า “วิธีที่ Apple ไม่ได้แนะนำ” ซึ่งแต่ละวิธีก็มีข้อดี/ข้อเสียที่ต่างกันไป
สำหรับการบูตเป็น 64 บิตในหนแรกหลังจากที่เครื่องได้ผ่านการบูตเป็น 32 บิตมาก่อน จะใช้เวลานานแต่หากบูตใหม่เป็น 64 บิตอีกครั้งอย่างต่อเนื่องจะใช้เวลาที่น้อยลง
กดปุ่มบนแป้นพิมพ์เพื่อบูตเป็น 64 บิต
สำหรับเครื่องที่สนับสนุนการใช้งาน Kernel แบบ 64 บิต แต่ไม่ได้ถูกตั้งให้บูตเป็น 64 บิตโดยปริยาย ในขณะที่บูตเครื่อง กดปุ่ม 6 และ 4 บนแป้นพิมพ์ (กดค้างตั้งแต่เปิดเครื่องจนผ่านโลโก้ ไปจนเริ่มเห็นสัญลักษณ์วงกลมหมุนแสดงการโหลดข้อมูล)
สั่งให้บูต 64 บิตผ่านคำสั่ง systemsetup
สำหรับเครื่องที่สนับสนุนการใช้งาน Kernel แบบ 64 บิต แต่ไม่ได้ถูกตั้งให้บูตเป็น 64 บิตโดยปริยาย เปิดโปรแกรม Terminal ที่อยู่ใน Applications/Utilities แล้วพิมพ์คำสั่งต่อไปนี้
sudo systemsetup -setkernelbootarchitecture x86_64
คำสั่ง sudo จำเป็นต้องใช้สิทธิ์ระดับ Administrator ของ User ที่สั่งจำเป็นต้องมีการตั้ง Password ประจำ User นั้นด้วย
ผลลัพธ์ของคำสั่งนี้จะเป็นการแก้ไขไฟล์ /Library/Preferences/SystemConfiguration/com.apple.Boot.plist โดยเป็นการแก้ไขค่า Kernel Architecture จากที่ไม่มีการตั้งค่าไว้เป็น x86_64
การเปลี่ยนค่าปริยายบน NVRAM (วิธีที่ Apple ไม่ได้แนะนำ)
สำหรับเครื่องที่สนับสนุนการใช้งาน Kernel แบบ 64 บิต แต่ไม่ได้ถูกตั้งให้บูตเป็น 64 บิตโดยปริยาย นี่เป็นอีกวิธีที่สามารถทำได้ เปิดโปรแกรม Terminal แล้วพิมพ์คำสั่งต่อไปนี้
sudo nvram boot-args="arch=x86_64"
เปรียบเทียบวิธีการ
สำหรับวิธีกดปุ่มบนแป้นพิมพ์ จะใช้เพื่อต้องการเลือกใช้งาน Kernel แบบ 64 บิตเป็นครั้งคราวเท่านั้น ในการบูตครั้งถัดไปหากไม่ได้กดปุ่มบนแป้นพิมพ์อีกระบบจะไปตรวจค่าจาก /Library/Preferences/SystemConfiguration/com.apple.Boot.plist หากไม่พบการตั้งค่า Kernel Flag ก็จะใช้ค่าปริยายบน Hardware เป็นตัวกำหนดการเลือกใช้ Kernel
การสั่งให้บูต 64 บิตผ่านคำสั่ง systemsetup จะเป็นการกำหนดว่า Mac OS X ที่อยู่ใน Partition ที่ใช้บูตนี้จะถูกบูตเป็น 64 บิตเสมอ นั่นหมายความว่าหากทำการถอด Harddisk ก้อนนี้ไปเชื่อมต่อหรือทำ Target Disk กับเครื่องที่สนับสนุนการใช้งาน Kernel แบบ 64 บิต สามารถบูต Mac OS X ที่อยู่ใน Partition นี้ให้เป็น 64 บิตได้ทันทีโดยไม่ต้องกดปุ่มใด ๆ เพิ่มเติม การตั้งค่านี้จะมีความคงทนต่อการเปลี่ยนอุปกรณ์เช่น Logic Board ด้วย
สำหรับการเปลี่ยนค่าปริยายบน NVRAM นั้น เนื่องจากเป็นลำดับสุดท้ายในการตรวจสอบ (หากไม่มีค่าอื่น ๆ ตั้งไว้) นั้นหมายถึงว่าหากเครื่องคอมพิวเตอร์นี้ถูกเชื่อมต่อกับ Harddisk ใด ๆ ที่ติดตั้ง Mac OS X แต่ไม่ได้มีการตั้งค่า Kernel Architecture ไว้ Mac OS X ใน Partition นั้นจะถูกบูตให้เป็น 64 บิตเสมอ ซึ่งวิธีนี้จะไม่คงทนต่อการเปลี่ยนอุปกรณ์เช่น Logic Board และไม่คงทนต่อการ Reset PRAM/NVRAM ด้วย
หากต้องการบังคับให้ Partition ที่เราต้องการบูตเป็น 64 บิตเสมอ แนะนำให้ตั้งค่าผ่านคำสั่ง systemsetup แต่หากต้องการให้เครื่องคอมพิวเตอร์เครื่องนั้นบูตเป็น 64 บิตเสมอ แนะนำให้เปลี่ยนค่าปริยายบน NVRAM
ตรวจสอบว่าขณะนี้ใช้งานในโหมด 64 บิตหรือไม่?
ที่ทำมาทั้งหมดอาจจะไม่สำเร็จก็ได้ เพราะ Mac OS X ในโหมด 64 บิตก็ไม่ได้มีหน้าตาที่แตกต่างจากโหมด 32 บิตแต่อย่างใด ซึ่งวิธีการตรวจสอบสามารถทำได้โดย
- เปิด System Profiler ซึ่งอยู่ใน
Applications/Utilitiesหรือจะคลิ้กโลโก้ แล้วกดปุ่มoptionค้างคำว่า About This Mac จะเปลี่ยนเป็น System Profiler… - กดเลือก Software ที่ฝั่งด้านซ้าย
- สังเกตข้อความ
64-bit Kernel and Extensions:ว่าต่อท้ายด้วย Yes หรือ No หากเป็น Yes แสดงว่ากำลังทำงานอยู่ในโหมด 64 บิต
หรือสำหรับผู้ที่ใช้งานโปรแกรม Terminal แล้วพิมพ์คำสั่งต่อไปนี้
uname -a
ซึ่งสามารถตรวจสอบผลลัพธ์ในท่อนรองสุดท้ายและท่อนสุดท้ายของลัพธ์ หากแสดงว่าเป็น x86_64 แสดงว่าอยู่ในโหมด 64 บิต
อยากกลับไปใช้ 32 บิตจะทำอย่างไร?
หากต้องการเปลี่ยนแบบชั่วคราว สำหรับเครื่องที่ตั้งให้บูตเป็น 64 บิตแล้ว ในขณะที่บูตเครื่อง กดปุ่ม 3 และ 2 บนแป้นพิมพ์ (กดค้างตั้งแต่เปิดเครื่องจนผ่านโลโก้ ไปจนเริ่มเห็นสัญลักษณ์วงกลมหมุนแสดงการโหลดข้อมูล)
สำหรับการตั้งค่าของ systemsetup และ NVRAM ให้เปลี่ยนค่าจาก x86_64 เป็น i386 หากต้องการคืนค่าปริยาย สำหรับคำสั่ง systemsetup ให้เปลี่ยนค่าเป็น default สำหรับ NVRAM ให้ทำการ Reset PRAM ในขณะที่บูตเครื่อง กดปุ่ม command, option, P และ R บนแป้นพิมพ์ ค้างไว้จนขึ้นหน้าจอสีเทา แล้วเครื่องจะดับไปแล้วบูตขึ้นมาใหม่ด้วยเสียง Chime
อ้างอิง
- Mac OS X: 64-bit kernel frequently asked questions
- Mac OS X v10.6: Macs that use the 64-bit kernel
- Mac OS X v10.6: Starting up with the 32-bit or 64-bit kernel
-
http://twitter.com/golilabank ❤ Thanapol Limarun ❤
-
http://www.facebook.com/jackthelad Vivid Charoenmetheewat
-
http://www.facebook.com/profile.php?id=1513856893 Maximize Sa-pam
-
http://ezybzy.info ezy
-
http://www.facebook.com/profile.php?id=1513856893 Maximize Sa-pam
-
http://ezybzy.info ezy
-
http://ezybzy.info ezy
-
http://www.facebook.com/people/reiyw-mi-di-chi-fech-bukh/100000390139183 เรียว ไม่ได้ใช้เฟชบุ๊ค
-
http://ezybzy.info ezy
-
http://www.facebook.com/profile.php?id=1513856893 Maximize Sa-pam
-
http://www.facebook.com/atikran พระครูสมุห์จิรพันธ์ จิรพนฺธโว
-
http://www.facebook.com/tanasap Tanasap Phaojumroon
-
http://ezybzy.info ezy
-
http://www.facebook.com/tanasap Tanasap Phaojumroon
-
http://www.facebook.com/profile.php?id=100000529343971 Narit Panichpol
-
http://www.facebook.com/profile.php?id=841174143 เรียว ชีวิตทดลอง
-
http://www.facebook.com/people/Puchong-Suwannit/1282819169 Puchong Suwannit





