skip to content
xiengperm logo xiengperm
โพลารอยด์สามใบเรียงกันแสดงเส้นทางของ Linux — Linus Torvalds ปี 1991, Tux มาสคอต และยานสำรวจดาวอังคาร พร้อมหัวเรื่อง 'แค่งานอดิเรก'

Linux: ระบบปฏิบัติการที่เริ่มจาก 'แค่งานอดิเรก'

/ 5 min read

Table of Contents

วันที่ 25 สิงหาคม 1991 มีโพสต์เล็กๆ โผล่ขึ้นในกลุ่มข่าว Usenet ชื่อ comp.os.minix คนโพสต์เป็นนักศึกษาฟินแลนด์อายุ 21 ปี ข้อความขึ้นต้นว่า:

“Hello everybody out there using minix - I’m doing a (free) operating system (just a hobby, won’t be big and professional like gnu) for 386(486) AT clones.”

แปลคร่าวๆ คือ “หวัดดีครับทุกคน ผมกำลังทำ OS ฟรีตัวนึงนะ — แค่งานอดิเรก ไม่ได้คาดหวังว่าจะใหญ่หรือจริงจังเหมือน gnu หรอก”

วันนี้ ทุกครั้งที่คุณเปิด Google ส่ง LINE ดู YouTube กดสั่งของใน Shopee ขึ้นเครื่อง Airbus หรือถอนเงินที่ตู้ ATM — มีโอกาสเกือบ 100% ที่เบื้องหลังเป็น Linux ทั้งหมด

OS ที่คนทำบอกว่า “won’t be big” กลายเป็นสิ่งที่ใหญ่ที่สุดในประวัติศาสตร์ซอฟต์แวร์

ภาพจำลองโพสต์ Usenet ของ Linus Torvalds ในกลุ่มข่าว comp.os.minix วันที่ 25 สิงหาคม 1991 พร้อมประโยค 'just a hobby, won't be big' ไฮไลต์สีแดง

ภาพจำลองโพสต์ต้นฉบับ — ข้อความจริงของ Linus Torvalds ที่ส่งเข้า comp.os.minix เมื่อ 25 สิงหาคม 1991

Linux คืออะไรกันแน่?

ก่อนเล่าต่อ ขอเคลียร์นิดนึง — เวลาคนพูดว่า “Linux” จริงๆ แล้วมีสองความหมายซ้อนกัน

อย่างแรกคือ kernel หรือแกนของระบบปฏิบัติการ ก้อนโค้ดที่คุยกับฮาร์ดแวร์โดยตรง อันนี้แหละที่ Linus Torvalds เขียนเองตั้งแต่ปี 1991 และยังพัฒนาต่อเนื่องมาจนถึงทุกวันนี้

อย่างที่สองคือ distribution หรือ “distro” — ระบบปฏิบัติการเต็มตัวที่เอา Linux kernel มาประกอบกับเครื่องมือต่างๆ จาก GNU project จนกลายเป็น Ubuntu, Fedora, Debian, Arch ฯลฯ ที่เราใช้กันจริง

ในโพสต์นี้ผมเรียกรวมๆ ว่า “Linux” แต่ตัวเอกของเรื่องคือ kernel ครับ

เด็กฟินแลนด์ที่ได้คอม 386 มาเครื่องนึง

Linus Torvalds เกิดที่เฮลซิงกิเมื่อปี 1969 ในครอบครัวนักหนังสือพิมพ์ฝ่ายซ้าย ชื่อ “Linus” ตามทั้ง Linus Pauling นักเคมีรางวัลโนเบล และ Linus van Pelt ตัวการ์ตูนใน Peanuts ที่ลากผ้าห่มไปไหนมาไหน — ตัวเขาเองเคยพูดติดตลกว่าตัวเองเป็น “ครึ่งโนเบล ครึ่งเด็กลากผ้าห่ม”

เขาเข้ามหาวิทยาลัยเฮลซิงกิปี 1988 เรียนวิทยาการคอมพิวเตอร์ ตอนนั้นในชั้นเรียนใช้ระบบปฏิบัติการชื่อ MINIX ของอาจารย์ Andrew Tanenbaum — เป็น Unix แบบจิ๋วๆ ที่ทำมาเพื่อสอนเด็ก ใช้ได้แต่จะแก้ก็ทำไม่ได้ เพราะ license ห้าม

วันที่ 5 มกราคม 1991 Linus ซื้อคอมเครื่องใหม่เป็น PC clone ที่ใช้ชิป Intel 80386 ราคาถูกๆ เครื่องนึง เขาอยากศึกษาความสามารถของ CPU 386 อยากลองเขียน task switcher อยากลองอ่านดิสก์ตรงๆ จากนั้นมันก็ค่อยๆ บานออก จาก task switcher เป็นโปรแกรมจำลอง terminal เป็นโปรแกรมที่อ่านไฟล์ได้ เขียนไฟล์ได้ จัดการ process ได้ — กลายเป็น kernel โดยที่ตัวเขาเองยังไม่รู้ตัว

แปดเดือนต่อมาก็เกิดโพสต์ Usenet ที่ผมยกขึ้นมาตอนต้น

Linus Torvalds พูดที่งาน LinuxCon Europe ปี 2014

ภาพ: Krd / Wikimedia Commons (CC BY-SA 4.0) — Linus Torvalds ที่ LinuxCon Europe 2014

ปลาเล็กในบ่อปลาใหญ่

ตอน Linus ปล่อยซอร์สโค้ดของ Linux 0.01 ในเดือนกันยายน 1991 มันยังไม่มีอะไรเลย — boot ได้ รัน bash ได้ คอมไพล์ด้วย gcc ได้ จบ ในจดหมายปะหน้าเขาเขียนเองว่า “do you pine for the nice days of minix-1.1, when men were men and wrote their own device drivers?” — ถ้าใช่ ลองอันนี้ดู

มันไม่ได้ขายอะไรนอกจาก “เอามาเล่นต่อได้” และเด็กๆ ทั่วโลกที่มี 386 อยู่ก็เริ่มเล่นจริงๆ อีเมลแจ้งบั๊ก แจ้ง patch แจ้งฟีเจอร์ใหม่หลั่งไหลเข้า Helsinki จากออสเตรเลีย จากอเมริกา จากเยอรมนี Linus รวบรวม patch ปล่อยเวอร์ชันใหม่ ปล่อยอีก ปล่อยอีก เร็วจนคนตามไม่ทัน

แต่จุดที่ทุกอย่างเปลี่ยนจริงๆ คือเดือนกุมภาพันธ์ 1992

ตอนแรก Linus ใส่ license ของตัวเองที่ห้ามขายเชิงพาณิชย์ไว้ พอ Linux เริ่มมีคนใช้เยอะขึ้น เขาก็ตัดสินใจเปลี่ยนไปใช้ GNU General Public License (GPL) ของ Richard Stallman แทน — license ที่บอกว่าใครก็เอาไปใช้ได้ เอาไปขายก็ได้ แต่ถ้าแก้แล้วต้องเปิดซอร์สกลับคืนสู่ชุมชน

ตอนหลัง Linus เคยพูดในสารคดี Revolution OS (2001) ว่า “การตัดสินใจเลือก GPL คือสิ่งที่ดีที่สุดที่ผมเคยทำ” เพราะมันเปลี่ยน Linux จาก “โปรเจกต์ของ Linus” ให้กลายเป็น “ของทุกคน” — ใครๆ ก็อยากช่วย เพราะรู้ว่าจะไม่มีใครเอาไปฮุบเป็นของตัวเอง

เด็กกับครู: ดีเบตที่กลายเป็นตำนาน

เดือนเดียวกันนั้น Andrew Tanenbaum — อาจารย์เจ้าของ MINIX ที่ Linus เคยใช้เรียน — โพสต์บทความชื่อ “Linux is obsolete” ลง comp.os.minix

ใจความคือ Linux ออกแบบผิด — ใช้ monolithic kernel (รวมทุกอย่างไว้ในก้อนเดียว) ในยุคที่ทุกคนหันไป microkernel กันหมดแล้ว แถมยังเขียนโยงกับ 386 จนพอร์ตไปสถาปัตยกรรมอื่นไม่ได้ Tanenbaum ฟันธงว่าโปรเจกต์นี้ “obsolete” ตั้งแต่เกิด

Linus ตอบกลับในสไตล์ของตัวเอง — สั้น แสบ ไม่เกรงใจ:

“Your job is being a professor and researcher: That’s one hell of a good excuse for some of the brain-damages of minix.”

(งานคุณคือเป็นอาจารย์กับนักวิจัย — นั่นเป็นข้ออ้างที่ดีมากสำหรับหลายๆ จุดที่ minix สมองพังแบบสุดๆ)

ดีเบตยาวเป็นสัปดาห์ คนทั้งวงการตามอ่าน อาจารย์มหาวิทยาลัยกับเด็กฟินแลนด์โต้กันเรื่องสถาปัตยกรรม OS หน้าฟอรัม ผ่านมา 30 กว่าปี ดูเหมือน Linus จะถูก — Linux ทุกวันนี้รันบน CPU ทุกแบบที่นึกออก ตั้งแต่นาฬิกาข้อมือไปจนถึง supercomputer แต่ก็ยังเป็น monolithic kernel อยู่นั่นแหละ

Andrew Tanenbaum นักวิทยาการคอมพิวเตอร์ชาวดัตช์ผู้สร้าง MINIX

ภาพ: GerardM / Wikimedia Commons (CC BY-SA 2.0) — Andrew S. Tanenbaum ผู้เขียน MINIX และคู่ดีเบตของ Linus ในปี 1992

Linux 1.0 และวันที่บริษัทใหญ่เริ่มมอง

มีนาคม 1994 Linux ออกเวอร์ชัน 1.0 อย่างเป็นทางการ — ในห้องบรรยายที่มหาวิทยาลัยเฮลซิงกิ มีพิธีเล็กๆ Linus กดคอมไพล์ครั้งสุดท้ายต่อหน้าคน 30-40 คน ปีเดียวกันนั้น Red Hat กับ SUSE ออก distribution 1.0 ของตัวเองเป็นครั้งแรก

โลโก้ของ distribution Linux หลักๆ ห้าค่าย — Ubuntu, Fedora, Debian, Arch และ Red Hat

โลโก้ของ Ubuntu / Fedora / Debian / Arch / Red Hat — ทรัพย์สินของแต่ละโปรเจกต์ ใช้เพื่ออ้างอิงเชิงบรรณาธิการ

ครึ่งหลังของยุค 90s โลกเริ่มเห็นว่า Linux ไม่ใช่ของเล่น

  • 1996 — เพนกวินชื่อ Tux กลายเป็นมาสคอตอย่างเป็นทางการ ตามคำของ Linus ที่บอกว่า “ผมเคยถูกเพนกวินกัดที่ออสเตรเลีย” Tux วาดโดย Larry Ewing ใน GIMP ปล่อยให้ใครเอาไปใช้ก็ได้
  • 1998 — Netscape ประกาศเปิดซอร์ส (ที่ตอนหลังกลายเป็น Firefox) IBM กับ Oracle ประกาศจะรองรับ Linux อย่างจริงจัง Wall Street Journal ขึ้นปกเรื่อง Open Source
  • 2000 — IBM ทุ่มเงิน 1 พันล้านดอลลาร์ลงในการพัฒนา Linux เป็นการประกาศชัดว่า “บริษัทเก่าแก่ที่สุดของวงการ IT เลือกข้างแล้ว”

ระหว่างนั้น Microsoft กลัวมาก ในเอกสารหลุดที่เรียกว่า “Halloween Documents” (1998) วิศวกร Microsoft เขียนภายในว่า Linux เป็น “long-term threat” ที่อันตรายกว่า Netscape ทุกอย่างรวมกัน Steve Ballmer ถึงขั้นเรียก Linux ว่า “cancer” ในปี 2001

ตอนนี้ Microsoft เป็นหนึ่งในผู้สนับสนุน Linux Foundation รายใหญ่ที่สุด แล้วก็เอา Linux ไปฝังใน Windows ผ่าน WSL ครับ — โลกหมุนได้น่าสนใจดี

Steve Ballmer ซีอีโอของ Microsoft กำลังพูดบนเวทีงาน MIX08 ปี 2008

ภาพ: D. Begley / Wikimedia Commons (CC BY 2.0) — Steve Ballmer บนเวที MIX08 (2008) ในยุคที่เขาเรียก Linux ว่า “cancer”

วิหารกับตลาดสด: ทำไมโมเดลของ Linux ถึงชนะ

ปี 1997 Eric S. Raymond เขียน essay ชื่อ “The Cathedral and the Bazaar” ที่อธิบายว่าทำไม Linux ถึงรอด

Cathedral (วิหาร) คือโมเดลพัฒนาซอฟต์แวร์แบบดั้งเดิม — กลุ่มเล็กๆ ของผู้เชี่ยวชาญทำงานเงียบๆ ปล่อยรุ่นเสร็จเมื่อทุกอย่างสมบูรณ์ เหมือนพระสร้างวิหาร

Bazaar (ตลาดสด) คือสิ่งที่ Linus ทำ — ปล่อยรุ่นใหม่บ่อยมาก เปิดให้ทุกคนเห็นทุกอย่าง รับ patch จากใครก็ได้ที่เขียนเป็น มันดูวุ่นวาย ดูเหมือนจะพังตลอดเวลา แต่จริงๆ แล้วมันคือกลไกของวิวัฒนาการ — บั๊กถูกเจอเร็วเพราะ “given enough eyeballs, all bugs are shallow”

โมเดลนี้ยุคแรกๆ คนหัวเราะกันทั้งวงการ — ถามว่าจะมีบริษัทไหนเอาซอฟต์แวร์ที่ “อาสาสมัครหลายร้อยคนเขียนกันคนละนิด” มาใช้รันธนาคาร? คำตอบทุกวันนี้คือ: ทุกธนาคารที่คุณรู้จัก

ส่วนที่ยาก: เมื่อ Linus เป็นคนมีปาก

ถ้าจะเล่าเรื่อง Linux ให้ตรงไปตรงมา ต้องเล่าเรื่องนี้ด้วย — Linus มีชื่อเสียงเรื่อง “ปากร้าย” ในเมลลิ่งลิสต์ของ kernel มาหลายสิบปี

มีหลายครั้งที่เขาด่านักพัฒนาเป็นภาษาที่หยาบมากในที่สาธารณะ บางคนมองว่ามันคือ “honesty” บางคนบอกว่ามันคือ toxic culture ที่กีดกันคนใหม่ — โดยเฉพาะผู้หญิงและคนกลุ่มน้อย — ออกจากการมีส่วนร่วม

จุดเปลี่ยนคือกันยายน 2018 เมื่อ Linus หยุดงาน kernel ชั่วคราวเป็นครั้งแรกในชีวิต เขียนจดหมายขอโทษต่อสาธารณะ ใจความว่า “ผมจะไปหาความช่วยเหลือเรื่องวิธีที่ผมเข้าใจอารมณ์คนรอบตัว ผมต้องเปลี่ยน” Linux community ออก Code of Conduct ฉบับแรกในเดือนเดียวกัน

หลังจากนั้น Linus กลับมาทำงาน แต่โทนเสียงเปลี่ยนไปชัดเจน — ยังตรงไปตรงมา แต่ไม่เผ็ดเหมือนเดิม ผมว่าตรงนี้น่าสนใจ เพราะมันแสดงว่าแม้คนที่สร้างของยิ่งใหญ่ที่สุดในโลกซอฟต์แวร์ ก็ยังมีจุดที่ต้องเรียนรู้เพิ่มได้ตอนอายุ 50 แล้ว

Linux ทุกวันนี้: ของที่อยู่ทุกที่จนมองไม่เห็น

ลองนับดูว่าวันนี้คุณใช้ Linux ไปกี่ครั้ง:

  • โทรศัพท์ — ถ้าเป็น Android ก็คือ Linux kernel (Android คุมส่วนแบ่งตลาดสมาร์ตโฟนทั่วโลกราว 70% ขึ้น)
  • เซิร์ฟเวอร์เว็บ — เกินกว่า 96% ของเว็บไซต์ Top 1 ล้านอันแรก รันบน Linux
  • คลาวด์ — AWS, Google Cloud, Azure ทั้งหมดข้างในเป็น Linux
  • SupercomputerTOP500 ทั้ง 500 เครื่องของโลก รันบน Linux 100%
  • TV / เครื่องใช้ไฟฟ้า — Smart TV, กล่อง Android TV, router บ้าน
  • รถ — ระบบ infotainment ของรถยนต์สมัยใหม่หลายค่ายเป็น Linux (Automotive Grade Linux)
  • ยานอวกาศ — Perseverance rover ของ NASA ที่ลงดาวอังคารปี 2021 ใช้ Linux
  • เครื่องบิน — ระบบ in-flight entertainment ของหลายสายการบิน
ภาพถ่ายตู้แร็คของ Frontier ซูเปอร์คอมพิวเตอร์ที่ Oak Ridge National Laboratory

ภาพ: OLCF at ORNL / Wikimedia Commons (CC BY 2.0) — Frontier ซูเปอร์คอมพิวเตอร์ exascale ระดับโลก รัน Linux เหมือนเครื่อง TOP500 อีก 499 เครื่องที่เหลือ

ภาพ selfie ของยานสำรวจ Perseverance บนพื้นผิวดาวอังคาร

ภาพ: NASA/JPL-Caltech (สาธารณสมบัติ) — Perseverance rover บนดาวอังคาร ใช้ Linux ในระบบประมวลผลภาพและเฮลิคอปเตอร์ Ingenuity

มีเรื่องที่ตลกดี — Linus เคยให้สัมภาษณ์ว่าตัวเองยังใช้คอมที่บ้านเป็นเครื่องที่เขาประกอบเอง ลง Fedora แล้วใช้ window manager อะไรก็ได้ที่ “ขออย่าให้ขวางทาง” เขาไม่ได้สนใจ desktop Linux เลย เพราะเห็นว่ามันแก้ปัญหาที่ Apple กับ Microsoft แก้ไปแล้ว

ที่ตลกกว่าคือ — Linux ไม่เคยชนะใน desktop จริงๆ แต่ดันชนะที่อื่นทุกที่ ปี 2007 มีคนพูดเล่นว่า “ปีนี้เป็นปีของ Linux desktop!” แล้วก็พูดอย่างนี้ทุกปี ผ่านมาเกือบ 20 ปี desktop ก็ยังไม่ใช่ของ Linux อย่างที่คาด แต่นั่นไม่สำคัญแล้ว เพราะ “เครื่องคอม” ที่คนใช้จริงๆ มันย้ายไปอยู่ในกระเป๋ากางเกงในรูปของมือถือ Android

Linux Foundation และอนาคตที่ไม่มี Linus

ปี 2007 มีการก่อตั้ง Linux Foundation ขึ้นมาเป็นองค์กรไม่แสวงกำไร ดูแลโครงการและจ้าง Linus กับนักพัฒนาหลักให้ทำงาน kernel เต็มเวลา ทุกวันนี้บริษัทใหญ่ที่ส่ง patch เข้า kernel มากที่สุดได้แก่ Intel, Red Hat (IBM), Google, Linaro, Samsung — ไม่ใช่อาสาสมัครในห้องนอนอีกต่อไปแล้ว

Linus ทุกวันนี้อายุ 56 อาศัยอยู่ที่ Portland รัฐ Oregon เขายังเป็น “BDFL” (Benevolent Dictator For Life) ของโปรเจกต์ คือคนสุดท้ายที่ตัดสินใจว่า patch ไหนเข้า kernel หลักได้ แต่จริงๆ เขียนโค้ดเองน้อยมากแล้ว ส่วนใหญ่เวลาไปกับการรีวิว pull request กับเขียน git — ที่เขาเขียนขึ้นมาเองในปี 2005 เพราะหาเครื่องมือ version control ที่ใช้กับ Linux ได้ดีไม่เจอ

วันที่ Linus ไม่อยู่แล้ว Linux จะรอดมั้ย? คำตอบสั้นๆ คือรอด — เพราะมันไม่ใช่ของเขาคนเดียวมานานแล้ว มันเป็นของวิศวกรหลายหมื่นคนที่ส่ง commit เข้ามาใน 30 ปีนี้ และเป็นของบริษัทพันๆ แห่งที่พึ่งมันรันธุรกิจ


เวลาผมไปอ่านเรื่อง Linus กับ Linux กลับมา สิ่งที่ติดในหัวมากที่สุดไม่ใช่ตัวเลข 96% ของเซิร์ฟเวอร์เว็บ หรือ 100% ของ supercomputer ทั่วโลก แต่เป็นภาพของเด็กฟินแลนด์อายุ 21 นั่งเขียนโค้ดในห้องนอนช่วงฤดูหนาว แล้วโพสต์ลงเน็ตว่า “won’t be big” สิ่งที่เขาปล่อยออกมาในปี 1991 มันไม่ใช่แค่ kernel — มันคือไอเดียที่ว่าซอฟต์แวร์ควรเป็นของคนใช้ ไม่ใช่ของเจ้าของ และ 35 ปีต่อมา ไอเดียนั้นก็ยังขับเคลื่อนเกือบทุกอย่างที่เรากดในแต่ละวัน — โทรศัพท์ที่อยู่ในกระเป๋า คลาวด์ที่เก็บรูป รถที่เราขับ แม้แต่ rover ที่อยู่บนดาวอังคาร ผมว่าสิ่งที่น่าทึ่งคือมันไม่ได้ใหญ่เพราะใครจ้างให้ใหญ่ แต่ใหญ่เพราะคนที่ไม่รู้จักกันทั่วโลกตัดสินใจช่วยทำมันต่อ ทีละคน ทีละ commit ติดต่อกันมา 30 กว่าปีไม่ขาดสาย

// ─────

Share this post:

ก๊อปคำบรรยายแล้ว — วางในช่อง Facebook ได้เลย

Related Posts