Training

Linux คืออะไร?

06 Jun 2011

บทความนี้เป็นบทความที่แนะนำให้คุณรู้จักกับ Linux และองค์ประกอบหลักๆภายใน เพื่อเป็นแนวทางในการศึกษา Linux ต่อไป

Linux คืออะไร?

Linux คือระบบปฏิบัติการคอมพิวเตอร์ (Operating System) ชนิดหนึ่ง ซึ่งทำให้คอมพิวเตอร์ของเราสามารถใช้งานได้ หากไม่มีระบบปฎิบัติการแล้วคอมพิวเตอร์ก็เป็นเพียงแค่ชิ้นส่วนอุปกรณ์ (Hardware) เท่านั้น อย่างไรก็ตาม Linux นั้นแท้จริงเป็นเพียงแค่ Kernel ซึ่งทำหน้าที่ในการควบคุมชิ้นส่วนอุปกรณ์ต่างๆอาทิเช่น ควบคุมการประมวลผลใน CPU, อ่านเขียนไฟล์จากฮาร์ดดิสก์, ควบคุมจัดสรร Memory เป็นต้น ลำพัง Kernel เพียงอย่างเดียวไม่สามารถทำงานได้ เพราะ Kernel เป็นเพียงแค่องค์ประกอบหนึ่งของระบบปฏิบัติการเท่านั้น (แม้ว่าจะเป็นส่วนหลักก็ตาม) รูปที่ 1 แสดงองค์ประกอบหลักๆของระบบปฏิบัติการคอมพิวเตอร์ ระบบปฏิบัติการยังต้องการองค์ประกอบอื่นๆอีก ซึ่งองค์ประกอบอื่นๆที่ว่านี้ก็คือ Software Components ที่จะมาทำงานร่วมกับ Kernel ให้เป็นระบบปฏิบัติการที่สมบูรณ์แบบนั่นเอง อาทิเช่น ฟอนต์, ไลบรารี่กราฟฟิก, ส่วนควบคุมเสียง, ตัวจัดการเน็ตเวิร์ค เป็นต้น แต่เรามักเรียกระบบปฏิบัติการที่ใช้ Linux เป็น kernel ว่า "ระบบปฏิบัติการ Linux" Linux Kernel นั้นเป็นโอเพนซอร์สโปรเจคและ Components อื่นๆที่ประกอบกันขึ้นเป็นระบบปฏิบัติการ Linux ก็เป็นโอเพนซอร์สโปรเจคเช่นกัน นั่นหมายความว่าเราสามารถนำเอาองค์ประกอบต่างๆมารวมกัน, ดัดแปลง, และแก้ไขได้ตามใจชอบหรือตามแต่ความต้องการของการใช้งานนั้นๆได้ (แต่จะต้องเป็นไปตามเขื่อนไขของ Open Source License) จึงจะเห็นได้ว่ามีระบบปฏิบัติการ Linux แบบต่างๆมากมายอาทิเช่น Red Hat Linux, Ubuntu Linux, Debian Linux, Slackware Linux เป็นต้น ผมจะกล่าวถึงระบบปฏิบัติการ Linux แบบต่างๆอีกครั้งในหัวข้อ "Linux Distribution คืออะไร?? จากนี้ไปคำว่า Linux จะหมายถึงระบบปฏิบัติการ Linux หากพูดถึง Kernel ก็จะมีการระบุลงไปที่ชัดเจนเลยว่า Linux Kernel

รูปที่ 1: องค์ประกอบหลักของระบบปฏิบัติการ

History

ก่อนหน้าที่จะมี Linux Kernel ได้มีระบบปฏิบัติการ Unix ถือกำเนิดขึ้นก่อน Unix ถูกพัฒนาขึ้นที่ AT&T's Bell Lab โดย Ken Thomson, Dennis Ritchie, Douglas McIlroy, และ Joe Ossanna ในปีคศ. 1969 ด้วยภาษา Assembly ต่อมาในปีคศ. 1973 Unix ได้ถูกพัฒนาขึ้นมาใหม่ด้วยภาษา C ซึ่งคิดค้นโดย Dennis Ritchie และมีการแจกจ่ายซอร์สโค้ด Unix ไปยังมหาวิทยาลัยและนักพัฒนาทั่วโลก จึงมี Unix รูปแบบต่างๆ (Unix-variant) เกิดขึ้นในเวลาต่อมาอาทิเช่น BSD Unix, SunOS (Solaris) เป็นต้น ในปี 1983 บริษัท AT&T เริ่มขายไลเซนส์การใช้งาน Unix ของตัวเองในชื่อ System V Unix และได้มีการเรียกเก็บค่าไลเซนส์การใช้งานจาก Unix ในรูปแบบอื่นอีกด้วย และในปีคศ. 1983 นั้นเอง Richard M. Stallman จากสถาบัน MIT ได้จัดตั้งโปรเจค GNU (GNU's Not Unix) ขึ้นเพื่อที่จะสร้างระบบปฏิบัติการแบบ Unix หรือ Unix-like ขึ้นมาใหม่ และเป็นโปรเจคแบบโอเพนซอร์สเพื่อหวังที่จะให้เป็นทางเลือก ประมาณช่วงต้นทศวรรษที่ 90 องค์ประกอบหลักๆของระบบปฏิบัติการ GNU ก็ได้เขียนขึ้นจนเกือบเสร็จเหลือเพียงอย่างเดียวเท่านั้นคือตัว Kernel ในเวลานั้น Linus Torvalds นักศึกษาสาขาวิทยาศาสตร์คอมพิวเตอร์ได้พัฒนา Kernel ขึ้นมาใหม่โดยมีแรงบันดาลใจจากระบบปฏิบัติการ Minix (Unix-like) ของศาตราจารย์ Adrew Tannenbaum ที่ใช้ในวิชาเรียน และให้ชื่อ Kernel ใหม่นี้ว่า Linux (Linus's Minix) ระบบปฏิบัติการ Linux จึงถือกำเนิดขึ้นโดยรวบรวม Components ต่างๆจากโปรเจค GNU* และโปรเจคอื่นๆผนวกรวมเข้ากับ Linux Kernel นอกจากนี้ Linus Torvalds ยังได้เลือกรูปนกเพนกวินเป็นเหมือนสัญลักษณ์ของ Linux Kernel ด้วย ดังจะเห็นได้จากเว็บไซต์, หนังสือ, หรือเอกสารต่างๆมักจะมีรูปนกเพนกวินอยู่เมื่อเกี่ยวข้องกับ Linux รูปที่ 2 แสดงรูปนกเพนกวิน (Tux) ที่เรียกได้ว่าเป็นสัญลักษณ์อย่างเป็นทางการของ Linux ซึ่งถูกออกแบบโดย Larry Ewing ในส่วนของ GNU จะใช้เป็นสัญลักษณ์รูป gnu (เป็นสัตว์ชนิดหนึ่ง) ดังแสดงในรูปที่ 3

*GNU มี Kernel ของตัวเองนะครับชื่อ GNU Hurd เพียงแต่ความสมบูรณ์แบบและความนิยมสู้ Linux Kernel ไม่ได้

รูปที่ 2: Tux, สัญลักษณ์อย่างเป็นทางการของ Linux
รูปที่ 3: GNU Logo, สัญลักษณ์ของโปรเจค GNU

Books By Me

JavaScript Programming Guide book cover

JavaScript Programming Guide
Thai language
Kontentblue Publishing

About This Site

I use this site to share my knowledge in form of articles. I also use it as an experimental space, trying and testing things. If you have any problems viewing this site, please tell me.

→ More about me

→ Contact me

→ Me on facebook

Creative Commons Attribution License

creative commons logo

This license lets you distribute, remix, tweak my articles, even commercially, as long as you credit me for the original creation.

ด้วยสัญญาอนุญาตินี้ คุณสามารถเผยแพร่ ดัดแปลง แก้ไขและนำบทความของผมไปใช้ แม้ในเชิงธุรกิจ ตราบใดที่คุณได้อ้างอิงกลับมาและให้เครดิตกับผม