GNU Project

โครงการ GNU (GNU Project)

ได้ถูกริเริ่มจากนักวิจัยจาก M.I.T ชื่อนาย Richard Matthew Stallman ซึ่งถูกเรียกขานว่า RMS เนื่องจากระบบปฏิบัติการ UNIX ไม่ได้ฟรีอีกต่อไปแล้ว โครงการ GNU นี้จึงได้เริ่มต้นขึ้นตั้งแต่เดือนกันยายน ปี ค.ศ. 1984 โดยวัตถุประสงค์หลักของโครงการนี้คือการพยายามเริ่มต้นสร้างแกนหลักของระบบปฏิบัติการ (Core OS) หรือเคอร์เนล (Kernel) โดยเรียกกันว่า HURD รวมถึงการสร้างกลุ่มโปรแกรมเครื่องมือต่างๆ เช่น C compiler (gcc), make (GNU make), Emacs, C library (glibc), และ coreutils (เช่นคำสั่ง ls, cp เป็นต้น) ใหม่ทั้งหมดเพื่อให้ทุกคนสามารถนำไปใช้ได้ฟรีเพื่อทดแทนระบบปฏิบัติการ UNIX แต่อย่างไรก็ตามการพัฒนาตัว HURD ก็ยังไม่เป็นไปตามแผนจำเป็นต้องหยุดกลางคัน นอกจากนั้น Stallman ได้ก่อตั้งองค์กรซอฟท์แวร์เสรี (Free Software Foundation) ซึ่งเป็นองค์กรที่ทำหน้าที่ให้การสนับสนุนการพัฒนาซอฟท์แวร์เสรี ที่มีบทบาทมากในปัจจุบันนี้

ระบบปฏิบัติการที่มีบทบาทในการกระตุ้นวงการพัฒนา ซึ่งได้รับอิทธิพลมาจากโครงการ GNU คือระบบปฏิบัติการ MINIX ย่อมาจาก “Minimal UNIX” ภายใต้พื้นฐานสถาปัตยกรรม Microkernel ซึ่งถูกพัฒนาโดยนาย Andrew S. Tanenbaum ในปี ค.ศ. 1987 และเขาเองก็ได้เขียนหนังสือชื่อว่า “Operating Systems: Design and Implementation” ร่วมกับนาย Albert Woodhull เพื่อต้องการที่จะเผยแพร่แนวทางการออกแบบและพัฒนาระบบปฏิบัติการให้กับวงการด้านนี้

The GNU Core Utilities

กำเนิด Linux

จนกระทั่งปี ค.ศ. 1991 นักศึกษาสาขาวิทยาการคอมพิวเตอร์ มหาวิทยาลัย Helsinki ประเทศฟินแลนด์ ชื่อนาย Linus Torvalds ได้ซื้อเครื่องคอมพิวเตอร์ชนิดตั้งโต๊ะของบริษัท IBM รุ่น Intel 80386 เพื่อใช้เป็นเครื่องฯสำหรับการล๊อกอินเพื่อเข้าไปใช้งานะรบบในห้องแล๊ปของมหาวิทยาลัย ซึ่งในขณะนั้นระบบปฏิบัติการ MS-DOS และ MINIX จะเป็นระบบปฏิบัติการหลักในเครื่องคอมพิวเตอร์ทั่วไป เขาจึงได้มีแนวคิดที่จะสร้างระบบปฏิบัติการแบบเปิดและฟรี โดยมีพื้นฐานคล้ายระบบปฏิบัติการ UNIX (UNIX-like) ในช่วงแรกของการพัฒนาเขาได้พยายามพัฒนาเทอร์มินัล (Terminal Emulator) บนตัวระบบปฏิบัติการ MINIX แต่ก็ติดปัญหาทางด้านเทคนิคอยู่หลายอย่าง เขาจึงได้ตัดสินใจพัฒนาขึ้นเองใหม่ โดยได้ใช้เครื่องมือจากโครงการ GNU ทั้งหมด ไม่ว่าจะเป็น C library, gcc, binutils, fileutils, make, emacs เป็นต้น รวมทั้งการพัฒนา Kernel โดยพยายามพัฒนาโปรแกรมทั้งหมดตามมาตราฐาน POSIX เช่นเดียวกันระบบปฏิบัติการ UNIX จนในที่สุดก็สามารถออกมาได้สำเร็จในชื่อที่ตั้งขึ้นมาว่า “Freax” ซึ่งเป็นการผสมคำจากคำทั้งสามคำคือ Free, Freak และ X และได้เปลี่ยนมาเป็น “Linux” ตามชื่อตัวเขาเอง ทาง Linus Torvalds ก็ได้เปิดเผยโค้ดโปรแกรมของระบบปฏิบัติการทั้งหมดสู่สาธารณะ เพื่อให้นักพัฒนาทั่วโลกช่วยกันปรับปรุงแก้ไข โดยได้ทำการส่งข้อความผ่านกลุ่มผู้ใช้ใน MINIX ด้วยข้อความดังนี้ “I’m doing a (free) operating system (just a hobby, won’t be big and professional like gnu) for 386(486) AT clones.

โดยรุ่นของระบบปฏิบัติการลีนุกซ์ ในเลข Linux 0.01 ยังค่อนข้างมีข้อจำกัดอยู่มาก คือจะสามารถถูกใช้ได้กับเครื่อง Intel 80386 เท่านั้น โดยภายในไฟล์ที่ได้เผยแพร่ออกไปจะประกอบไปด้วย 4 ไฟล์ที่ระบุรายละเอียดดังนี้

  1. linux-0.01.tar.Z - sources to the kernel

  2. bash.Z - compressed bash binary if you want to test it

  3. update.Z - compressed update binary

  4. RELNOTES-0.01

http://www.kernel.org/pub/linux/kernel/Historic/old-versions/RELNOTES-0.01

ในที่สุดการเผยแพร่ในครั้งนี้ก็ได้เกิดการปฏิวัติโดยไม่คาดฝันเพราะมีนักพัฒนาจากทั่วทุกสารทิศจำนวนไม่น้อยที่ได้นำระบบปฏิบัติการนี้ไปพัฒนาจนเกิดความพยายามร่วมกันในการพัฒนาระบบปฏิบัติการลีนุกซ์อย่างจริงจังเป็นประวัติการณ์ แม้ว่าตัวนาย Linus Torvalds เองได้ถูกนาย Andrew Tanenbaum ผู้สร้าง MINIX ดูถูกไว้ว่าระบบปฏิบัติการลีนุกซ์จะล้าสมัยและจบลงก่อนปี ค.ศ. 1992 แต่ในที่สุดก็ได้พิสูจน์ว่าระบบปฏิบัติการลีนุกซ์ของเขานั้นสามารถยืนหยัดมาได้จนถึงวันนี้ ด้วยจุดแข็งของ Linux Kernel ของนาย Linus Torvalds และ GNU applications ของนาย Richard Stallman จนนิยมเรียกว่า GNU/Linux (อ่านว่า กะ-นู-สแลส-ลีนุกซ์) ซึ่งนาย Linus Torvalds ก็ยังคงเป็นผู้ควบคุมจัดการ (Supervisor) การพัฒนา Linux Kernel และดูแลองค์กร Linux Foundation ต่อไป

Last updated

Assoc. Prof. Wiroon Sriborrirux, Founder of Advance Innovation Center (AIC) and Bangsaen Design House (BDH), Electrical Engineering Department, Faculty of Engineering, Burapha University