บทที่ 9 ตัวอย่างซอฟต์แวร์ระบบปฏิบัติการ

ในบทนี้จะกล่าวถึงระบบปฏิบัติการที่เป็นที่นิยม และรู้จักกันดีในหมู่ผู้ใช้คอมพิวเตอร์ โดยจะอธิบาย คร่าว ๆ ถึงโครงสร้างของระบบปฏิบัติการตามที่ได้ศึกษามาในบทก่อน ๆ

9.1 ประเภทของซอฟต์แวร์ระบบปฏิบัติการ

 

สามารถแบ่งระบบปฏิบัติการออกได้เป็น 2 จำพวกใหญ่ ๆ ได้แก่

    1. ระบบปฏิบัติการสำหรับเครื่องไมโครคอมพิวเตอร์

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

      เครื่องคอมพิวเตอร์ส่วนใหญ่ในปัจจุบันที่คนทั่วไปนิยมซื้อมาใช้ ส่วนมากจะเป็นเครื่องพีซีหรือไมโครคอมพิวเตอร์ซึ่งเป็นคอมพิวเตอร์ส่วนบุคคล ซึ่งในปัจจุบันจะมีการผลิตเครื่องพีซีออกมาหลายแบบหลายประเภท แต่ละประเภทก็จะมีระบบปฏิบัติการเป็นของตนเอง ตัวอย่างเช่น เครื่องไอบีเอ็มพีซี(IBM PC) และไอบีเอ็ม คอมแพททิเบิล(IBM Compatible) จะเป็นเครื่องที่ใช้ระบบปฏิบัติการดอส(DOS) วินโดวส์(Windows) วินโดวส์ 95 (Windows 95) โอเอส/2(OS/2) วินโดวส์เอ็นที(Windows NT) หรือยูนิกซ์(UNIX) อย่างใดอย่างหนึ่ง แต่ถ้าเป็นเครื่องแอปเปิลแมคอินทอช จะใช้ระบบปฏิบัติการที่เรียกว่า แมคอินทอชโอเอส(Macintosh Operating System) ที่สร้างโดยบริษัทแอปเปิล ซึ่งการที่มีระบบปฏิบัติการต่างกันนี้ ก็เนื่องมาจากเครื่องแต่ละประเภทจะมีโครงสร้างทางฮาร์ดแวร์ที่ต่างกัน โดยเฉพาะอย่างยิ่งการออกแบบซีพียู

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

    2. ระบบปฏิบัติการสำหรับเครื่องขนาดใหญ่

      ในระบบคอมพิวเตอร์ที่เป็นแบบผู้ใช้คนเดียว (single user) ผู้ใช้จะเป็นผู้ครอบครองการใช้งานทรัพยากรทุกอย่างของระบบ ไม่ว่าจะเป็นการใช้งานดิสก์ หน่วยความจำ ซีพียู ฯลฯ ซึ่งถ้ามีการส่งโปรแกรมให้ซีพียูทำการประมวลผล ในระหว่างการประมวลผล โปรแกรมอาจต้องการรับข้อมูลเข้าจากหน่วยนำข้อมูลเข้า ซึ่งจะใช้เวลานานกว่าการทำงานของซีพียูหลายเท่านัก ในช่วงเวลานี้ ซีพียูจะต้องคอยให้การรับข้อมูลนั้นเสร็จเรียบร้อยก่อนจึงจะสามารถทำงานต่อไปได้ จะเห็นว่าระบบการทำงานแบบผู้ใช้คนเดียวนี้ จะเป็นการใช้งานซีพียูที่ไม่คุ้มค่า ดังนั้นระบบคอมพิวเตอร์ที่จะมีความสามารถในการทำงานแบบมัลติโปรแกรมมิ่งนี้ จะต้องมีระบบปฏิบัติการที่มีความสามารถมากกว่าระบบคอมพิวเตอร์ที่เป็นแบบผู้ใช้งานคนเดียว เช่น ดอส

      ในเครื่องระดับไมโครคอมพิวเตอร์ จะมีระบบปฏิบัติการหลายตัวที่สามารถทำงานแบบมัลติโปรแกรมมิ่งได้ เช่น วินโดวส์ วินโดวส์เอ็นที โอเอสทู ยูนิกซ์ เป็นต้น แต่สำหรับเครื่องขนาดใหญ่ เช่น ระดับมินิคอมพิวเตอร์ เมนเฟรม หรือ ซูเปอร์คอมพิวเตอร์นั้น โดยทั่วไปจะเป็นระบบที่มีการให้บริการแก่ผู้ใช้ได้มากกว่า 1 คน อีกทั้ง ยังต้องสามารถทำงานหลาย ๆ ง่ายได้พร้อม ๆ กันในเวลาเดียวกันได้อีกด้วย ดังนั้นระบบปฏิบัติการที่ใช้สำหรับเครื่องขนาดใหญ่จึงต้องมีความสามารถในการทำงานแบบมัลติโปรแกรมมิ่ง และการที่มีผู้ใช้งานหลายคน ระบบปฏิบัติการจะต้องเป็นตัวจัดแบ่งเวลาการทำงาน (Time Sharing) ให้กับงานของผู้ใช้แต่ละคนอีกด้วย นอกจากนี้ถ้าผู้ใช้มีการส่งโปรแกรมหลายโปรแกรมเข้ามาประมวลผล ระบบปฏิบัติการก็จะต้องมีความสามารถในการจัดการหน่วยความจำ (Memory Management) ให้สามารถนำโปรแกรมแต่ละโปรแกรมเข้ามาเก็บไว้ในหน่วยความจำภายในได้โดยไม่มีการก้าวก่ายเนื้อที่กันในหน่วยความจำ และสามารถใช้เนื้อที่หน่วยความจำได้อย่างมีประสิทธิภาพมากที่สุด ตัวอย่างของระบบปฏิบัติการสำหรับเครื่องขนาดใหญ่ที่มีใช้อยู่ในปัจจุบันได้แก่ ยูนิกซ์, MVS, VM, TSO, CICS และ CMS เป็นต้น


    [ back ]

9.2 ตัวอย่างของซอฟต์แวร์ระบบปฏิบัติการสำหรับเครื่องไมโครคอมพิวเตอร์

ต่อไปนี้จะได้แนะนำให้ท่านได้รู้จักกับระบบปฏิบัติที่นิยมใช้อยู่ในเครื่องระดับพีซี อันได้แก่ ดอส(DOS) ยูนิกซ์(Unix) โอเอสทู(OS/2) แมคอินทอชโอเอส(Macintos Operating System) วินโดวส์(Windows) วินโดวส์เอ็นที(Windows NT) เน็ตแวร์ (NetWare) และลีนุกซ์ (Linux) ดังนี้

9.2.1 ระบบปฏิบัติการดอส (Disk Operating System : DOS)

ดอส เป็นระบบปฏิบัติการบนเครื่องพีซีสำหรับเครื่องไอบีเอ็ม หรือไอบีเอ็มคอมแพตติเบิ้ลที่เคยเป็นที่นิยมใช้งานมากในอดีตหรือแม้แต่ในปัจจุบันก็ยังมีการใช้งานกันอยู่ ดอสเป็นระบบปฏิบัติการที่มีลักษณะการทำงานเป็นแบบงานเดียว (Single task) ซึ่งหมายความว่าขณะที่มีการใช้เครื่องคอมพิวเตอร์ทำงานใดอยู่นั้น จะต้องรอจนกว่างานนั้นจะเสร็จก่อนจึงจะสามารถใช้คอมพิวเตอร์ทำงานอย่างอื่นต่อไป ตัวอย่างเช่น ถ้าสั่งให้คอมพิวเตอร์พิมพ์ไฟล์ออกทางเครื่องพิมพ์ ก็จะต้องรอจนกว่าการพิมพ์นั้นจะเสร็จสิ้นจึงจะสามารถใช้เครื่องคอมพิวเตอร์ทำงานอื่นต่อไปได้

ดอส เป็นระบบปฏิบัติการที่เป็นที่รู้จักกันอย่างกว้างขวางมากในหมู่ผู้ใช้เครื่องไมโครคอมพิวเตอร์ เป็นผลงานของบริษัทไมโครซอฟต์คอร์เปอร์เรชั่น(Microsoft Corporation) ความเป็นมาของเอ็มเอสดอสเริ่มจากที่บริษัทไอบีเอ็ม(IBM) ได้สร้างเครื่องไมโครคอมพิวเตอร์มีชื่อว่าพีซี (PC:personal computer) และว่าจ้างบริษัทไมโครซอฟต์ให้ช่วยออกแบบระบบปฏิบัติการของเครื่องพีซีนี้ โดยใช้ชื่อว่าพีซีดอส (PC-DOS) เครื่องพีซีได้รับความนิยมอย่างแพร่หลาย จนมีบริษัทอื่น ๆ สร้างเครื่องไมโครคอมพิวเตอร์เลียนแบบเครื่องไอบีเอ็ม ซึ่งสามารถทำงานได้เหมือนกัน เป็นเครื่องแบบเดียวกัน เรามักนิยมเรียกเครื่องที่สร้างเลียนแบบนี้ว่า “เครื่องคอมแพตติเบิ้ล” (compatible) ถ้าเครื่องคอมแพตติเบิ้ลต้องการทำงานให้เหมือนกับพีซีของไอบีเอ็มแล้ว จำเป็นอย่างยิ่งที่จะต้องมีระบบปฏิบัติการที่เหมือนกัน แต่พีซีดอสเป็นลิขสิทธ์ของไอบีเอ็มที่ขายให้กับผู้ใช้เครื่องของไอบีเอ็มเท่านั้น ดังนั้นบริษัทไมโครซอฟต์จึงสร้างระบบปฏิบัติการใหม่ออกสู่ตลาด เพื่อให้เครื่องคอมแพตติเบิ้ลทั้งหลายได้ใช้ มีชื่อว่า เอ็มเอสดอส (MS-DOS) โดยไมโครซอฟต์เป็นเจ้าของลิขสิทธิ์ ซึ่งเอ็มเอสดอสและพีซีดอสนี้ความจริงแล้วเหมือนกัน เป็นระบบปฏิบัติการตัวเดียวกัน เพียงแต่เรียกชื่อต่างกันเท่านั้นเอง (ด้วยเหตุผลเชิงพาณิชย์ที่กล่าวมา) เอ็มเอสดอสหรือพีซีดอสได้ถูกพัฒนาออกมาหลายเวอร์ชั่น โดยมีขีดความสามารถมากขึ้นเรื่อย ๆ แต่ในเวอร์ชั่นหลัง ๆ ไอบีเอ็มได้แยกพัฒนาพีซีดอสด้วยตนเอง ทำให้พีซีดอสและเอ็มเอสดอสในเวอร์ชั่นหลัง ๆ มีความแตกต่างกัน (ซึ่งมักจะต่างกันทางด้านความสามารถพิเศษต่าง ๆ ที่เพิ่มขึ้น แต่ส่วนใหญ่แล้วยังคงเหมือนกันอยู่)

ดอสมีต้นกำเนิดมาจากระบบปฏิบัติการ CP/M ที่ใช้กับเครื่อง 8 บิตในสมัยก่อน แต่ปัจจุบัน CP/M ไม่มีใช้กันแล้วบนเครื่องพีซี เนื่องจากการเข้ามาของดอสตัวใหม่ที่มีการพัฒนาอย่างต่อเนื่องและรวดเร็วเพื่อให้ทันกับความสามารถของฮาร์ดแวร์ที่สูงขึ้น ปัจจุบันดอสที่เป็นที่รู้จักและยังเป็นที่นิยมใช้งานอยู่ได้แก่

โดยทั่วไป MS-DOS และ PC-DOS จะมีรูปแบบการใช้งานเหมือนกัน แต่อาจมีการทำงานภายในของบางโปรแกรมหรือบางคำสั่งเท่านั้นที่ต่างกัน MS-DOS ได้มีการพัฒนามาพร้อมๆ กับเครื่องพีซี โดยครั้งแรกบริษัท ซีแอตเติลได้สร้างระบบปฏิบัติการที่เรียกว่า 86-DOS เพื่อใช้งานกับซีพียู 8086 และพัฒนามาหลายรุ่นจนถึงรุ่น 86-DOS 1.0 บริษัทไมโครซอฟต์จึงได้ตัดสินใจซื้อลิขสิทธิ์ทั้งหมดของ 86-DOS จากซีแอตเติล และเปลี่ยนชื่อจาก 86-DOS เป็น MS-DOS และได้ทำการพัฒนา MS-DOS ให้มีความสามารถเพิ่มขึ้นเรื่อย ๆ ตามการเปลี่ยนแปลงของฮาร์ดแวร์ จากรุ่นหรือเวอร์ชั่น (version) แรกสุดคือ 1.0 ที่ออกมาในปี ค.ศ. 1981 ได้มีการพัฒนาปรับปรุง เวอร์ชั่นให้สูงขึ้นไปเรื่อย ๆ จนในปัจจุบันเป็นเวอร์ชั่น 6.2 ที่ออกมาในปี 1993 และสำหรับ PC-DOS เวอร์ชั่นปัจจุบันคือ 6.1

โดยทั่วไปซอฟต์แวร์เกือบทุกประเภทจะมีตัวเลขอยู่หลังชื่อซอฟต์แวร์นั้น เพื่อแสดงถึงเวอร์ชั่นที่มีการพัฒนา ยิ่งเวอร์ชันสูงมากขึ้นเท่าไรความสามารถของซอฟต์แวร์นั้นก็จะยิ่งเพิ่มมากขึ้น เพื่อให้สามารถใช้ประสิทธิ-ภาพของฮาร์ดแวร์ที่มีการพัฒนาอย่างรวดเร็วได้ดียิ่งขึ้น

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

การจัดการโปรเซส

เนื่องจากดอสเป็นระบบปฏิบัติการสำหรับผู้ใช้คนเดียว (single user) ทำงานครั้งละหนึ่งงาน (single program) ทำให้การควบคุมระบบค่อนข้างง่าย คือ รับงานจากผู้ใช้ ส่งมอบการควบคุมให้กับโปรแกรมของผู้ใช้จนกระทั่งโปรแกรมจบ แล้วกลับมาควบคุมระบบต่อ (รอรับงานต่อไป) จะเห็นว่าไม่มีความจำเป็นที่จะต้องใช้แนวความคิดเรื่องโปรเซสให้ยุ่งยาก แต่ถ้าหากต้องการจะมองในแง่ของการจัดการโปรเซสของดอสแล้ว ก็อาจแสดงได้อย่างง่าย ๆ เริ่มจากเมื่อผู้ใช้ส่งงานระบบดอสจะให้โปรเซส (โปรแกรม) ทำงาน การทำงานของโปรเซสจะมีอยู่เพียง 2 สถานะคือสถานะรัน หมายถึงโปรเซสกำลังครอบครองซีพียูอยู่ และสถานะติดขัด หมายถึง โปรเซสกำลังรอเหตุการณ์บางอย่าง เช่น การทำงานของอุปกรณ์อินพุต-เอาต์พุต เป็นต้น ในระหว่างที่โปรเซสอยู่ในสถานะติดขัดซีพียูจะว่าง เพราะอยู่ในระบบมีอยู่เพียงโปรเซสเดียว โปรเซสจะเปลี่ยนสถานะไปมาระหว่างสถานะรันและสถานะติดขัดไปเรื่อย ๆ ตามแต่การทำงานของโปรเซส จนกระทั่งโปรเซสจบสิ้นลง โปรเซสก็จะส่งมอบการทำงานคืนให้กับดอสและดอสก็พร้อมที่จะรับงานจากผู้ใช้ต่อไป

การจัดการหน่วยความจำ

เนื่องจากดอสเป็นระบบปฏิบัติการที่ถูกสร้างขึ้นมาใช้กับไมโครคอมพิวเตอร์ของบริษัทไอบีเอ็มโดยตรง ทำให้การทำงานหลายอย่างต้องขึ้นกับฮาร์ดแวร์ของเครื่องด้วย หน่วยความจำก็เช่นเดียวกัน ดอสต้องจัดการเนื้อที่ในหน่วยความจำของไมโครคอมพิวเตอร์ ซึ่งมีขนาดจำกัดเพียง 640 กิโลไบต์ (1 กิโลไบต์ = 1024 ไบต์) เท่านั้น (หน่วยความจำส่วนนี้เป็นหน่วยความจำประเภทแรม) ความจริงแล้วตามสถาปัตยกรรมของไมโคร โปรเซสเซอร์ 8088 (ซึ่งเป็นซีพียูของไมโครคอมพิวเตอร์ที่ไอบีเอ็มเลือกใช้) สามารถอ้างหน่วยความจำได้มากถึง 1 เมกกะไบต์ (1024 กิโลไบต์) แต่สาเหตุที่เหลือหน่วยความจำเพียงแค่ 640 กิโลไบต์ให้ดอสจัดการนั้น เป็นเพราะส่วนที่เกิน 640 กิโลไบต์ เป็นส่วนที่ถูกจองไว้ใช้สำหรับการทำงานของระบบ เช่น เป็นหน่วยความจำสำหรับข้อมูลบนจอภาพที่เรียกว่าวีดีโอแรม (video RAM) หรือเป็นหน่วยความจำประเภทรอม เป็นต้น

สำหรับไมโครคอมพิวเตอร์รุ่นหลัง ๆ จะใช้ไมโครโปรเซสเซอร์ 80286 หรือ 80386 เป็นซีพียู ซีพียูทั้ง 2 เบอร์นี้มีหน่วยความจำพิเศษเพิ่มมาเรียกว่า extended memory ซึ่งเป็นหน่วยความจำที่อยู่เกินหน่วย ความจำธรรมดา (conventional memory) ขนาด 1 เมกกะไบต์ขึ้นไปทำให้สามารถใช้หน่วยความจำได้มากกว่า 1 เมกกะไบต์ขึ้นไปได้จนถึง 16 เมกกะไบต์ในกรณีของ 80286 และถึง 2 จิกะไบต์ (1 จิกะไบต์ =1024 เมกกะไบต์) ในกรณีของ 80386 แต่อย่างไรก็ตามดอสไม่สามารถจัดการหน่วยความจำในส่วนที่เกิน 1 เมกกะไบต์นั้นได้

การจัดการหน่วยความจำของดอสเป็นแบบง่าย ๆ คือ ใช้การจัดสรรแบบต่อเนื่องในระบบโปรแกรมเดี่ยว ดอสจะเข้าไปกินเนื้อที่อยู่ในหน่วยความจำส่วนหนึ่ง ส่วนที่เหลือจะเป็นพื้นที่ว่างที่ดอสจะโหลดเอาโปรแกรมของผู้ใช้เข้าไปไว้ ถ้าโปรแกรมของผู้ใช้มีขนาดโตกว่าส่วนที่เหลือนี้โปรแกรมนั้นก็จะทำงานไม่ได้ เว้นแต่เป็นโปรแกรมที่มีการทำงานแบบโอเวอร์เลย์ (ดูรายละเอียดในบทที่ 4) เมื่อโปรแกรมของผู้ใช้เสร็จสิ้นลงก็จะคืนเนื้อที่ในหน่วยความจำให้กับดอสเพื่อใช้สำหรับโปรแกรมอื่น ๆ ต่อไป

ดิสก์และระบบไฟล์

ดอสมีการจัดวางรูปแบบเนื้อที่หน่วยความจำในดิสก์เป็นของตนเองเรียกว่า การทำฟอร์แมต (format) ก่อนใช้งานดิสก์ก็จะต้องนำแผ่นดิสก์มาผ่านการฟอร์แมตเสียก่อน ซึ่งดอสมีโปรแกรมสำหรับการทำฟอร์แมตไว้ให้แล้ว การทำฟอร์แมตจะเป็นการกำหนดขนาดของเซกเตอร์แทร็ก และวงรอบของดิสก์ ซึ่งจะมีขนาดเท่าใดขึ้นอยู่กับชนิดของแผ่นดิสก์ว่าเป็นดิสก์ประเภทใด และเป็นดอสเวอร์ชั่นใดตัวอย่างเช่นในดอสเวอร์ชั่น 1.1 กำหนดให้ดิสก์ขนาด 5.25 นิ้ว มี 8 เซกเตอร์ต่อแทร็ก 2 แทร็กต่อรอบวง และมี 40 วงรอบ แต่สำหรับดอสเวอร์ชั่น 2.0 กำหนดให้มี 9 เซกเตอร์ต่อแทร็ก 2 แทร็กต่อรอบวง และมี 40 วงรอบ ดังนั้นความจุของดิสก์จึงไม่เท่ากัน

ดอสแบ่งเนื้อที่ในดิสก์ออกเป็น 4 ส่วน โดยเริ่มจากเซกเตอร์แรกตามลำดับดังนี้

    1. บูตเรคคอร์ด (boot record) เป็นโปรแกรมขนาดสั้น ๆ ที่ใช้สำหรับการสตาร์ทอัฟเครื่องกินเนื้อที่ 1 เรคคอร์ด นอกจากนี้ยังเก็บรายละเอียดของดิสก์นั้นไว้ด้วย เช่น มีกี่เซกเตอร์ เซกเตอร์ขนาดเท่าไหร่ จำนวนไฟล์สูงสุดในรูท เป็นต้น
    2. ตารางการจัดสรรไฟล์ (file allocation table :FAT) ดังที่กล่าวไว้แล้วในบทที่ 7 ว่าดอสใช้ ตารางการจัดสรรไฟล์เพื่อเก็บรายละเอียดว่า บล็อกข้อมูลของไฟล์แต่ละไฟล์ถูกเก็บไว้ที่ไหนในแผ่นดิสก์ ขนาดของ ตารางการจัดสรรไฟล์มีตั้งแต่ขนาด 2-18 เซกเตอร์ ขึ้นอยู่กับขนาดความจุของแผ่นดิสก์
    3. ไดเร็กทอรี่รากหรือรูท ซึ่งเก็บรายละเอียดของไฟล์ที่เก็บไว้ภายใต้ไดเร็กทอรี่นี้ โดยใช้เนื้อที่ 32 ไบต์ต่อไฟล์ ในส่วนของไดเร็กทอรี่นี้กินเนื้อที่ 7 เซกเตอร์ สำหรับดิสก์ที่มีความจุ 320,360 และ 720 (ดิสก์ขนาด 3.5 นิ้ว) กิโลไบต์ ทำให้ในรูทมีไฟล์ได้มากที่สุด 112 ไฟล์ และกินเนื้อที่ 14 เซกเตอร์ สำหรับดิสก์ที่มีความจุ 1.2 และ 1.44 (ดิสก์ขนาด 3.5 นิ้ว) เมกกะไบต์ทำให้รูทมีไฟล์ได้มากที่สุด 224 ไฟล์
    4. ส่วนเก็บข้อมูล เป็นเนื้อที่ส่วนที่เหลือทั้งหมดในแผ่นดิสก์ ซึ่งใช้เก็บข้อมูลของไฟล์จริง ๆ

การจัดเก็บไฟล์ของดอสใช้ในไดเร็กทอรี่หลายระดับ (สำหรับดอสเวอร์ชั่น 2.0 ขึ้นไป) โดย แผ่นดิสก์แต่ละแผ่นจะมีระบบไฟล์ของตนเองแยกกันไป (คือมีรูทเป็นของตนเอง) ไดเร็กทอรี่ในดิสก์ไม่สามารถ นำมาต่อรวมกันได้ดังเช่นในระบบยูนิกซ์ แต่สามารถก๊อปปี้ไฟล์จากไดเร็กทอรี่หนึ่งไปยังอีกไดเร็กทอรี่หนึ่งได้ ซึ่งอาจเป็นไดเร็กทอรี่ในดิสก์แผ่นเดียวกันหรือคนละแผ่นก็ได้ ช่องหนึ่งช่องในไดเร็กทอรี่ใช้เก็บรายละเอียดเกี่ยวกับไฟล์หนึ่งไฟล์ โดยแต่ละช่องจะมีเนื้อที่ขนาด 32 ไบต์ ซึ่งแบ่งเป็นส่วนต่าง ๆ ดังนี้

    1. ชื่อไฟล์และส่วนขยาย ในส่วนนี้ดอสใช้ 8 ไบต์สำหรับเก็บชื่อไฟล์ และ 3 ไบต์ สำหรับเก็บส่วนขยายหรือนามสกุลของไฟล์ นั้นคือเราสามารถตั้งชื่อไฟล์ได้ยาว 8 ตัวอักษร และมีส่วนขยายได้ 3 ตัวอักษร แต่เวลาอ้างถึงชื่อไฟล์จริง ๆ เราใช้เครื่องหมายจุด “.” ในการแยกชื่อและส่วนขยายของไฟล์
    2. แอตตริบิ้ว (attribute) มีขนาด 1 ไบต์ เป็นส่วนที่เก็บลักษณะประเภทของไฟล์ ซึ่งแต่ละบิตในแอตตริบิ้วมีความหมายดังนี้
      • ไฟล์อ่านอย่างเดียว (read-only file) เป็นบิตขวาสุด ถ้าบิตนี้เป็น 1 หมายความว่าไฟล์นั้นเป็นไฟล์ที่อ่านได้อย่างเดียว เขียนทับไม่ได้และลบไม่ได้ มีไว้เพื่อป้องกันการแก้ไขข้อมูลไฟล์
      • ไฟล์ซ่อน (hidden file) ถ้าบิตนี้เป็น 1 หมายความว่าจะไม่เห็นไฟล์นั้น เมื่อใช้คำสั่งแสดงรายชื่อไฟล์ในไดเร็กทอรี่ และการค้นหาไฟล์ในไดเร็กทอรี่ก็จะข้ามไฟล์นี้ไป คำสั่งเกี่ยวกับไฟล์ บางคำสั่งจะใช้กับไฟล์ที่เป็นไฟล์ซ่อนไม่ได้ เช่น การแสดงรายชื่อไฟล์การก๊อปปี้ไฟล์ การลบไฟล์ การเปลี่ยนชื่อไฟล์ เป็นต้น
      • ไฟล์ของระบบ (system file) ถ้าบิตนี้เป็น 1 หมายความว่าไฟล์นี้เป็นของระบบปฏิบัติการ และไฟล์นี้จะถูกข้ามไปในการค้นหาไฟล์ในไดเร็กทอรี่
      • ป้ายชื่อ (volume lable) ถ้าบิตนี้เป็น 1 หมายความว่าไดเร็กทอรี่ช่องนี้ไม่ได้เป็นไฟล์ แต่เป็นป้ายชื่อของดิสก์ (volume lable) แทน โดยใช้ส่วนของชื่อและส่วนขยายเป็นป้ายชื่อของดิสก์ ดังนั้นป้ายชื่อของดิสก์จึงมีความยาวได้มากถึง 11 ตัวอักษร เท่ากับชื่อไฟล์รวมส่วนขยาย
      • ไดเร็กทอรี่ย่อย (sub-directory) ถ้าบิตนี้เป็น 1 หมายความว่าช่องนี้เป็นไดเร็กทอรี่ย่อย ชื่อและส่วนขยายของช่องนี้จะเป็นชื่อและส่วนขยายของไดเร็กทอรี่ย่อย และเนื้อหาข้อมูลของไฟล์ (ไดเร็กทอรี่ย่อยนี้) จะมีลักษณะเป็นโครงสร้างของไดเร็กทอรี่ เก็บรายละเอียดเกี่ยวกับไฟล์ต่าง ๆ ภายใต้ไดเร็กทอรี่ย่อยนี้
      • บิตถาวร (archive bit) ใช้สำหรับการสำรองไฟล์ (back up) ดอสมีคำสั่งพิเศษสำหรับการสำรองไฟล์ เมื่อเราใช้คำสั่งรองไฟล์กับไฟล์ใด จะมีการก๊อปปี้ไฟล์นั้นไว้ และเซ็ตบิตถาวรของไฟล์ ต้นฉบับให้เป็น 1 ถ้ามีการแก้ไขไฟล์ต้นฉบับนี้บิตถาวรจะถูกเปลี่ยนเป็น 0 เพื่อให้โปรแกรม (คำสั่งสำรองไฟล์) ทราบว่ามีการแก้ไขข้อมูลในไฟล์ต้นฉบับนี้แล้ว การสำรองครั้งต่อไปควรสำรองไฟล์ที่มีบิตถาวรเป็น 0 ใหม่ ส่วนไฟล์ที่มีบิตถาวรเป็น 1 ไม่ต้องก๊อปปี้ใหม่ เพราะไม่ได้ถูกแก้ไข ไฟล์ปกติทั่ว ๆ ไปจะมีบิตถาวรเป็น 0 อยู่แล้ว
      • อีก 2 บิตที่เหลือไม่ได้ถูกใช้งาน
    3. ส่วนที่ถูกจองไว้โดยดอส มีความยาว 10 ไบต์ เป็นส่วนที่อนุญาตให้โปรแกรมใช้งานได้ ดอสไม่ได้ใช้ประโยชน์กับส่วนนี้
    4. เวลา เป็นเวลาที่สร้างหรือแก้ไขข้อมูลในไฟล์นั้นครั้งหลังสุด ส่วนนี้กินเนื้อที่ 2 ไบต์
    5. วันที่ เป็นวันที่ที่สร้างหรือแก้ไขข้อมูลในไฟล์นั้นครั้งหลังสุด ส่วนนี้กินเนื้อที่ 2 ไบต์ เช่นกัน
    6. คลัสเตอร์ (cluster) แรกของไฟล์ ดังที่กล่าวไว้ในบทที่ 7 ว่า ดอสใช้ตารางการจัดสรรไฟล์ (FAT) ในการเก็บรายละเอียดว่าบล็อกข้อมูลของไฟล์อยู่ที่ไหนบ้างในดิสก์ แต่บล็อกแรกของไฟล์จะถูกเก็บไว้ที่ ไดเร็กทอรี่ ซึ่งก็คือส่วนนี้นั้นเอง ดอสเรียกบล็อกในดิสก์ว่า คลัสเตอร์ซึ่งอาจจะมีขนาด 1 เซกเตอร์, 2 เซกเตอร์ หรือมากกว่าแล้วแต่ชนิดของดิสก์คลัสเตอร์แรกของไฟล์ก็จะเป็นตัวเริ่มต้นที่จะไปหาว่าบล็อกถัดไปของไฟล์อยู่ที่ใด โดยไล่ไปตามตารางการจัดสรรไฟล์
    7. ขนาดของไฟล์ เป็นส่วนที่ระบุขนาดความยาวของไฟล์ว่ามีความยาวกี่ไบต์ โดยส่วนนี้จะมีความยาว 4 ไบต์

โครงสร้างของดอส

เราอาจแบ่งโครงสร้างของดอสได้ออกเป็น 2 ส่วน ได้แก่ ส่วนที่ติดอยู่กับฮาร์ดแวร์ของเครื่องมี ชื่อว่ารอมไบออส (ROM BIOS) และส่วนที่อยู่บนแผ่นดิสก์ ซึ่งประกอบไปด้วยบูตเรคคอร์ด (boot record) ไฟล์ MS-DOS.SYS ไฟล์ IO.SYS และไฟล์ COMMAND.COM

    1. รอมไบออส (ROM-BIOS)
    2. ย่อมาจาก Read Only Memory-Basic Input Output System คือโปรแกรมที่ควบคุมอุปกรณ์พื้นฐานด้านอินพุตและเอาต์พุตของเครื่องไมโครคอมพิวเตอร์ทั้งหมด โปรแกรมนี้จะถูกเก็บอยู่ในรอมจะไม่เปลี่ยนแปลงไปตามดอสเวอร์ชันต่าง ๆ แต่จะเปลี่ยนแปลงไปตามฮาร์ดแวร์ของเครื่องพีซีรุ่นต่าง ๆ แทน นั่นคือจะเป็นส่วนที่เกิดขึ้นกับฮาร์ดแวร์ของเครื่อง ROM-BIOS จะไม่สามารถทำการเปลี่ยนแปลงได้ แต่จะเก็บอยู่ในเครื่องตลอด ดังนั้นจึงอาจกล่าวได้ว่า ROM-BIOS จะเป็นส่วนหนึ่งของเครื่องมากกว่าที่จะเป็นส่วนหนึ่งของดอส

      สำหรับผู้ผลิตไมโครคอมพิวเตอร์ที่ไม่ใช่ไอบีเอ็มก็อาจมีไบออสเป็นของตนเอง ซึ่งต่างกับไบออสของไอบีเอ็ม เพราะเขาอาจใช้อุปกรณ์ที่แตกต่างกันออกไป มีวิธีควบคุมที่ต่างกัน และหลีกเลี่ยงเรื่องลิขสิทธิ์ แต่โดยหน้าที่การทำงานแล้วก็ยังคงเหมือนกัน ดังนั้นไบออสจึงเป็นส่วนที่ขึ้นกับฮาร์ดแวร์เป็นอย่างมาก ถ้าฮาร์ดแวร์ของผู้ผลิตมีลักษณะที่ต่างกันเขาต้องเปลี่ยนแปลงไบออสของเขาตามไปด้วย ไบออสเป็นโปรแกรมหรือรูทีนให้ส่วนอื่น ๆ ของดอสหรือโปรแกรมต่าง ๆ เรียกใช้เมื่อต้องการควบคุมอุปกรณ์ฮาร์ดแวร์ของเครื่อง

      ภายใน ROM-BIOS จะมีโปรแกรมอยู่หลายโปรแกรม ดังนี้

      โปรแกรมตรวจสอบตัวเองหรือ Self-test-routine

      เป็นโปรแกรมที่จะเริ่มทำงานเป็นโปรแกรมแรกเมื่อมีการเปิดเครื่องขึ้นมา เครื่องจะทำงานตามโปรแกรมนี้โดยจะมีการตรวจสอบหน่วยความจำว่ามีขนาดเท่าไร และมีอุปกรณ์ใดบ้างที่มีการติดตั้งอยู่กับเครื่อง

      โปรแกรมเริ่มการทำงานของดอส หรือที่เรียกว่าตัวปลุกเครื่อง (Bootstrapper)

      เป็นโปรแกรมที่ควบคุมให้มีการอ่านโปรแกรมบูตเรคคอร์ด (Boot record) ซึ่งอยู่ในแทร็กวงนอกสุดของดิสก์เข้ามา เพื่อให้โปรแกรมบูตเรคคอร์ดทำการอ่านส่วนอื่น ๆ ของดอสเข้ามาอีกที

      โปรแกรมควบคุมอุปกรณ์มาตรฐานต่างๆ หรือดีไวซ์ไดร์ฟเวอร์(Device Driver)

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

    3. บูตเรคอร์ด (Boot Record)
    4. บูตเรคคอร์ดของดอสเป็นส่วนที่เก็บไว้อยู่ในเซกเตอร์แรกของดิสก์ทุกแผ่นที่ใช้บูตเครื่องได้ ซึ่งเป็นโปรแกรมที่มีหน้าที่โหลดเอาส่วนไฟล์ IO.SYS และ MS-DOS.SYS ของดอสในดิสก์เข้าไปไว้ในหน่วยความจำ ดังนั้นดิสก์ที่มีเซกเตอร์แรกเสียหายจะไม่สามารถนำมาใช้บูตเครื่องได้

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

    5. IO.SYS
    6. IO.SYS เป็นไฟล์ที่ซ่อนไว้ในระบบ (Hidden File) เราไม่สามารถใช้คำสั่ง DIR ธรรมดาเพื่อดูไฟล์ประเภทนี้ได้ จะต้องใช้คำสั่ง DIR /AH จึงจะเห็นไฟล์ประเภทนี้ เป็นส่วนที่ทำหน้าควบคุมการทำงานของอุปกรณ์รอบข้างต่าง ๆ ในระบบ โดยทำงานควบคู่ไปกับไบออส เป็นส่วนเพิ่มเติมขึ้นมาและมีรายละเอียดหรือเป็นเทคนิคพิเศษในการทำงานเพิ่มเติมจากของไบออส โดยลักษณะการออกแบบแล้ว ไบออสเป็นเพียงโปรแกรมมาตรฐานที่ควบคุมอุปกรณ์ของเครื่องเท่านั้น ผู้ใช้อาจไม่จำเป็นต้องใช้ดอสเป็นระบบปฏิบัติการของเครื่องก็ได้ เขาอาจใช้ระบบปฏิบัติการอื่น ๆ แทนได้ ซึ่งระบบปฏิบัติการเหล่านั้นสามารถที่จะนำเอาไบออสไปใช้งานได้เช่นกัน ทำให้เพิ่มความยืดหยุ่นในการใช้งานเป็นอย่างมาก IO.SYS นี้เป็นส่วนของดอสที่จะนำเอาไบออสมาใช้เพื่อควบคุมอุปกรณ์แต่ละตัว โดยเป็นแบบฉบับของดอสเองซึ่งระบบปฏิบัติการอื่น ๆ ก็จะต้องมีส่วนที่ทำหน้าที่นี้เช่นเดียวกัน

      การแยก IO.SYS ออกไปจากไบออสยังมีข้อดีอีก 2 ประการ คือ ประการแรก ถึงแม้ว่าไบออสได้รับการออกแบบและตรวจสอบอย่างดีแล้วก่อนที่จะบรรจุลงรอม แต่ก็อาจตรวจพบความผิดพลาดเกิดขึ้นได้ ภายหลังการแก้ไขข้อผิดพลาดที่พบในรอมย่อมเป็นสิ่งที่ไม่สะดวกอย่างมาก แต่ถ้าแก้ไข IO.SYS ให้ช่วยขจัดข้อ ผิดพลาดในไบออสย่อมเป็นสิ่งที่ง่ายกว่ามาก อีกประการหนึ่งคือในกรณีที่มีอุปกรณ์ใหม่ ๆ เพิ่มเติมเข้ามาในระบบ เราก็จะเพิ่มโปรแกรมควบคุมอุปกรณ์หรือตัวขับอุปกรณ์ใหม่ๆ เหล่านั้นเข้าไปในระบบ สำหรับดอสเวอร์ชั่น 2.0 ขึ้นไป การเพิ่มเติมตัวขับอุปกรณ์เข้าไปในระบบทำได้ง่ายมาก เพียงแต่มีไฟล์โปรแกรมตัวขับอุปกรณ์อยู่และใส่ ชื่อไฟล์เหล่านั้นลงในไฟล์ที่ชื่อ CONGIG.SYS เท่านั้น ตอนบูตเครื่องดอสก็จะนำเอาตัวขับอุปกรณ์เหล่านั้น รวมเข้าไปเป็นส่วนหนึ่งของดอสด้วย

    7. MSDOS.SYS
    8. MSDOS.SYS เป็นไฟล์ที่ซ่อนไว้ในระบบเช่นเดียวกับ IO.SYS MS-DOS ทำหน้าที่รวบรวมเอาโปรแกรมต่าง ๆ สำหรับงานบริการต่าง ๆ ด้านระบบ (DOS service function) ซึ่งเป็นงานในระดับสูงขึ้นจากในส่วนของ IO.SYS IO.SYS ควบคุมการทำงานอุปกรณ์แต่ละตัว แต่ MS-DOD.SYS เลือกใช้ประสานการทำงานของอุปกรณ์ให้เกิดงานที่ผู้ใช้ต้องการ โดยไม่สนใจวิธีการควบคุมอุปกรณ์เหล่านั้น รวมทั้ง MSDOS.SYS จะรับข้อมูลต่าง ๆ จากผู้ใช้หรือโปรแกรมเข้ามาและส่งคำสั่งไปยัง IO.SYS ซึ่งจะเรียกใช้รูทีนที่ทำหน้าที่ควบคุมการทำงานของฮาร์ดแวร์ที่เกี่ยวข้องต่อไป

      ทั้งไฟล์ IO.SYS และ MS-DOS.SYS เป็นไฟล์ระบบและไฟล์ซ่อนด้วย ดังนั้นเมื่อสั่งให้แสดงรายชื่อไฟล์จะไม่เห็นไฟล์ทั้ง 2 นั้น IO.SYS และ MS-DOS.SYS เป็นชื่อของไฟล์สำหรับเอ็มเอสดอส ในพีซีดอสใช้ชื่อ IBMIO.COM แทน IO.SYS และใช้ IBMDOS.COM แทน MS-DOS.SYS

    9. COMMAND.COM

    COMMAND.COM เป็นไฟล์ธรรมดาที่สามารถเห็นได้ในไดเร็กทอรี่ มีหน้าที่เป็นตัวแปลคำสั่ง ติดต่อกับผู้ใช้ โดยแสดงเครื่องหมายพร้อมต์ออกทางจอภาพ โดยจะรับคำสั่งจากผู้ใช้ว่าเป็นคำสั่งอะไร แล้วทำการแปลความหมายว่าต้องการให้ดอสทำอะไร ต้องทำอย่างไรบ้างกับคำสั่งนั้น แล้วจึงส่งต่อให้ MSDOS.SYS อีกทีหนึ่ง เพื่อทำงานตามที่ต้องการต่อไป คำสั่งภายใน (Internal Command) ต่าง ๆ ของดอสที่ผู้ใช้สามารถเรียกใช้ได้โดยไม่ต้องอาศัยแผ่นดอสหรือไม่มีอยู่ในฮาร์ดดิสก์ เช่น DIR, COPY, REN หรือ DEL จะเป็นส่วนที่อยู่ในตัว COMMAND.COM ทั้งสิ้น แต่ถ้าเป็นคำสั่ง FORMAT ซึ่งเป็นคำสั่งให้จัดเนื้อที่ในดิสก์ใหม่หรือคำสั่ง CHKDSK ซึ่งเป็นคำสั่งตรวจสอบเนื้อที่ของดิสก์ จะถูกเรียกว่าเป็นคำสั่งภายนอก (External Command) ที่ไม่มีอยู่ใน COMMAND.COM แต่จะมีอยู่ในแผ่นดอสที่ใช้บูตระบบ หรือในฮาร์ดดิสก์ ดังนั้นถ้าต้องการเรียกใช้คำสั่งภายนอกต่าง ๆ จำเป็นต้องเรียกจากดิสก์เท่านั้น ทั้งเอ็มเอสดอสและพีซีดอสใช้ชื่อไฟล์ COMMAND. COM เหมือนกัน

การสตาร์ทอัฟ

ขั้นตอนการเริ่มต้นการทำงานหรือการบูตเครื่องนั้นเกิดขึ้นเมื่อ

      1. เริ่มต้นเปิดสวิตซ์ของเครื่อง หรือ
      2. กดแป้น Ctrl Alt Del 3 ปุ่มพร้อมกันหรือ
      3. กดปุ่มรีเซ็ต (reset)

ขั้นตอนการบูตเครื่องเป็นดังนี้ เริ่มจากมีโปรแกรมเล็ก ๆ ที่ถูกเก็บไว้ในรอมทำงาน ซึ่งถูกโหลดเข้าหน่วยความจำโดยวงจรฮาร์ดแวร์ โปรแกรมนี้จะวิ่งไปโหลดเอาโปรแกรมในบูตเรคคอร์ด และส่งมอบการทำงานให้ ดังนั้นถ้าบูตเรคคอร์ดของแผ่นดิสก์เสีย ดิสก์แผ่นนั้นจะไม่สามารถใช้สำหรับการบูตเครื่องได้เลย โปรแกรมในบูตเรคคอร์ดจะโหลดเอาไฟล์ IO.SYS และ MS-DOS.SYS เข้ามาไว้ในหน่วยความจำและส่งมอบการทำงานให้ เนื่องจากบูตเรคคอร์ดเป็นโปรแกรมที่มีขนาดเล็กมาก (มีขนาดไม่เกิน 1 เซกเตอร์หรือ 512 ไบต์) ถ้าให้โปรแกรมไม่มีความเก่งพอที่จะค้นหาไฟล์ IO.SYS และ MS-DOS.SYS ในไดเร็กทอรี่ได้ เพื่อความง่ายต่อการทำงานของโปรแกรมในบูตเรคคอร์ด จึงกำหนดให้ไฟล์ทั้ง 2 อยู่ที่ 2 ช่องแรกในไดเร็กทอรี่เท่านั้น (คือเป็นไฟล์ที่หนึ่งและสองในไดเร็กทอรี่) ดังนั้นถึงแม้ว่าจะมีไฟล์ทั้งสองนี้อยู่ในแผ่นดิสก์สำหรับบูต แต่ไฟล์ทั้งสองไม่ได้เป็นสองไฟล์แรกใน ไดเร็กทอรี่ การบูตก็ไม่สามารถสำเร็จลงได้ และจะปรากฎข้อความแสดงบนจอภาพให้เราทราบ

ในขั้นนี้ IO.SYS จะเป็นผู้ควบคุมการทำงานของเครื่องแทนบูตเรคคอร์ด IO.SYS จะหาชื่อไฟล์ที่ชื่อ CONFIG.SYS แล้วตรวจสอบข้อมูลของไฟล์นี้ IO.SYS จะโหลดเอาตัวขับอุปกรณ์ที่ถูกระบุในไฟล์ CONFIG.SYS เข้าไปไว้ในหน่วยความจำเพื่อร่วมกันทำงาน นอกจากนี้ยังทำการกำหนดลักษณะต่าง ๆ ของระบบตามที่ระบุไว้ใน CONFIG.SYS อีกด้วย เช่น จำนวนไฟล์ที่เปิดได้มากที่สุดในเวลาเดียวกัน ขนาดของบัฟเฟอร์สำหรับดิสก์ เป็นต้น

ต่อจากนั้น IO.SYS จะโหลดเอา COMMAND.COM เข้ามาในหน่วยความจำ และส่งมอบการทำงานให้ COMMAND.COM จะค้นหาไฟล์ที่ชื่อ AUTOEXEC.BAT และทำงานตามคำสั่งในไฟล์นั้น AUTOEXEC.BAT เป็นแบตซ์ไฟล์ที่รวบรวมคำสั่งต่าง ๆ ของดอสเอาไว้เป็นชุด และดอสจะทำงานตามลำดับของคำสั่งนั้นทุก ๆ ครั้งที่บูตเครื่อง คำสั่งเหล่านี้ผู้ใช้เป็นผู้กำหนดเองโดยกำหนดในไฟล์ที่ชื่อว่า AUTOEXEC.BAT เท่านั้น เมื่อ COMMAND.COM ทำงานตามคำสั่งในไฟล์ AUTOEXEC.BAT เสร็จเรียบร้อยแล้ว มันก็จะแสดงเครื่องหมายพร้อมต์ออกทางที่จอภาพและคอยรับคำสั่งจากผู้ใช้ต่อไป คำสั่งที่ COMMAND.COM รับมาจากผู้ใช้จะถูกแปลความหมายว่าต้องการอะไร แล้วจึงเรียกใช้โปรแกรมต่าง ๆ ในส่วนของ MS-DOS.SYS ทำงานให้

คำสั่งต่าง ๆ ของดอสแบ่งออกเป็น 2 ประเภท ได้แก่ คำสั่งภายใน (Internal command) และ คำสั่งภายนอก (External command) ซึ่งมีความแตกต่างกันคือ คำสั่งภายในคือคำสั่งที่ COMMAND.COM รับจากผู้ใช้แล้วสามารถทำงานให้ได้ทันที ตัวอย่างของคำสั่งเหล่านี้ได้แก่

คำสั่งภายในของดอส

ความหมาย

copy

ก๊อปปี้ไฟล์

del, delete, era, หรือ erase

ลบไฟล์

rename หรือ ren

เปลี่ยนชื่อไฟล์

date

แสดงและเปลี่ยนวันที่ให้กับเครื่อง

time

แสดงและเปลี่ยนเวลาให้กับเครื่อง

cd

เปลี่ยนไดเร็กทอรี่ปัจจุบัน

md

สร้างไดเร็กทอรี่ย่อย

rd

ลบไดเร็กทอรี่ย่อย

ส่วนคำสั่งภายนอกเป็นคำสั่งขนาดใหญ่ ดอสต้องแยกเก็บไว้ในไฟล์ต่าง ๆ การใช้คำสั่งภายนอกดอสต้องไปโหลดจากดิสก์เข้ามาจึงจะทำงานได้ ไฟล์ของคำสั่งต่าง ๆ เหล่านี้จะอยู่ในไฟล์ที่มีส่วนขยายเป็น .EXE หรือ .COM ตัวอย่างของคำสั่งเหล่านี้ได้แก่

คำสั่งภายนอกของดอส

ความหมาย

format

ใช้สำหรับฟอร์แมตแผ่นดิสก์

tree

แสดงโครงสร้างของระบบไฟล์

label

แสดงป้ายชื่อของดิสก์

attrib

เปลี่ยนแอตตริบิ้วของไฟล์

backup

สำเนาไฟล์

diskcopy

ก๊อปปี้ดิสก์ทั้งแผ่น

โดยปกติ COMMAND.COM จะรับคำสั่งมาจากผู้ใช้แล้วตรวจสอบว่าเป็นคำสั่งภายในหรือไม่ถ้าใช่ก็จะทำงานให้ทันที ถ้าไม่ใช่ก็จะถือว่าเป็นคำสั่งภายนอก และจะให้ค้นหาในดิสก์ซึ่งจะค้นหาจากไฟล์ที่มีส่วนขยายเป็น .BAT .COM และ .EXE ตามลำดับ ไฟล์ที่มีส่วนขยายเป็น .BAT คือแบตช์ไฟล์ของดอสที่รวบรวมคำสั่งต่าง ๆ ของดอสไว้เป็นชุด ไฟล์ประเภทนี้เป็นไฟล์ของตัวอักษร (text file) และให้ทำงานเป็นลำดับดังเช่นไฟล์ AUTOEXEC.BAT ส่วนไฟล์ที่มีส่วนขยายเป็น .COM หรือ .EXE เป็นไฟล์โปรแกรมในรูปของภาษาเครื่องซึ่งพร้อมที่จะถูกโหลดเข้าไปในหน่วยความจำและรันได้ทันที ในกรณีไฟล์โปรแกรมของผู้ใช้ก็จะเป็นไฟล์ที่มีส่วนขยายเป็น .COM หรือ .EXE เช่นกัน การเรียกใช้โปรแกรมทำงานจึงเรียกใช้ได้เหมือนกับการเรียกใช้คำสั่งภายนอกของดอส ในสายตาของดอสโปรแกรมของผู้ใช้ก็คือคำสั่งภายนอกของมันนั่นเอง

ลักษณะอื่น ๆ ของดอส

ดอสเป็นระบบปฏิบัติการที่มีระบบไฟล์หลายระบบ ในแผ่นดิสก์แต่ละแผ่นจะเก็บระบบไฟล์ไว้หนึ่งระบบ ซึ่งต่างกับยูนิกซ์ที่มีระบบไฟล์เพียงระบบเดียว ผู้ใช้ทุกคนอยู่ในระบบไฟล์เดียวกันเพียงแต่อยู่ต่าง ไดเร็กทอรี่ย่อยเท่านั้น แต่ดอสแยกระบบไฟล์ออกไปเลย ตามตัวขับดิสก์หรือดิสก์ไดร์ฟ ดอสกำหนดให้ระบบมีดิสก์ไดร์ฟอย่างน้อย 2 ตัว คือ A: และ B: (โดยที่เราอาจมีดิสก์ไดร์ฟจริง ๆ 1 หรือ 2 ตัวก็ได้) ถ้าเรามีดิสก์ไดร์ฟ (ขอเรียกสั้น ๆ ว่าไดร์ฟ) เพิ่มขึ้นอีก ดอสก็จะให้เป็นไดร์ฟ C: D: และต่อ ๆ ไปตามจำนวนที่มีเพิ่ม

การอ้างถึงไฟล์ต่าง ๆ นอกจากจะต้องกำหนดพาธ (path) และชื่อไฟล์แล้ว ยังต้องกำหนดไดร์ฟ (ระบบไฟล์) ของไฟล์ด้วย เช่น การอ้างถึงไฟล์ TEST.DAT ในไดร์ฟ A: จะอ้างได้เป็น A:TEST.DAT เป็นต้น หมายถึงเป็นไฟล์ที่อยู่ในดิสก์ไดร์ฟ A: เป็นต้น

ในทำนองเดียวกันกับแนวคิดของไดเร็กทอรี่ปัจจุบัน ดอสก็มีไดร์ฟปัจจุบัน (current drive) ด้วยเช่นกัน ถ้าการอ้างถึงไฟล์ไม่มีการกำหนดไดร์ฟของไฟล์ ดอสก็จะถือว่าไฟล์ที่อ้างถึงนั้นเป็นไฟล์ในไดร์ฟปัจจุบัน ผู้ใช้สามารถเปลี่ยนไดรฟ์ปัจจุบันได้เหมือนกับที่สามารถเปลี่ยนไดเร็กทอรี่ปัจจุบัน โดยปกติแล้วเครื่องหมายพร้อมต์จะบอกไดร์ฟปัจจุบันไว้แล้ว เช่น เครื่องหมายพร้อมต์เป็นดังนี้

A:\> หมายความว่าไดร์ฟปัจจุบันคือ ไดร์ฟ A

วิธีการเปลี่ยนไดร์ฟปัจจุบันนั้นง่ายมาก เพียงแค่ใส่ชื่อไดร์ฟที่ต้องการให้เป็นไดร์ฟปัจจุบันและตามด้วยเครื่องหมาย “:” เท่านั้น เช่น ไดร์ฟปัจจุบันคือ A ต้องการเปลี่ยนให้เป็น B ให้ใส่คำสั่งให้กับดอสดังนี้

A:\>B:

ดอสจะเปลี่ยนไดร์ฟปัจจุบันเป็นไดร์ฟ B และจะแสดงเครื่องหมายพร้อมต์เป็น B:\>


[ back ]

 

9.2.2 ระบบปฏิบัติยูนิกซ์ (UNIX)

เป็นระบบปฏิบัติการเก่าแก่ที่ถูกพัฒนาขึ้นในปี 1969 โดยบริษัทเอทีแอนด์ที (AT&T หรือ American Telephone & Telegraph) เพื่อใช้กับเครื่องมินิคอมพิวเตอร์ โดยแรกเริ่มจะถูกใช้เพื่องานวิจัยหรือเพื่อการศึกษาในมหาวิทยาลัยเท่านั้น ต่อมาได้ถูกนำมาใช้ในทางธุรกิจและเป็นที่นิยมแพร่หลายมาจนถึงปัจจุบัน เนื่องจากยูนิกซ์เป็นระบบปฏิบัติการสำหรับผู้ใช้หลายคน(Multi-User) และสนับสนุนการทำงานแบบหลายงาน (Multi-task) ที่เปิดโอกาสผู้ใช้สามารถรันงานได้มากกว่าหนึ่งงานในเวลาเดียวกัน และเนื่องจากเป็นระบบปฏิบัติการที่ถูกพัฒนาขึ้นด้วยภาษาซี ไม่ใช่แอสเซมบลี ดังนั้นจึงมีคุณสมบัติที่เด่นกว่าระบบปฏิบัติการอื่น ๆ คือ การไม่ยึดติดอยู่กับฮาร์ดแวร์ (Hardware independent) ดังนั้นจึงสามารถใช้งานยูนิกซ์ได้กับเครื่องคอมพิวเตอร์เกือบทุกแบบทุกประเภทตั้งแต่ไมโครคอมพิวเตอร์ มินิคอมพิวเตอร์ไปจนถึงเมนเฟรมคอมพิวเตอร์ และนอกจากนี้ยังมีการเพิ่มเติมความสามารถทางด้านการเชื่อมต่อเข้ากับระบบเครือข่ายอีกด้วย

หลายบริษัทได้หันมาสนใจยูนิกซ์ AT&T จึงได้ออกใบอนุญาตให้กับบริษัทผู้ผลิตมินิคอมพิวเตอร์และเครื่องเวอร์กสเตชันทั้งหลาย เป็นผลให้ยูนิกซ์ได้รับการปรับปรุงแก้ไขและถูกขายให้กับบริษัทอื่น ๆ อีกหลายบริษัท ซึ่งก็ได้มีการพัฒนายูนิกซ์เวอร์ชันใหม่ ๆ ออกมามากมาย ตัวอย่างเช่น ยูนิกซ์เวอร์ชัน AIX จากบริษัทไอบีเอ็ม Solaris จากบริษัทซันไมโครซิสเต็ม NextStep จากบริษัท Next หรือ Motif จากบริษัทไอบีเอ็ม ดิจิตัลอีควิบเมนท์ และฮิวเลทท์แพ็คการ์ด (Hewlett-Packard) ที่ร่วมกันพัฒนา Motif ขึ้นมา หรือแม้แต่ในปัจจุบันที่มีกลุ่มผู้คนจากทั่วโลกได้ร่วมกันพัฒนายูนิกซ์เวอร์ชันสำหรับไมโครคอมพิวเตอร์ที่เรียกว่า ไลนักซ์หรือลีนุกซ์ (Linux) ออกมา ซึ่งเกิดจากการแลกเปลี่ยนความเห็นกันบนอินเตอร์เน็ตที่ต้องการจะพัฒนายูนิกซ์สำหรับเครื่องไมโครคอมพิวเตอร์ ที่มีประสิทธิภาพเท่ากับเครื่องขนาดใหญ่ ซึ่งจะเป็นการลดต้นทุนและค่าใช้จ่ายกว่าการใช้ยูนิกซ์สำหรับเครื่องขนาดใหญ่

ยูนิกซ์ยังเป็นระบบปฏิบัติการที่มีเครื่องมือ (tools) หรือโปรแกรมอำนวยความสะดวก (utilities) และเซลล์ (shell) ที่ช่วยนักเขียนโปรแกรมสามารถพัฒนาโปรแกรมประยุกต์บนยูนิกซ์ได้อย่างมีประสิทธิภาพ นอกจากนี้ โครงสร้างระบบไฟล์ยังเหมือนกับระบบปฏิบัติการดอส แต่คำสั่งอาจแตกต่างกันไปบ้าง

ข้อด้อยของยูนิกซ์คือ ผู้ใช้ส่วนใหญ่จะต้องจดจำคำสั่งต่าง ๆ ของยูนิกซ์ ซึ่งค่อนข้างยากต่อการจดจำ แต่ในปัจจุบันผู้ผลิตเครื่องที่ใช้ระบบปฏิบัติการยูนิกซ์ ก็ได้พัฒนาโปรแกรมที่มีลักษณะเป็น GUI (Graphic User Interface) จึงช่วยให้การใช้งานยูนิกซ์ง่ายขึ้น นอกจากนี้การที่ยูนิกซ์ถูกพัฒนาเป็นหลายเวอร์ชันจากหลายบริษัท ซึ่งแต่ละเวอร์ชันอาจมีข้อแตกต่างกันบ้างเล็กน้อย จึงทำให้มีผู้มองว่ายูนิกซ์ไม่มีความเป็นมาตรฐานเดียวกัน

แต่เนื่องจากยูนิกซ์เป็นระบบปฏิบัติการที่สามารถใช้งานได้กับเครื่องคอมพิวเตอร์หลายประเภทหลายแบบ ดังนั้นจึงเป็นระบบปฏิบัติการที่นิยมใช้มากในระบบเครือข่ายขนาดใหญ่ที่มีการเชื่อมเครื่องคอมพิวเตอร์ แต่ละประเภทเข้าด้วยกันในลักษณะของเครือข่ายอินเตอร์เน็ต

คำสั่งในยูนิกซ์

ความหมาย

pwd

แสดงเฉพาะชื่อไดเรกทอรี่ปัจจุบันออกมาให้เห็น

is

แสดงชื่อไฟล์และสับไดเรกทอรี่ภายใต้ไดเรกทอรี่ปัจจุบัน

cp

สำเนาไฟล์

mv

ย้ายไฟล์หรือเปลี่ยนชื่อไฟล์

mkdir

สร้างสับไดเรกทอรี่

rmdir

ลบสับไดเรกทอรี่

tput clear

ล้างหน้าจอ

Ip

พิมพ์ไฟล์ข้อมูลออกทางเครื่องพิมพ์

cat

แสดงข้อความในไฟล์ออกมาให้เห็นที่หน้าจอ

ตารางแสดงตัวอย่างคำสั่งบางคำสั่งในยูนิกซ์

ระบบปฏิบัติการ

ประเภทของซีพียู

ผู้ใช้งานคนเดียว

(Single user)

ผู้ใช้งานหลายคน

(Multiuser)

ทำงานได้หลายงาน

(Multitalk)

MS-DOS &

PC-DOS

Intel 8080,8086, 80286,80386, 80486,Pentium

ใช่

ไม่ใช่

ไม่ใช่

Macintosh OS

Motorola 8030, 8040,PowerPC

ใช่

ไม่ใช่

ใช่

Windows 3.1

Intel 80286,80386, 80486,Pentium

ใช่

ใช่

ใช่

Windows 95

Intel 80386, 80486, Pentium

ใช่

ใช่

ใช่

OS/2

Intel 80286,80386, 80486,Pentium, PowerPC

ใช่

ใช่

ใช่

Windows NT

Intel 80386, 80486, Pentium, PowerPC

ใช่

ใช่

ใช่

UNIX

Intel 8086, 80286, 80386, 80486, Pentium

เฉพาะผู้บริหารระบบ

(Administrator)

ใช่

ใช่

Netware

Intel 80386, 80486, Pentium

ไม่ใช่

ใช่

ใช่

ตารางแสดงระบบปฏิบัติการสำหรับเครื่องไมโครคอมพิวเตอร์

การจัดการโปรเซส

ยูนิกซ์สามารถจัดการให้โปรเซสหลายโปรเซสทำงานพร้อมกันได้ โดยอาศัยวิธีการจัดการโปรเซส และการจัดการโปรเซสเซอร์ที่คล้ายคลึงกับที่ได้กล่าวไว้ในบทที่ 2 และบทที่ 3 สถานะของโปรเซสในยูนิกซ์สามารถแบ่งอย่างง่าย ๆ ได้เป็น 4 สถานะคือ

สถานะ ก. และ ข. เปรียบได้กับสถานะรัน สถานะ ค. เปรียบได้กับสถานะพร้อมและสถานะ ง. เปรียบได้กับสถานะติดขัด เนื่องจากโปรเซสเซอร์มีเพียงตัวเดียว ดังนั้น ณ เวลาใดเวลาหนึ่งจะมีเพียงโปรเซสเพียงโปรเซสเดียวที่อยู่ในสถานะ ก. หรือ ข. เท่านั้นและโปรเซสส่วนใหญ่ในระบบจะอยู่ที่สถานะ ค

การเปลี่ยนสถานะของโปรเซสในระบบ จะมีการเปลี่ยนแปลงดังนี้คือในขณะที่โปรเซสของผู้ใช้ทำงานในลักษณะปกติ คืออยู่ในโหมดผู้ใช้ (สถานะ ก.) โปรเซสจะทำงานไปเรื่อย ๆ ถ้าการทำงานของโปรเซสมีการเรียกใช้รูทีนต่าง ๆ ของยูนิกซ์ โปรเซสจะเปลี่ยนไปอยู่ในลักษณะ ข. คือกำลังรันแต่อยู่ในโหมดเคอร์เนล ถ้าการทำงานของรูทีนของยูนิกซ์เสร็จสิ้นลง โปรเซสจะเปลี่ยนสถานะกลับไปอยู่สถานะ ก. เหมือนเดิม

ในสถานะ ข. ถ้าโปรเซสมีการเรียกใช้รูทีนของยูนิกส์ โปรเซสก็ยังคงอยู่ในสถานะเดิม แต่ถ้า โปรเซสต้องหยุดรอเหตุการณ์บางอย่าง เช่น มีการใช้อุปกรณ์อินพุต-เอาต์พุต โปรเซสจะย้ายเข้าไปอยู่ในสถานะ ง. (หลับ) จนกระทั่งเหตุการณ์ที่รอนั้นเกิดขึ้น โปรเซสจะย้ายไปอยู่ในสถานะ ค. เข้าคิวรอที่จะถูกคัดเลือกให้กลับไปรันใหม่อีกครั้ง

ที่กล่าวมาเป็นการเปลี่ยนสถานะของโปรเซสต่าง ๆ ในระบบอย่างง่าย ๆ เท่านั้น ความจริงแล้วการจัดการโปรเซสของยูนิกซ์มีรายละเอียดและมีความซับซ้อนกว่านี้อีกมาก และถ้าผู้อ่านสนใจก็สามารถค้นคว้าหาอ่านเพิ่มเติมจากหนังสือที่อธิบายเกี่ยวกับยูนิกซ์โดยตรงได้

ด้วยวิธีการจัดการโปรเซสอย่างมีประสิทธิภาพของยูนิกซ์ ทำให้ยูกนิกซ์สามารถรองรับการรันโปรแกรมหลาย ๆ โปรแกรมได้พร้อมกัน ยูนิกซ์จึงเป็นระบบปฏิบัติการแบบมีหลายผู้ใช้ (multiuser) และนอกจากนี้ยูนิกซ์ยังยอมให้ผู้ใช้แต่ละคนสามารถรันโปรแกรมได้หลายโปรแกรมพร้อมกันอีกด้วย โดยยูนิกซ์จะมองงานแต่ละงานที่ผู้ใช้สั่งให้ทำนั้นเป็นงานหนึ่งงานเหมือนกันหมด ดังนั้นไม่ว่าจะเป็นงานของผู้ใช้คนละคนหรือผู้ใช้คนเดียวกัน ก็จะไม่มีผลต่อยูนิกซ์การที่จะให้ยูนิกซ์ทำงานหลาย ๆ งานทำไปพร้อม ๆ กันนั้น ผู้ใช้จะต้องสั่งให้การทำงานเป็นการทำงานแบบแบคกราวนด์ (background) โดยปกติการส่งงานแบบธรรมดาทั่วไปให้ระบบ ระบบจะทำแบบ ฟอร์กราวนด์ (forground) คือ เมื่อสั่งงานให้ยูนิกส์จากเครื่องหมายพร้อมต์ยูนิกซ์จะรับงานนั้นไปทำ จนกระทั่ง งานนั้นเสร็จสิ้นจึงแสดงเครื่องหมายพร้อมต์เพื่อรับงานใหม่ต่อไป แต่ถ้าเราสั่งยูนิกซ์ให้รับงานแบบแบคกราวด์ หลังจากที่ยูนิกซ์รับงานนั้นแล้วจะแสดงเครื่องหมายพร้อมต์ขึ้นมาทันทีพร้อมรับงานใหม่จากผู้ใช้ เหมือนกับว่างานนั้นเสร็จสิ้นแล้วแต่ความจริงยูนิกซ์ยังคงทำงานนั้นให้เราอยู่ไปเรื่อย ๆ จนกระทั่งงานเสร็จสิ้นลง และในขณะเดียวกันยูนิกซ์ก็ส่งเครื่องหมายพร้อมต์มารับงานอื่น ๆ จากผู้ใช้ไปพร้อมกันด้วยดังนั้นอาศัยการส่งงานให้เป็นแบบ แบคกราวด์ผู้ใช้สามารถรันโปรแกรมหรือส่งงานให้ระบบทำงานได้พร้อม ๆ กันหลายงาน

การจัดการหน่วยความจำ

ในระบบยูนิกซ์รุ่นแรก ๆ ใช้การจัดการกับหน่วยความจำเป็นแบบสลับหน่วยความจำ (swapping) คือ ในขณะเวลาใดเวลาหนึ่งจะมีโปรเซสเพียงโปรเซสเดียวที่อยู่ในหน่วยความจำ (โปรเซสที่กำลังรัน) ทุกครั้งที่เปลี่ยนเอาโปรเซสอื่นมารันยูนิกซ์จะยกเอาโปรเซสเดิมทั้งหมดไปเก็บไว้ในหน่วยความจำรอง และโหลดเอาโปรเซสใหม่เข้ามาไว้ในหน่วยความจำทั้งหมด ข้อจำกัดของการใช้วิธีสลับหน่วยความจำ คือ ขนาดของโปรเซสไม่สามารถโตกว่าขนาดของหน่วยความจำในส่วนของผู้ใช้ได้ (ไม่รวมส่วนของระบบปฏิบัติการ) เพราะจะต้องเอาโปรเซสมาไว้ในหน่วยความจำทั้งหมด แต่ข้อดีของวิธีนี้คือ สามารถสร้างได้ง่ายและระบบเสียค่าใช้จ่าย (overhead) น้อย

ส่วนในระบบยูนิกซ์รุ่นหลังๆ นี้ใช้หน่วยความจำเสมือนระบบหน้า (paging system) ซึ่งข้อดีของระบบหน่วยความจำเสมือนคือ ขนาดของโปรเซสไม่ได้ถูกจำกัดอยู่ที่ขนาดของหน่วยความจำหลัก ขนาดของ โปรเซสสามารถโตกว่าขนาดของหน่วยความจำที่มีอยู่จริงได้หลายเท่าทำให้ผู้ใช้สามารถเขียนโปรแกรมขนาด ใหญ่ ๆ ได้โดยไม่ต้องกังวลว่าหน่วยความจำจะมีไม่พอ (ดูรายละเอียดของระบบหน่วยความจำเสมือนในบทที่ 5)

ระบบไฟล์

การจัดเก็บไฟล์ในระบบยูนิกซ์ใช้ระบบไดเร็กทอรี่เดียวแต่มีหลายระดับชั้น คือ ทั้งระบบจะมี ไดเร็กทอรีอยู่เพียง 1 ไดเร็กทอรี่ แต่เป็นไดเร็กทอรี่ที่มีหลายระดับชั้นเริ่มตั้งแต่รูท (root) ไล่ลงมาเรื่อย ๆ จนถึงผู้ใช้ไฟล์ต่าง ๆ ไม่ว่าจะเก็บลงในดิสก์ตัวไหน เทปม้วนไหน ก็จะรวมอยู่ในไดเร็กทอรี่ทั้งหมด

การจัดการไฟล์ของยูนิกซ์ใช้ไอโหนดเก็บรายละเอียดของไฟล์ไว้ ดังที่กล่าวไว้อย่างละเอียดแล้วในบทที่ 7 คือในไดเร็กทอรี่จะเก็บเฉพาะชื่อไฟล์ และหมายเลขไอโหนดของไฟล์นั้น ๆ รายละเอียดเกี่ยวกับไฟล์ จะถูกเก็บไว้ที่ไอโหนดทั้งหมด เช่น เจ้าของไฟล์ ขนาด วันที่ที่เข้าถึงไฟล์ ชนิดของไฟล์ การเข้าถึงไฟล์ และอื่น ๆ ผู้ที่เป็นเจ้าของไฟล์เท่านั้นที่จะมีอำนาจในการกำหนดขอบเขตของการเข้าถึงไฟล์นั้น ๆ ได้ โดยแบ่งวิธีการเข้าถึงไฟล์ออกเป็นการอ่าน การเขียน และเอ็กซีคิ้ว และแบ่งประเภทของผู้เข้าถึงออกเป็นเจ้าของไฟล์ กลุ่ม (ผู้ใช้ที่อยู่กลุ่มเดียวกับเจ้าของไฟล์) และสาธารณะ (ผู้ใช้ที่ไม่ใช่เจ้าของไฟล์)

ไฟล์ในยูนิกซ์แบ่งออกได้เป็น 3 ชนิด คือ ไฟล์ธรรมดา ไฟล์พิเศษและไดเร็กทอรี่ ไฟล์ธรรมดาเป็นไฟล์ที่เก็บข้อมูลทั่วๆ ไป ยูนิกซ์จะมองว่า

    1. ไฟล์ธรรมดา คือกลุ่มของข้อมูลหลายๆ ไบต์วางเรียงต่อกันไม่มีโครงสร้างของข้อมูลใด ๆ เช่น ไฟล์ข้อมูล ไฟล์โปรแกรม เป็นต้น การที่ยูนิกซ์มองไฟล์เป็นกลุ่มของไบต์ที่ไม่มีโครงสร้างข้อมูลนี้ สร้างความยืดหยุ่นในการทำงานของโปรแกรมต่าง ๆ โปรแกรมที่ต้องการเก็บข้อมูลไว้ในไฟล์ต้องจัดการเรื่องโครงสร้างข้อมูลเอาเองทั้งหมด โปรแกรมจึงมีอิสระในการจัดโครงสร้างข้อมูลไฟล์ได้อย่างเต็มที่
    2. ไฟล์พิเศษ คือ ไฟล์ที่สามารถอ้างอิงไปถึงอุปกรณ์ต่าง ๆ ในระบบ ยูนิกซ์มองอูปกรณ์ต่าง ๆ ในระบบเป็นไฟล์ เช่น เครื่องพิมพ์ 1 เครื่องเป็น 1 ไฟล์ จอภาพ 1 จอภาพเป็น 1 ไฟล์ ไฟล์เหล่านี้จะติดต่อกับตัวขับอุปกรณ์ของอุปกรณ์นั้น ๆ ดังนั้นการที่จะส่งข้อมูลหรือรับข้อมูลจากอุปกรณ์ต่าง ๆ ต้องส่งหรือรับข้อมูลผ่านทางไฟล์ของอุปกรณ์นั้น ๆ ซึ่งวิธีนี้เกิดผลดีในแง่ของการถ่ายเทข้อมูลของโปรเซสต่าง ๆ
    3. ไฟล์ไดเร็กทอรี่ คือ ไฟล์ที่ยูนิกซ์กำหนดโครงสร้างข้อมูลไว้ให้ โดยมีโครงสร้างเป็น ไดเร็กทอรี่ของระบบคือ ข้อมูลหนึ่งตัวจะประกอบไปด้วยชื่อไฟล์ และหมายเลขไอโหนดของไฟล์นั้น นอกจากนี้ ไดเร็กทอรี่ยังสามารถเชื่อมโยงถึงกันได้ด้วย ไดเร็กทอรี่และไฟล์ที่เก็บรวมอยู่ในดิสก์หรือเทป หรืออุปกรณ์อื่น ๆ ที่ไม่ได้เป็นไดเร็กทอรี่เดียวกันกับไดเร็กทอรี่ของยูนิกซ์ สามารถนำมาต่อเชื่อมโยงเข้ากับไดเร็กทอรี่ของระบบเป็น ไดเร็กทอรี่ย่อยหนึ่งได้ โดยยูนิกซ์มีคำสั่งพิเศษคือคำสั่ง mount เพื่อใช้เชื่อมไดเร็กทอรี่อื่นเข้ากับไดเร็กทอรี่ของระบบ และในทำนองเดียวกันยูนิกซ์ก็มีคำสั่ง unmount เพื่อตัดไดเร็กทอรี่ย่อยออกจากระบบทั้งคำสั่ง mount และ unmount นี้มีประโยชน์สำหรับการใช้ดิสก์ หรือเทปที่ถอดเข้าออกจากตัวขับได้

โครงสร้างของยูนิกซ์

เราสามารถแบ่งยูนิกซ์ออกเป็นส่วนใหญ่ ๆ ได้ 2 ส่วน คือ เชลล์ (shell) และเคอร์เนล (kernel) เชลล์เป็นส่วนที่ทำหน้าที่ติดต่อกับผู้ใช้โดยตรง ส่งพร้อมต์ขึ้นที่หน้าจอ รอรับงานจากผู้ใช้ แปลความหมายงานนั้นและเรียบเรียกให้เคอร์เนลทำงานให้ เชลล์มีคำสั่งต่าง ๆ สำหรับผู้ใช้มากมาย ตัวอย่าง เช่น

คำสั่งในเชลล์

ความหมาย

Is

แสดงรายชื่อไฟล์

who แสดงว่าผู้ใช้คือใคร
cp ก๊อปปี้ไฟล์
rm ลปไฟล์
mv ย้ายไฟล์
cd เปลี่ยนไดเร็กทอรี่ปัจจุบัน
logout ออกจากระบบ

ส่วนเคอร์เนลเป็นส่วนที่ปฏิบัติงานต่าง ๆ ให้ผู้ใช้เป็นส่วนที่ติดต่อกับฮาร์ดแวร์ของเครื่องควบคุมการทำงานของเครื่องทั้งหมด เคอร์เนลมีรูทีนต่าง ๆ มากมายสำหรับควบคุม หรือติดต่อกับอุปกรณ์ต่าง ๆ ผู้ใช้สามารถเขียนโปรแกรมและเรียกใช้รูทีนต่าง ๆ เหล่านี้ได้ ตัวอย่างของรูทีนของเคอร์เนล เช่น

รูทีนในเคอร์เนล

ความหมาย

create

สร้างชื่อไฟล์

open เปิดไฟล์
close ปิดไฟล์
mount เชื่อมระบบไฟล์
link ลิงค์ไฟล์
unmount ตัดไดเร็กทอรี่ออกจากระบบไฟล์
unlink ยกเลิกลิ้งค์ไฟล

โครงสร้างของยูนิกซ์ เคอร์เนลจะเป็นส่วนภายในที่ติดต่อกับฮาร์ดแวร์ และเชลล์เป็นส่วนที่อยู่บนเคอร์เนลอีกที ผู้ใช้จะติดต่อกับเชลล์ของยูนิกซ์โดยตรง

ลักษณะอื่น ๆ ของยูนิกซ์

นอกจากเป็นระบบปฏิบัติการแบบหลายโปรแกรมหลายผู้ใช้แล้ว ยูนิกซ์ยังมีโปรแกรมอื่น ๆ ที่มาพร้อมกับตัวมันด้วยเป็นการอำนวยความสะดวกแก่ผู้ใช้ เช่น โปรแกรมเอดิเตอร์ คอมไพเลอร์ภาษาต่าง ๆ เกมส์ และอื่น ๆ อีกมากมาย นอกจากนี้ยูนิกซ์ยังมีความสามารถทางด้านการสื่อสารข้อมูล (data communication) อีกด้วย ทำให้ผู้ใช้สามารถติดต่อส่งข้อมูลให้กันและกันได้ทั้งในระบบเดียวกันหรือต่างระบบกัน ทั้งใกล้และไกล สำหรับคำสั่งต่าง ๆ ที่ยูนิกซ์มี ถ้าผู้ใช้ไม่รู้วิธีการใช้ก็สามารถให้ยูนิกซ์แสดงคำอธิบายการให้คำสั่งเหล่านั้นได้ โดยใช้คำสั่ง man และตามด้วยคำสั่งที่ต้องการทราบวิธีการใช้ เช่นถ้าผู้ใช้ไม่ทราบวิธีการใช้คำสั่ง Is (แสดงรายชื่อไฟล์) ก็ใช้คำสั่งดังนี้ “man Is” ยูนิกซ์จะแสดงวิธีการใช้คำสั่ง Is ให้บนจอภาพ ที่กล่าวมานี้เป็นเพียงบางส่วน เท่านั้น ยูนิกซ์ยังมีลักษณะอื่น ๆ อีกมากมายที่เพิ่มประสิทธิภาพและอำนวยความสะดวกแก่ผู้ใช้


[ back ]

 

9.2.3 ระบบปฏิบัติการโอเอสทู (operating system/2 :OS/2)

ในปี 1987 บริษัทไอบีเอ็มได้มีการแนะนำเครื่องพีซีที่เรียกว่า PS/2 (Personal System/2) และ PC /AT ที่มีไมโครโปรเซสเซอร์เบอร์ 80286 80386 หรือ 80486 เป็นซีพียูของเครื่องออกมาสู่ตลาดเป็นครั้งแรก พร้อม ๆ กับการประกาศระบบปฏิบัติการตัวใหม่ที่เรียกว่าโอเอสทู (OS/2) ที่มีบริษัทไอบีเอ็มและไมโครซอฟต์เป็นผู้ร่วมกันพัฒนาระบบปฏิบัติการประเภทนี้ออกมาเป็นครั้งแรก โอเอสทูเป็นระบบปฏิบัติการที่ใช้สำหรับเครื่องไอบีเอ็มและไอบีเอ็มคอมแพททิเบิล เป็นระบบปฏิบัติการที่ไม่ต้องอยู่ภายใต้การควบคุมของดอสและมีลักษณะเป็น GUI เช่นเดียวกับแมคโอเอสและวินโดวส์ ซึ่ง GUI ของโอเอสทูนี้จะถูกเรียกว่า Workplace Shell (WPS)

โอเอสทูได้เอาชนะข้อจำกัดของดอสในเวอร์ชันแรก ๆ เช่น สามารถรันโปรแกรมที่มีขนาดใหญ่กว่า 640 KB ได้ ซึ่ง 640 KB นี้เป็นขนาดของแรมมากที่สุดจะสามารถเก็บโปรแกรมได้ในดอสรุ่นเก่า ๆ นอกจากนี้มันยังมีความสามารถทำงานในลักษณะของมัลติทาสกิ้งคือสามารถรันโปรแกรมมากกว่าหนึ่งโปรแกรมในขณะเดียวกันได้ แต่ละโปรแกรมก็จะมีหน้าต่างเป็นของตนเอง ผู้ใช้สามารถเลือกทำงานไปยังหน้าต่างของโปรแกรมใด ๆ ก็ได้

ความสามารถอย่างหนึ่งของโอเอสทูคือ จะสามารถรันบนโปรแกรมประยุกต์ที่พัฒนาบนดอส วินโดวส์ และโอเอสทูเองได้อย่างพร้อมๆ กัน ยิ่งไปกว่านั้นโอเอสทูเป็นระบบปฏิบัติการตัวแรกบนเครื่องพีซีที่สามารถดึงความสามารถของไมโครโปรเซสเซอร์ของ Intel รุ่นล่าสุด คือ 486 และเพนเที่ยมมาใช้ประโยชน์ได้อย่างเต็มที่ นอกจากนี้ยังเป็นระบบปฏิบัติการตัวแรกที่มีการทำงานเป็นกลุ่ม (Workgroups) กล่าวคือผู้ใช้งานในแต่ละกลุ่มจะสามารถแบ่งกันใช้งานไฟล์และฐานข้อมูลร่วมกันได้ โดยผ่านทางสายสื่อสาร

ไอบีเอ็มตั้งใจจะผลักดันให้โอเอสทูขึ้นมาครองตลาดแทนดอส โดยให้เป็นระบบปฏิบัติการของเครื่องคอมพิวเตอร์ PS/2 ของไอบีเอ็มเอง และปัจจุบันนี้ไอบีเอ็มเป็นผู้พัฒนาโอเอสทูเองทั้งหมด รวมทั้งโปรแกรมต่าง ๆ ที่จะรันบนโอเอสทูด้วย แต่เนื่องจากความล้มเหลวของการบริหาร ไมโครซอฟต์จึงแยกตัวออกไปจากไอบีเอ็มและหันไปสนับสนุนการพัฒนาดอสและวินโดวส์แทน แต่อย่างไรก็ตามโอเอสทูก็เป็นระบบปฏิบัติการที่มีความสามารถมากตัวหนึ่ง และมีความง่ายต่อการใช้งานมากกว่าวินโดวส์ในเวอร์ชันแรก ๆ

โอเอสทูนับว่าเป็นมิติใหม่ของระบบปฏิบัติการบนเครื่องคอมพิวเตอร์ขนาดเล็ก มีลักษณะเด่น ๆ ของ โอเอสทู โดยสรุปได้ดังนี้

การจัดการโปรเซส

ความจริงแล้วคำว่า “การจัดการโปรเซส” กับ โอเอสทู คงไม่ถูกนัก เพราะโอเอสทูไม่ได้มีเพียงโปรเซสเท่านั้น แต่ยังมีส่วนประกอบอื่น ๆ อีกที่จะรันโปรแกรมให้สำเร็จลุล่วงลงได้ โอเอสทูแบ่งหน่วยการทำงานในระบบออกเป็น 3 ประเภทคือ

    1. เซสชั่น (session) เป็นหน่วยใหญ่ที่สุดในระบบ ซึ่งจะหมายถึงการทำงานใดงานหนึ่งที่มีการใช้จอภาพ (วินโดว์ 1 วินโดว์) กับแป้นพิมพ์ ซึ่งเราอาจมองเซสชั่นว่าเป็นงาน 1 งาน หรือโปรแกรม 1 โปรแกรม ของระบบก็ได้
    2. โปรเซส (process) แต่ละเซสชั่นประกอบด้วยโปรเซส 1 โปรเซส หรือมากกว่าช่วยกันทำงานเพื่อให้เซสชั่นนั้น ๆ เสร็จสิ้นไป โปรเซสนี้เป็นโค้ดโปรแกรมชุดหนึ่งเท่านั้น
    3. เธรด (thread) เป็นหน่วยย่อยที่สุดในระบบที่ทำงานจริง ๆ โปรเซสหนึ่ง ๆ จะประกอบด้วย เธรด 1 เธรด หรือมากกว่าช่วยกันทำงาน เป็นส่วนที่โค้ดของโปรเซสถูกเอ็กซีคิ้วจริง ๆ ดังนั้น ณ ขณะใดขณะหนึ่งจะมีเพียงเธรดเดียวที่กำลังทำงานอยู่ ในรูปที่ 9.10.เป็นการแสดงถึงความสัมพันธ์ของเซสชั่นโปรเซสธรรมดาและเธรด นั่นคือระบบประกอบด้วยหลายเซสชั่นต่างคนต่างทำงาน เซสชั่นประกอบด้วยโปรเซสแต่ละโปรเซสประกอบด้วยหลายเธรด

เนื่องจากหน่วยที่ทำงานจริง ๆ ในโอเอสทูคือเธรด ดังนั้น โอเอสทูต้องจัดการการทำงานของเธรด หลายเธรดในระบบเพื่อให้เธรดต่าง ๆ ได้ทำงานพร้อม ๆ กัน ผลก็คือ โปรแกรมต่าง ๆ ในระบบได้ทำงานไปพร้อม ๆ กัน วิธีการจัดการเธรดมีหลักการเดียวกับการจัดการโปรเซสที่อธิบายในบทที่ 2 เพียงแต่เปลี่ยนจากโปรเซสเป็น เธรดเท่านั้น

โอเอสทู แบ่งประเภทของเธรดออกเป็น 3 ประเภท ตามลำดับความสำคัญในการทำงานและใช้การจัดคิวแบบหลายระดับในการจัดคิวเพื่อจัดลำดับในการเข้าทำงานของเธรด โดยให้เธรดประเภทเดียวกันอยู่ในระดับเดียวกัน โอเอสทูแบ่งประเภทของเธรดออกได้เป็น

      1. time-critical เป็นเธรดที่มีลำดับความสำคัญสูงสุด ต้องเข้าไปควบคุมการทำงานของระบบทุก ๆ ระยะเวลาที่กำหนดเสมอ โอเอสทูใช้คิวประเภท RR (round robin) สำหรับเธรดในระดับนี้
      2. regular เป็นเธรดที่ได้เข้าทำงานเป็นลำดับที่ 2 ต่อจากเธรดประเภทแรก การจัดคิวในระดับนี้ใช้คิวแบบลำดับความสำคัญ (priority queue) ตำแหน่งของเธรด ในคิวจะเรียงกันตามลำดับของความสำคัญซึ่งสามารถแปรเปลี่ยนได้
      3. idle-time เป็นเธรดที่มีลำดับความสำคัญต่ำสุด จะเข้าทำงานเมื่อซีพียูว่างเท่านั้น โดยใช้การจัดคิวแบบ RR สำหรับคิวระดับนี้

การจัดการหน่วยความจำ

โอเอสทู สามารถจัดการหน่วยความจำจริงได้ตั้งแต่ 2 เมกกะไบต์ขึ้นไปจนถึง 16 เมกกะไบต์ ในขณะที่ดอสสามารถจัดการหน่วยความจำได้มากที่สุดเพียง 1 เมกกะไบต์เท่านั้น นอกจากนี้โอเอสทูยังมีระบบหน่วยความจำเสมือน ทำให้รันโปรแกรมต่าง ๆ ที่ขนาดโตได้มากที่สุดถึง 1 กิกะไบต์ แต่ต้องเป็นโปรแกรมที่ ถูกสร้างขึ้นให้รันภายใต้ระบบโอเอสทูเท่านั้น ถ้าเป็นโปรแกรมขอดอสมารันภายใต้ระบบโอเอสทูจะใช้หน่วย ความจำได้เพียง 640 กิโลไบต์เท่านั้น และสามารถรันโปรแกรมดอสได้เพียงครั้งละ 1 โปรแกรมเท่านั้น โอเอสทู แบ่งหน่วยความจำออกเป็น 2 ส่วนคือ ส่วนที่ต่ำกว่า 1 เมกกะไบต์ลงมาและส่วนที่เกิน 1 เมกกะไบต์ขึ้นไปจนถึง 2 – 16 เมกกะไบต์แล้วแต่ว่าเครื่องคอมพิวเตอร์ที่ใช้อยู่มีหน่วยความจำเท่าใด ในส่วน 1 เมกกะไบต์แรกเรียกว่า compatibility box ซึ่งมีโครงสร้างเดียวกับ 1 เมกกะไบต์ที่ดอสสามารถจัดการได้ คือ 640 กิโลไบต์กแรกที่เป็นโปรแกรมดอสและโปรแกรมของผู้ใช้เข้าไปอยู่ในส่วนนี้ โอเอสทูมีโปรแกรมตัวหนึ่งเข้าไปอยู่ตรงส่วนของดอส โดยทำหน้าที่เหมือนกับดอสทุกอย่างเพื่อให้โปแกรมที่รันภายใต้ระบบดอส เพื่อให้โปรแกรมที่รันภายใต้ระบบดอสสามารถมารันภายใต้โอเอสทูได้ โปรแกรมส่วนนี้เรียกว่า logical DOS OS/2 ประโยชน์ของ logical DOS OS/2 มาเพียงเพื่อให้โปรแกรมภายใต้ระบบดอสสามารถรันภายใต้ระบบโอเอสทูได้เท่านั้นเอง ดังนั้นจึงไม่สามารถรันโปรแกรมดอสหลายโปรแกรมพร้อมกันได้ นอกจากนี้ logical DOS OS/2 ยังมีขนาดโตกว่าดอสอีกด้วย ดังนั้นขนาดของโปรแกรมที่รันภายใต้ดอสจะมารันภายใต้ โอเอสทู จะต้องมีขนาดไม่เกิน 640 กิโลไบต์ ลบด้วยขนาดของ logical DOS OS/2 ส่วนบริเวณที่เกิน 640 กิโลไบต์ไปจนถึง 1 เมกกะไบต์ เป็นส่วนที่ใช้สำหรับควบคุมการทำงานของฮาร์ดแวร์เช่นเดียวกับในระบบดอส

ในส่วนที่ 2 คือ ส่วนของหน่วยความจำที่เหลือทั้งหมด ตั้งแต่ 1 เมกกะไบต์ขึ้นไปจนถึงสูงสุด 16 เมกกะไบต์ (แล้วแต่ขนาดของหน่วยความจำหลักที่มีอยู่ในเครื่อง) ในส่วนนี้ใช้สำหรับโปรแกรมที่รันภายใต้ระบบ โอเอสทูซึ่งใช้ระบบหน่วยความจำเสมือน ทำให้โปรแกรมต่าง ๆ สามารถมีขนาดใหญ่ได้ถึง 1 กิกะไบต์ (1024 เมกกะไบต์) และยังเป็นระบบที่รันหลายโปรแกรมพร้อม ๆ กันได้ด้วย ในส่วนนี้จะมีโปรแกรมของโอเอสทู เข้าไปอยู่ด้วย เพื่อควบคุมการทำงานของระบบดังแสดงในรูปที่ 9.12 ถ้าระบบมีหน่วยความจำจริงอยู่มากจะทำให้โปรแกรมต่าง ๆ ทำงานได้เร็ว (ไม่เสียเวลาสลับเข้าออกมากนัก)

โครงสร้างของ โอเอสทู

เราสามารถแบ่งโอเอสทูออกได้เป็น 2 ส่วนใหญ่ ๆ ได้แก่ Session manager และ WPM (window presentation manager) Session manager เป็นส่วนที่ควบคุมการทำงานของเครื่อง ถือได้ว่าเป็นส่วนที่เป็นระบบปฏิบัติการจริง ๆ โดยหน้าที่ของ Session manager คือจัดการให้เซสชั่นต่าง ๆ ทำงานได้พร้อม ๆ กันในระบบ และทำหน้าที่อื่น ๆ ที่ระบบปฏิบัติการทั่ว ๆ ไปต้องทำ เช่น การจัดการหน่วยความจำ การควบคุมอุปกรณ์อินพุตเอาท์พุต การติดต่อระหว่างโปรแกรม เป็นต้น บางคนเรียก Session manager ว่าเป็นเคอร์เนลของ โอเอสทู มีเพียง Session manager เพียงส่วนเดียวก็สามารถใช้เครื่องคอมพิวเตอร์ทำงานได้แล้ว ซึ่งในโอเอสทูเวอร์ชั่น 1.1 มีเพียง Session manager เพียงส่วนเดียวเท่านั้น

WPM เป็นส่วนช่วยจัดการแบ่งจอภาพออกเป็นวินโดว์หลาย ๆ วินโดว์ แต่ละวินโดว์เปรียบเสมือนเป็นจอภาพของแต่ละโปรแกรม เราสามารถเลือกขนาดของวินโดว์ให้มีขนาดใหญ่-เล็กได้ตามความพอใจ และสามารถกำหนดตำแหน่งของวินโดว์ให้อยู่บริเวณใดของจอภาพก็ได้ และยังซ้อนทับกันได้ด้วย โดยการแบ่ง จอภาพออกเป็นวินโดว์นี้ ทำให้เราสามารถเห็นการทำงานของโปรแกรมต่าง ๆ หลายโปรแกรมได้พร้อมกัน ถ้าขาดส่วน WPM นี้แล้ว โปรแกรมต่าง ๆ ที่กำลังรันอยู่จะใช้จอภาพเต็มทั้งในขณะใดขณะหนึ่งจะมีเพียงโปรแกรมเดียวเท่านั้นที่แสดงผลออกทางจอภาพได้ เรียกว่าเป็นการทำงานแบบฟอร์กราวนด์ โปรแกรมที่ทำงานแบบฟอร์กราวนด์นี้สามารถเปลี่ยนไปเป็นโปรแกรมอื่นก็ได้ตามความต้องการของผู้ใช้โดยการกดคีย์พิเศษคือ Alt-Esc ซึ่งจะทำให้โปรแกรมต่าง ๆ สลับกันขึ้นมาทำงานแบบฟอร์กราวนด์ทีละโปรแกรมทุกครั้งที่กด Alt-Esc วนรอบไปเรื่อย ๆ ทุกโปรแกรม แต่ถ้าผู้ใช้กดคีย์ Ctrl-Esc จะทำให้ทุกโปรแกรมทำงานแบบแบคกราวนด์ทั้งหมด ส่วนที่จะมาเป็น ฟอร์กราวนด์จะเป็นส่วนของโอเอสทูเอง โดยจะส่งเครื่องหมายพร้อมต์ออกทางจอภาพและคอยรับคำสั่งใหม่จาก ผู้ใช้ ซึ่งอาจเป็นการสั่งรันโปรแกรมอื่นอีกก็ได้

WPM นอกจากเป็นตัวจัดการสร้างวินโดว์ต่าง ๆ เพื่อแสดงผลของโปรแกรมต่าง ๆ แล้ว WPM ยังเป็นส่วนที่ติดต่อกับผู้ใช้ (user interface) อีกด้วย การรับคำสั่งจากผู้ใช้ของ WPM นั้นจะใช้อุปกรณ์ต่อเพิ่มพิเศษที่เรียกว่าเมาส์ เมาส์เป็นอุปกรณ์อินพุตประเภทหนึ่งซึ่งจะวางไว้อยู่บนพื้นราบ เช่น บนโต๊ะ เป็นต้น และบนจอภาพจะมีลูกศรปรากฏอยู่ เราสามารถเลื่อนเมาส์ไปมาบนพื้นราบได้ตามความต้องการ ไม่ว่าเราจะเลื่อนเมาส์ไปในทิศทางใดลูกศรบนจอภาพก็จะเลื่อนตามในทิศทางเดียวกัน เราจึงสามารถเลื่อนลูกศรไปมาบนจอภาพได้อย่างง่ายดาย WPM จะใช้สัญลักษณ์ภาพที่เรียกกันทั่ว ๆ ไปว่าไอคอน (icon) ซึ่งเป็นรูปภาพขนาดเล็ก ๆ แทน คำสั่งโปรแกรมหรืออื่น ๆ ถ้าเราต้องการใช้คำสั่งก็เพียงแค่เลื่อนลูกศรไปยังไอคอนแล้วกดปุ่มบนตัวเมาส์ โอเอสทู จะรับรู้และทำงานตามคำสั่ง การใช้เมาส์นี้เพิ่มความสะดวกและง่ายดายต่อการใช้งานอย่างมาก


[ back ]

 

9.2.4 แมคอินทอชโอเอส (Macintosh Operating System)

เป็นระบบปฏิบัติการที่ใช้เฉพาะกับเครื่องไมโครคอมพิวเตอร์แมคอินทอช ที่ผลิตโดยบริษัทแอปเปิลแมคอินทอชโอเอสถูกเปิดตัวออกมาครั้งแรกในปี 1984 ลักษณะที่เด่นของระบบปฏิบัติการประเภทนี้คือ มีลักษณะที่ง่ายต่อการใช้งานมากกว่าระบบปฏิบัติการดอส เนื่องจากคำสั่งต่าง ๆ จะอยู่ในรูปแบบของเมนู และมีรูปภาพที่เรียกว่าไอคอน ที่ใช้แทนโปรแกรมหรืองานผู้ใช้สามารถใช้เมาส์คลิกเลือกเมนู หรือไอคอนเพื่อเรียกคำสั่งหรือโปรแกรมขึ้นมาทำงานได้ แทนการป้อนคำสั่งจากแป้นพิมพ์เหมือนดอส

เนื่องจากเครื่องแมคอินทอชและไอบีเอ็ม จะมีการออกแบบซีพียูที่แตกต่างกัน กล่าวคือเครื่องไอบีเอ็มและไอบีเอ็มคอมแพททิเบิลจะใช้ไมโครโปรเซสเซอร์หรือซีพียูที่สร้างโดยบริษัท Intel ได้แก่ ซีพียูเบอร์ 80286, 80386, 80486 และในปัจจุบันคือเพนเที่ยม (Pentium) ซึ่งแทนซีพียูเบอร์ 80586 นั่นเอง ในขณะที่เครื่องแมคอินทอชจะใช้ไมโครโปรเซสเซอร์ที่สร้างโดยบริษัท Motorola ได้แก่ ซีพียูเบอร์ 68000, 68020, 68030 และ 68040 ดังนั้นจึง ไม่สามารถใช้แมคอินทอชกับเครื่องไอบีเอ็มทั่วไปได้ หรือแม้แต่นำโปรแกรมที่พัฒนาภายใต้ดอสไปเรียกใช้งานหรือรัน (run) บนเครื่องแมคอินทอช หรือในทางกลับกันได้ แต่ในเวอร์ชั่นใหม่ของแมคอินทอชคือ ตั้งแต่ Macintosh II เป็นต้นไป มีการเพิ่มแผงวงจรพิเศษให้สามารถนำซอฟต์แวร์บนดอสมารันอยู่บนเครื่องแมคได้ และในเวอร์ชัน 7 (System 7) ได้ถูกออกแบบให้เป็นโอเอสที่มีความสามารถทำงานในลักษณะของมัลติทาสกิ้งได้อีกด้วย

อย่างไรก็ตาม เนื่องจากเครื่องแมคอินทอชยังคงเป็นเครื่องที่มีราคาค่อนข้างแพงมาก เมื่อเทียบกับเครื่องไอบีเอ็มคอมแพททิเบิลทั่วไปที่ใช้ระบบปฏิบัติการดอสหรือวินโดวส์ ดังนั้นจึงไม่ค่อยได้รับความนิยมมากเท่ากับเครื่องตระกูลไอบีเอ็ม

 

 

รี่ 9.14 ระบบปฏิบัติการ Macintosh System 7


[ back ]

 

9.2.5 วินโดวส์ (Windows)

เนื่องจากความยากในการใช้งานดอสทำให้บริษัทไมโครซอฟต์ได้มีการพัฒนาซอฟต์แวร์ที่เรียกว่า วินโดวส์ (Windows) ที่มีลักษณะเป็น GUI (Graphic-User Interface) ใกล้เคียงกับแมคอินทอชโอเอส เพื่อให้การใช้งานดอสทำได้ง่ายขึ้น แต่วินโดวส์จะยังไม่ใช่ระบบปฏิบัติการจริง ๆ เนื่องจากมันจะทำงานอยู่ภายใต้การควบคุมของดอสอีกที กล่าวคือจะต้องมีการติดตั้งดอสก่อนที่จะติดตั้งระบบปฏิบัติการวินโดวส์ และผู้ใช้จะสามารถเรียกใช้คำสั่งต่าง ๆ ที่มีอยู่ในดอสได้โดยผ่านทางวินโดวส์ ซึ่งจะง่ายกว่าการออกคำสั่งโดยพิมพ์จากแป้นพิมพ์โดยตรง

วินโดวส์ที่ถูกพัฒนาโดยไมโครซอฟต์ในรุ่นแรก ๆ จะใช้กับเครื่องไอบีเอ็ม และไอบีเอ็มคอมแพททิเบิล ที่มีซีพียูเบอร์ 80286 80386 และ 80486 และในปี 1990 ไมโครซอฟต์ได้ออกวินโดวส์เวอร์ชัน 3.0 ออกมา เพื่อทำการโปรโมทผู้ใช้ไม่ให้หันไปนิยมใช้แมคอินทอชโอเอสแทนดอส อย่างไรก็ตามถึงแม้ว่าวินโดวส์จะง่ายต่อการใช้งานมากกว่าดอส แต่ในเวอร์ชันแรก ๆ การใช้งานก็ยังไม่ง่ายเท่าของแมคโอเอส และนอกจากนี้การติดตั้งอุปกรณ์รอบข้างอื่น ๆ ก็ยังทำได้ยาก

วินโดวส์ได้มีการพัฒนามาอย่างต่อเนื่อง จากวินโดวส์เวอร์ชัน 3 มาเป็น 4.0 วินโดวส์ 95 และวินโดวส์ 98 ในปัจจุบัน วินโดวส์ 95 และ วินโดวส์ 98 ถือว่าเป็นระบบปฏิบัติการอย่างแท้จริง เนื่องจากมันไม่ต้องอยู่ภายใต้ การควบคุมของดอส การติดตั้งจะแยกออกจากดอสอย่างเด็ดขาดไม่จำเป็นต้องติดตั้งดอสก่อน นอกจากความง่ายและสะดวกต่อการใช้งานแล้ว วินโดวส์เวอร์ชันใหม่นี้ยังรวมซอฟต์แวร์ที่ทำให้ผู้ใช้สามารถติดตั้งเครื่องคอมพิวเตอร์ของตนเองเข้ากับระบบเครือข่ายได้อย่างง่ายดาย โดยเฉพาะอย่างยิ่งเครือข่ายอินเตอร์เน็ตและยังเอื้ออำนวยความสะดวกในการโอนถ่ายซอฟต์แวร์หรือที่เรียกว่าดาวน์โหลด(Download) โปรแกรมเป็นอย่างมาก นอกจากนี้วินโดวส์เวอร์ชันใหม่นี้ยังมีความสามารถทางด้าน Plug–and-Play ซึ่งเป็นการเปิดโอกาสให้ผู้ใช้สามารถนำอุปกรณ์ มาตรฐานต่าง ๆ เช่น ซีดีรอมไดรฟ์ ซาวน์การ์ด โมเด็ม ฮาร์ดดิสก์ไดรฟ์ ฯลฯ ที่สนับสนุน Plug-and-Play มาต่อเข้ากับเครื่องคอมพิวเตอร์ของตนเอง และเมื่อเปิดเครื่องคอมพิวเตอร์ระบบปฏิบัติการวินโดวส์ 95 หรือ 98 จะทำหน้าที่ติดตั้งอุปกรณ์เหล่านี้และทำให้เครื่องคอมพิวเตอร์รู้จักอุปกรณ์เหล่านี้เอง โดยที่ผู้ใช้ไม่ต้องทำอะไรเพิ่ม

ในปัจจุบันตลาดพีซีเกือบทั้งหมดถูกครองครองโดยระบบปฏิบัติการวินโดวส์ รวมทั้งมีการผลิตซอฟต์แวร์ที่รันอยู่บนระบบปฏิบัติการประเภทนี้ออกมาสู่ตลาดอย่างมากมาย ดังนั้นจึงมีผู้ใช้เป็นจำนวนมากที่นิยมใช้งานระบบปฏิบัติการวินโดวส์โดยเฉพาะอย่างยิ่ง วินโดวส์ 95 และ วินโดวส์ 98


[ back ]

 

9.2.6 วินโดวส์เอ็นที (Windows NT)

เป็นระบบปฏิบัติการที่ถูกพัฒนาโดยบริษัทไมโครซอฟต์และถูกเปิดตัวออกมาครั้งแรกในปี 1993 วินโดวส์เอ็นทีเป็นระบบปฏิบัติการอย่างแท้จริง (ไม่ต้องรันอยู่ภายใต้ดอส) ที่ถูกออกแบบมาให้สามารถสนับสนุนเครือข่ายคอมพิวเตอร์ขนาดใหญ่ได้ ตัวอย่างเช่นเครือข่ายที่เกี่ยวกับระบบการจองตั๋วเครื่องบิน เป็นต้น ถึงแม้ว่ารูปร่าง หน้าตาของระบบปฏิบัติการประเภทนี้จะดูคล้ายกับวินโดวส์ 3.1 แต่มันได้ถูกออกแบบมาให้รันอยู่บนเครื่องระดับเวิร์กสเตชัน หรือเครื่องคอมพิวเตอร์ทีมีสมรรถนะสูง ซึ่งใช้โปรเซสเซอร์ที่มีความสามารถมาก ๆ เช่น เพนเที่ยมของอินเทล หรือเพาเวอร์พีซี (PowerPC) ของโมโตโรล่า

ผู้ใช้ธรรมดาจะมองว่าวินโดวส์เอ็นทีเหมาะสำหรับงานทางด้านวิศวกรรมและผู้ที่ใช้เครื่องระดับเวิร์กสเตชัน หรือเครือข่ายแบบไคล์เอ็นท์/เซิรฟ์เวอร์เท่านั้น และมีหลายบริษัทที่นิยมใช้โอเอสทูหรือยูนิกซ์มากกว่า ดังนั้นในเวอร์ชันแรก ๆ ของวินโดวส์เอ็นทีจึงครองตลาดได้เพียง 3% ของตลาดระบบปฏิบัติการทางเครือข่าย ทั้งหมด

อย่างไรก็ตามเอ็นทีก็ถือว่าเป็นระบบปฏิบัติการทางเครือข่ายที่มีความสามารถมากตัวหนึ่งและยังสนับสนุนเทคโนโลยีเขียนโปรแกรมแบบเชิงวัตถุ (Object-Oriented Programming) ที่น่าจับตามองอีกตัวหนึ่ง


[ back ]

 

9.2.7 เน็ตแวร์ (NetWare)

เป็นระบบปฏิบัติการเครือข่ายที่นิยมใช้มากในเครือข่ายแลน ถูกพัฒนาโดยบริษัทโนเวลล์ (Novell) ซึ่งนอกจากจะมีหน้าที่ทั่วไปเหมือนกับระบบปฏิบัติการอื่น ๆ แล้ว ยังมีหน้าที่ควบคุมดูแลการใช้ทรัพยากรภายในเครือข่ายที่ผู้ใช้หลายคนสามารถใช้งานฮาร์ดแวร์และซอฟต์แวร์ภายในเครือข่ายร่วมกันได้ นอกจากนี้ยังมีการให้สิทธิแก่ผู้ใช้แต่ละคนว่าใครจะมีสิทธิใช้งานข้อมูลใดได้บ้าง หรือยกเลิกสิทธิแก่ผู้ใช้คนใด

ผู้ใช้สามารถติดตั้งเน็ตแวร์ร่วมกับระบบปฏิบัติการอื่นๆ ได้เช่น ดอสหรือวินโดวส์ โดยผู้ใช้สามารถใช้งานระบบปฏิบัติการอื่นๆ ได้ตามปกติ แต่เมื่อเข้าไปใช้งานระบบเครือข่ายจะต้องมีการใส่ชื่อและรหัสผ่าน (password) จึงจะเข้าสู่ระบบเครือข่ายและสามารถออกคำสั่งใดๆ ในเน็ตแวร์เพื่อใช้งานระบบเครือข่ายได้

 


[ back ]

 

9.2.8 ระบบปฏิบัติการลีนุกซ์ (Linux)

ลีนุกซ์ เป็นระบบปฏิบัติการเช่นเดียวกับ ดอส วินโดวส์หรือยูนิกซ์ โดยลีนุกซ์นั้นจัดว่าเป็นระบบปฏิบัติการยูนิกซ์ประเภทหนึ่ง การที่ลีนุกซ์เป็นที่กล่าวขานกันมากขณะนี้ เนื่องจากความสามารถของตัวระบบปฏิบัติการและโปรแกรมประยุกต์ที่ทำงานบนระบบลีนุกซ์ โดยเฉพาะอย่างยิ่งโปรแกรมในตระกูลของ GNU (GNU's Not UNIX) และสิ่งที่สำคัญที่สุดก็คือลีนุกซ์เป็นระบบประเภทฟรีแวร์ (Free Ware) คือไม่เสียค่าใช้จ่ายในการซื้อโปรแกรม

ระบบลีนุกซ์ตั้งแต่เวอร์ชั่น 4 นั้น สามารถทำงานได้บนซีพียูทั้ง 3 ตระกูล คือบนซีพียูของอิลเทล(PC Intel) ดิจิตอลอัลฟาคอมพิวเตอร์ (Digital Alpha Computer) และซันสปาร์ค (SUN SPARC) เนื่องจากใช้เทคโนโลยีที่เรียกว่า RPM (Red Hat Package Management) ถึงแม้ว่าในขณะนี้ลีนุกซ์ยังไม่สามารถแทนที่ไมโครซอฟต์ วินโดวส์ บนพีซีหรือแมคโอเอส (Mac OS) ได้ทั้งหมดก็ตาม แต่ผู้ใช้จำนวนไม่น้อยที่หันมาใช้และช่วยพัฒนาโปรแกรมประยุกต์บนลีนุกซ์กันและเรื่องของการดูแลระบบลีนุกซ์นั้น ภายในระบบลีนุกซ์เองมีเครื่องมือช่วยสำหรับดำเนินการให้สะดวกยิ่งขึ้น

การนำลีนุกซ์มาใช้งาน

ปัจจุบันได้มีการนำระบบปฏิบัติการลีนุกซ์ไปประยุกต์เป็นระบบปฏิบัติการสำหรับงานด้านต่างๆเช่น งานด้านการคำนวณทางวิทยาศาสตร์ใช้เป็นสถานีงาน สถานีบริการ อินเทอร์เน็ต อินทราเน็ต หรือใช้ในการเรียนการสอนและการทำงิจัยทางคอมพิวเตอร์ใช้พัฒนาโปรแกรมเนื่องจาก มีเครื่องมือมากมาย เช่น โปรแกรมภาษาซี (C) ซีพลัสพลัส (C++) ปาสคาล (Pascal) ฟอร์แทรน (Fortran) ลิสป์ (Lisp) โปรล็อก (Prolog) เอดา (ADA) มีภาษาสคริปต์ เช่น เชลล์ (Shell) บาสช์เชลล์ (Bash Shell) ซีเชลล์ (C Shell) คอร์นเชลล์ (Korn Shell) เพิร์ล (Perl) พายตัน (python) TCL/TK นอกจากนี้ยังมีโปรแกรมประยุกต์ในสาขาต่างๆ อีกมากมาย โดยข้อมูลของโปรแกรมเหล่านี้ได้รวบรวมไว้ที่ Linux Software Map (LSM)

อนาคตของลีนุกซ์

ลีนุกซ์นั้นมีนักพัฒนาโปรแกรมจากทั่วโลกช่วยกันทำให้การขยายตัวของลีนุกซ์เป็นไปอย่าง รวดเร็วโดยในส่วนของแกนระบบปฏิบัติการหรือเคอร์เนลนั้นจะมีการพัฒนาเป็นรุ่นที่ 2.2(Linux Kernel 2.2) ซึ่งได้เพิ่มขีดความสามารถและสนับสนุนการทำงานหลายโปรเซสเซอร์แบบ SMP (Symmetrical Multi Processors) ซึ่งทำให้ระบบลีนุกซ์สามารถนำไปใช้สำหรับทำงานเป็นเซิร์ฟเวอร์ขนาดใหญ่ได้ และยังมีโครงการสนับสนุนการใช้งานบนระบบลีนุกซ์อีกหลายโครงการ เช่น KDE (The K Desktop Environment) และ GNOME (GNU Network Object Model Environment) ซึ่งจะช่วยพัฒนา desktop บนลีนุกซ์ให้สมบูรณ์เทียบเท่ากับ วินโดวส์ 98 และบรรดาบริษัทผู้ผลิตซอฟท์แวร์ทางด้านระบบฐานข้อมูลชั้นนำ อย่างเช่น Informix,Oracle,IBM DB2 ก็เริ่มให้มีสนับสนุนการใช้งานบนระบบลีนุกซ์ แล้วเช่นเดียวกัน

เตรียมความพร้อมก่อนใช้ลีนุกซ์

ก่อนที่จะทำการติดตั้งก็ต้องเตรียมความพร้อมทางด้านอุปกรณ์ฮาร์ดแวร์และซอฟต์แวร์ให้เป็น ที่เรียบร้อยก่อน ระบบลีนุกซ์ต้องการฮาร์ดแวร์ที่มีคุณสมบัต ิขั้นต่ำสุดดังต่อไปนี้

      1. หน่วยประมวลผลกลางของ Intel 80386 ขึ้นไป
      2. หน่วยประมวลผลทางคณิตศาสตร์ มีหรือไม่มีก็ได้ เพราะระบบปฏิบัติการ Red Hat Linux ได้มีการจำลอง หน่วยประมวลผลทางคณิตศาสตร์ไว้ในระดับของเคอร์เนล (Kernel) แล้ว
      3. หน่วยความจำอย่างน้อย 8 เมกะไบต์ แต่แนะนำให้มีอย่างน้อย 16 เมกะไบต์จะทำให้ระบบมีประสิทธิภาพที่ดีกว่า
      4. ฮาร์ดดิสก์อย่างน้อย 101 เมกะไบต์ สำหรับการติดตั้งแบบพื้นฐาน 266 เมกะไบต์ สำหรับการติดตั้งแบบทั่วไปและ 716 เมกะไบต์ สำหรับการติดตั้งแบบทั้งหมด ตัวเลขที่ระบุทั้งหมดเฉพาะส่วนระบบปฏิบัติการ ถ้าต้องการใช้เป็น File Server หรือ Database Server จะ ต้องเผื่อเนื้อที่ไว้สำหรับใช้งานด้วย ส่วนแหล่งของโปรแกรมลีนุกซ์นั้นสามารถหาได้ฟรีตามเว็บไซท์ เช่น www.linux.org/dist/ftp.html

         

    สิ่งที่ควรทราบก่อนการติดตั้ง


[ back ]