วันจันทร์ที่ 27 ตุลาคม พ.ศ. 2551

ประวัติระบบปฎิบัติการ ยูนิกซ์ (Unix )

ประวัติระบบปฎิบัติการ ยูนิกซ์ (Unix )
..........ในทศวรรษที่ 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 พฤศจิกายน ค.ศ. 1971
..........ค.ศ. 1973 ได้เขียนยูนิกซ์ขึ้นมาใหม่ด้วยภาษาซี ทำให้สะดวกต่อการนำยูนิกซ์ไปทำงานบนเครื่องชนิดอื่นมากขึ้น ทาง 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 ซึ่งเป็นสาเหตุในการดำเนินคดีละเมิดลิขสิทธิ์กับลินุกซ์


***************************************************************

โครงสร้างของ Unix
ระบบปฏิบัติการ Unix สามารถแบ่งโครงสร้างหลัก ๆ ได้ 4 ระดับ แต่ละระดับก็จะทำหน้าที่ต่างกัน1. ฮาร์ดแวร์ หมายถึงอุปกรณ์หรือทุกชิ้นส่วนของคอมพิวเตอร์ ที่เราสามารถจับต้องได้ เช่น จอภาพ คีย์บอร์ด เม้าส์ ดิกส์ไดรซ์ ซีดีรอม เป็นต้น 2. ยูนิกซ์ เคอร์เนล เคอร์เนล จะทำหน้าที่ควบคุมการทำงานทั้งหมดของระบบ ได้แก่ การจัดสรรทรัพยากร การจัดการข้อมูลบริการหน่วยความจำ ซึ่งเคอร์เนลนี้จะขึ้นกับฮาร์ดแวร์ เช่น ถ้ามีการเปลี่ยนแปลง ฮาร์ดแวร์ เคอร์เนลนี้ก็จะถูกเปลี่ยนไปด้วย เป็นต้น 3. เชลล์ คือ ตัวกลางระหว่างผู้ใช้กับตัวเคอร์เนล ทำหน้าที่รับคำสั่งจากผู้ใช้ แล้วนำไปแปลเป็นภาษาที่เครื่องคอมพิวเตอร์เข้าใจ เราเรียกอีกอย่างหนึ่งได้ว่า command interpreter แต่ถ้ามีการนำ เชลล์หลาย ๆ ตัวมาเขียนรวมกัน (คล้าย ๆ กับ batch file ในระบบปฏิบัติการ DOS) เราจะเรียกว่า เชลล์สคริปต์ นอกจากนี้ เชลล์ (Shell) ยังมีอีกหลาย ๆ ประเภท แต่ที่นิยมกันได้แก่ * Bourne shell (sh) เป็นเชลล์ต้นแบบของทุก ๆ เชลล์ มีความสามารถในการเขียน เชลล์สคริปต์ได้ด้วย * C shell (csh) เป็นเชลล์ที่สร้างหลัง Bourne shell ความสามารถพิเศษของ C shell คือเก็บข้อมูลเกี่ยวกับคำสั่งที่เคยใช้ * Korn shell (ksh) ซึ่งพัฒนาโดย AT&T โดยได้นำคุณสมบัติเด่น ๆ ของ Bourne shell และ C shell มารวมกัน * Bourne again shell (bash) มีคุณสมบัติและความสามารถคล้ายกับ Korn shell แต่ shell นี้ถูกสร้างขึ้นมาใช้สำหรับแจกฟรี ซึ่งเป็นเหตุผลสำคัญที่ทาง Linux นำมาใช้ คำสั่งที่ทำให้ทราบว่าเราใช้งาน เชลล์อะไรอยู่คือ echo $SHELL 4. โปรแกรมประยุกต์ หมายถึง โปรแกรมการใช้งานเพิ่มเติมต่าง ๆ ที่ใช้บนระบบปฏิบัติการยูนิกซ์ ได้แก่ pine เป็นต้น

URL : http://www.wutthi.com/forum/index.php?PHPSESSID=d51ca545597d55c29ed6f47a50f3bcf2&action=printpage;topic=533.0
ที่มาจาก ตำรวจแห่งชาติ

ไม่มีความคิดเห็น: