ยูนิกซ์

ยูนิกซ์ (Unix แต่ชื่อตามเครื่องหมายการค้าคือ UNIX) เป็นระบบปฏิบัติการคอมพิวเตอร์แบบหลายงาน หลายผู้ใช้ ที่เริ่มพัฒนาโดยกลุ่มพนักงานของห้องปฏิบัติการ AT&T Bell Labs โดยกลุ่มนักพัฒนาที่เป็นที่รู้จัก คือ Ken Thompson, Dennis Ritchie และ Douglas McIlroy

ประวัติ

ในทศวรรษที่ 60 สถาบันเทคโนโลยีแมสซาชูเซตส์ (MIT) , AT&T Bell Labs และบริษัท General Electric ได้ร่วมมือกันวิจัยระบบปฏิบัติการที่ชื่อว่า Multics (ย่อมาจาก Multiplexed Information and Computing Service) โดยมีจุดมุ่งหมายเพื่อทำงานบนเครื่องเมนเฟรมรุ่น GE-645 แต่ภายหลัง AT&T ได้ถอนตัวออกจากโครงการนี้
Ken Thompson ซึ่งเป็นหนึ่งในทีมพัฒนาในขณะนั้น ได้เขียนเกมบนเครื่อง GE-645 ชื่อว่าเกม Space Travel และพบปัญหาว่าเกมทำงานได้ช้ากว่าที่ควร เขาจึงย้ายมาเขียนเกมใหม่บนเครื่อง PDP-7 ของบริษัท DEC แทนด้วยภาษาแอสเซมบลี โดยความช่วยเหลือของ Dennis Ritchie ประสบการณ์เหล่านี้ทำให้ Thompson หันมาพัฒนาระบบปฏิบัติการบนเครื่อง PDP-7
ระบบปฏิบัติการนี้มีชื่อว่า UNICS ย่อมาจาก Uniplexed Information and Computing System เนื่องจากว่าการออกเสียงสามารถสะกดได้หลายแบบ และพบปัญหาชื่อใกล้เคียงกับ Multics ภายหลังจึงเปลี่ยนชื่อเป็น Unix
การพัฒนายูนิกซ์ในช่วงนี้ยังไม่ได้รับความสนับสนุนด้านการเงินจาก Bell Labs เมื่อระบบพัฒนามากขึ้น Thompson และ Ritchie จึงสัญญาว่าจะเพิ่มความสามารถในการประมวลผลคำ (Word Processing) บนเครื่อง PDP-11/20 และเริ่มได้รับการตอบรับจาก Bell Labs ในปีค.ศ. 1970 ระบบปฏิบัติการยูนิกซ์จึงได้รับการเรียกชื่ออย่างเป็นทางการ โปรแกรมประมวลผลคำมีชื่อว่า roff และหนังสือ UNIX Programmer's Manual ตีพิมพ์ครั้งแรกวันที่ 3 พฤศจิกายน ค.ศ. 1987
ค.ศ. 1973 ได้เขียนยูนิกซ์ขึ้นมาใหม่ด้วยภาษาซีใช้ได้ทั้งเครื่องคอมพิวเตอร์ส่วนบุคคล มินิคอมพิวเตอร์และเมนเฟรมคอมพิวเตอร์ สามารถทำงานได้หลายงานพร้อมกัน ดังนั้น ยูนิกส์จึงใช้ได้กับเครื่องที่เชื่อมโยงและต่อกับปลายทางได้หลายเครื่องพร้อมกัน ลักษณะการติดต่อกับผู้ใช้เป็นทั้งแบบ Command-line และ GUI ทำให้สะดวกต่อการนำยูนิกซ์ไปทำงานบนเครื่องชนิดอื่นมากขึ้น ทาง AT&T ได้เผยแพร่ยูนิกซ์ไปยังมหาวิทยาลัย และหน่วยงานต่างๆ ของรัฐบาล โดยสัญญาการใช้งานเปิดเผยซอร์สโค้ด ยกเว้นเคอร์เนลส่วนที่เขียนด้วยภาษาแอสเซมบลี
ยูนิกซ์เวอร์ชัน 4,5 และ 6 ออกในค.ศ. 1975 ได้เพิ่มคุณสมบัติ pipe เข้ามา ยูนิกซ์เวอร์ชัน 7 ซึ่งเป็นเวอร์ชันสุดท้ายที่พัฒนาแบบการวิจัย ออกในค.ศ. 1979 ยูนิกซ์เวอร์ชัน 8,9 และ 10 ออกมาในภายหลังในทศวรรษที่ 80 ในวงจำกัดเฉพาะมหาวิทยาลัยบางแห่งเท่านั้น และเป็นต้นกำเนิดของระบบปฏิบัติการ Plan 9
ค.ศ. 1982 AT&T นำยูนิกซ์ 7 มาพัฒนาและออกขายในชื่อ Unix System III แต่บริษัทลูกของ AT&T ชื่อว่า Western Electric ยังคงนำยูนิกซ์รุ่นเก่ามาขายอยู่เช่นกัน เพื่อยุติความสับสนทางด้านชื่อ AT&T จึงรวมการพัฒนาทั้งหมดจากบริษัทและมหาวิทยาลัยต่างๆใน Unix System V ซึ่งมีโปรแกรมอย่าง vi ที่พัฒนาโดย Berkeley Software Distribution (BSD) จากมหาวิทยาลัยแคลิฟอร์เนีย เบิร์กลีย์ รวมอยู่ด้วย ยูนิกซ์รุ่นนี้สามารถทำงานได้บนเครื่อง VAX ของบริษัท DEC
ยูนิกซ์รุ่นที่เป็นการค้าไม่เปิดเผยซอร์สโค้ดอีกต่อไป ทางมหาวิทยาลัยแคลิฟอร์เนีย เบิร์กลีย์ จึงพัฒนายูนิกซ์ของตัวเองต่อเพื่อเป็นทางเลือกกับ System V การพัฒนาที่สำคัญที่สุดคือเพิ่มการสนับสนุนโพรโทคอลสำหรับเครือข่าย TCP/IP เข้ามา
บริษัทอื่นๆ เริ่มพัฒนายูนิกซ์บนเครื่องคอมพิวเตอร์ระบบของตนเอง โดยส่วนมากใช้ยูนิกซ์ที่ซื้อสัญญามาจาก System V แต่บางบริษัทเลือกพัฒนาจาก BSD แทน หนึ่งในทีมพัฒนาของ BSD คือ Bill Joy มีส่วนในการสร้าง SunOS (ปัจจุบันคือ โซลาริส) ของบริษัทซัน ไมโครซิสเต็มส์
ค.ศ. 1981 ทีมพัฒนา BSD ได้ออกจากมหาวิทยาลัยและก่อตั้งบริษัท Berkeley Software Design, Inc (BSDI) เป็นบริษัทแรกที่นำ BSD มาขายในเชิงการค้า ในภายหลังเป็นต้นกำเนิดของระบบปฏิบัติการ FreeBSD, OpenBSD และ NetBSD
AT&T ยังคงพัฒนาความสามารถต่างๆ เข้าสู่ยูนิกซ์ System V และรวมเอา Xenix (ยูนิกซ์ของบริษัทไมโครซอฟท์) , BSD และ SunOS เข้ามารวมใน System V Release 4 (SVR4) เพื่อเป็นผลิตภัณฑ์หนึ่งเดียวสำหรับลูกค้า ซึ่งเพิ่มราคาขึ้นอีกมาก
หลังจากนั้นไม่นาน AT&T ขายสิทธิ์ในการถือครองยูนิกซ์ให้กับบริษัทโนเวลล์ และโนเวลเองได้สร้างยูนิกซ์ของตัวเองที่ชื่อ UnixWare ซึ่งพัฒนามาจากระบบปฏิบัติการ NetWare เพื่อแข่งกับระบบปฏิบัติการวินโดวส์เอ็นทีของไมโครซอฟท์
ค.ศ. 1995 โนเวลขายส่วนต่างๆ ของยูนิกซ์ให้กับบริษัท Santa Cruz Operation (SCO) โดยโนเวลยังถือลิขสิทธิ์ของยูนิกซ์ไว้ ค.ศ. 2000 SCO ขายสิทธิ์ส่วนของตนเองให้กับบริษัท Caldera ซึ่งเปลี่ยนชื่อภายหลังเป็น SCO Group ซึ่งเป็นสาเหตุในการดำเนินคดีละเมิดลิขสิทธิ์กับลินุกซ์