วันจันทร์ที่ 30 สิงหาคม พ.ศ. 2553

“ฟิล์มใสกันร้อน” ผลงานนักวิจัยไทยคว้า "ยูเรกา" รางวัลนวัตกรรมระดับโลก

“ฟิล์มใสกันร้อน” ผลงานนักวิจัยไทยคว้า "ยูเรกา" รางวัลนวัตกรรมระดับโลก

 b      ฟิล์มกันความร้อนและยูวีหัวใจไทย ของนักวิจัยเอ็มเทค ทั้งใสและดัดได้ สิ่งประดิษฐ์ที่ไปคว้ารางวัล “ยูเรกา” เวทีแสดงนวัตกรรมระดับโลก ด้านหน่วยงานวิจัยไทยไม่ทอดทิ้งมอบรางวัลเสริมกำลังใจ และอนาคตเมื่อก้าวสู่อุตสาหกรรมจะช่วยส่งเสริมเศรษฐกิจ ลดการนำเข้าฟิล์มต่างแดนได้


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

        ดร.รุ้งนภา ทองพูล พร้อมด้วย ดร.จิตติพร เครือเนตร และนายปรีชา คงรัตน์ นักวิจัยจากเอ็มเทค ได้คิดค้นผลงานที่มีชื่อว่า “ฟิล์มใสดัดได้ ลดการผ่านของรังสีอัลตราไวโอเลตและรังสีอินฟราเรด” (Transparent, UV & IR Shield Films from Liquid) ซึ่งได้รับเหรียญเงินในงาน “บรัสเซลล์ยูเรกา 2004” (Brussels Eureka! 2004) ณ กรุงบรัสเซลล์ ประเทศเบลเยี่ยม อีกทั้งยังได้รับรางวัลชมเชยจาก วช. ประจำปี พ.ศ.2548 อีกด้วย

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


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


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

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

         สิ่งประดิษฐ์ของทีมวิจัยนี้มี 2 ชนิดคือ แผ่นฟิล์มที่ทำจากสารละลายไททาเนียมเตตระไอโซพรอพอกไซด์ (Titaniumtetraisopropoxide: TTIP) และฟิล์มอีกชนิดที่ทำจากดีบุกคลอไรด์ (Tin Chloride) ซึ่งฟิล์มที่ผลิตขึ้นได้นี้สามารถกันรังสียูวีได้ถึง 100 เปอร์เซ็นต์ กันรังอินฟราเรดหรือรังสีความร้อนได้ 28-38 เปอร์เซ็นต์ และให้แสงผ่านได้ 67-85 เปอร์เซ็นต์

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

         “ทำไมถึงกันรังสียูวีได้ ก็เนื่องจากว่าสารตัวนี้มีลักษณะที่เหมาะสม ถ้าจะให้อธิบายในแนววิทยาศาสตร์คือว่าสารตัวนี้มีระดับชั้นพลังงาน...ระดับช่องว่างระหว่างชั้น 2 ชั้น ที่เรียกว่าสถานะกระตุ้น (Excited State) และสถานะพื้น (Ground State) ตรงกลางที่เป็นช่องว่างนี้เมื่อได้รับพลังงานที่พอเหมาะแล้ว จะทำให้อิเล็กตรอนสามารถกระโดดจากสถานะพื้นไปยังสถานะกระตุ้นได้ ซึ่งสารตัวนี้มีช่องว่างที่เหมาะสมที่จะดูดซับรังสียูวีได้” นักวิจัยจากเอ็มเทคกล่าว

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

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

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

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



วันจันทร์ที่ 23 สิงหาคม พ.ศ. 2553

เทคโนโลยีหุ่นยนต์สมองกลฝั่งตัว

กฎ 3 ข้อของหุ่นยนต์

          กฎ 3 ข้อของหุ่นยนต์ ตั้งขึ้นโดย ไอแซค อสิมอฟ เพื่อใช้กับหุ่นยนต์ ในนิยายวิทยาศาสตร์ของเขา. กฎเหล่านี้ ไม่ได้เกี่ยวข้องโดยตรงกับหุ่นยนต์ในชีวิตจริงแต่อย่างใด.


          1.หุ่นยนต์มิอาจกระทำการอันตรายต่อผู้ที่เป็นมนุษย์ หรือนิ่งเฉยปล่อยให้ผู้ที่เป็นมนุษย์ตกอยู่ในอันตรายได้



(A robot may not harm a human being, or, through inaction, allow a human being to come to harm.)



           2. หุ่นยนต์ต้องเชื่อฟังคำสั่งที่ได้รับจากผู้ที่เป็นมนุษย์ เว้นแต่คำสั่งนั้นๆ ขัดแย้งกับกฎข้อแรก



(A robot must obey the orders given to it by human beings, except where such orders would conflict with the First Law.)



            3. หุ่นยนต์ต้องปกป้องสถานะความมีตัวตนของตนไว้ ตราบเท่าที่การกระทำนั้นมิได้ขัดแย้งต่อกฎข้อแรกหรือกฎข้อที่สอง
(A robot must protect its own existence, as long as such protection does not conflict with the First or Second Law.)



ประวัติ

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

       คำว่า Rbot มาจากคำว่า Robota ในภาษาเช็ก ซึ่งแปลโดยตรงว่า การทำงานเสมือนทาส ถือกำเนิดขึ้นจากละครเวทีเรื่อง "Rassum's Universal Robots" ในปี ค.ศ. 1920 ซึ่งเป็นบทประพันธ์ของ คาเวล คาเปก (Kavel Capek) เนื้อหาของละครเวทีมีความเกี่ยวพันกับจินตนาการของมนุษย์ ในการใฝ่หาสิ่งใดมาช่วยในการปฏิบัติงาน การประดิษฐ์คิดค้นสร้างหุ่นยนต์จึงถือกำเนิดขึ้นเพื่อเป็นเสมือนทาสคอยรับใช้มนุษย์ การใช้ชีวิตร่วมกันระหว่างหุ่นยนต์และมนุษย์ดำเนินต่อไปจนกระทั่งหุ่นยนต์เกิดมีความคิดเช่นเดียวกันมนุษย์ การถูกกดขี่ข่มเหงเช่นทาสจากมนุษย์ทำให้หุ่นยนต์เกิดการต่อต้านไม่ยอมเป็นเบี้ยล่างอีก ซึ่งละครเวทีเรื่องนี้โด่งดังมากจนทำให้คำว่า Robot เป็นที่รู้จักทั่วโลก

       ในปี ค.ศ. 1942 คำว่า robot ได้กลายเป็นจุดสนใจของคนทั่วโลกอีกครั้ง เมื่อ ไอแซค อสิมอฟ นักเขียนนวนิยายแนววิทยาศาสตร์ได้เขียนเรื่องนวนิยายสั้นเรื่อง Runaround ซึ่งได้ปรากฏคำว่า robot ในนิยายเรื่องนี้ และต่อมาได้นำมารวบรวมไว้ในนิยายวิทยาศาสตร์เรื่อง I-Robot ทำให้นักวิทยาศาสตร์ได้ทำความรู้จักกับคำว่า Robot เป็นครั้งแรกจากนวนิยายเรื่องนี้ หุ่นยนต์จึงกลายเป็นจุดสนใจและเป็นแนวคิดและจินตนาการของนักวิทยาศาสตร์ ในการคิดค้นและประดิษฐ์หุ่นยนต์ในอนาคต


       สมัยโบราณการดูเวลาจะใช้นาฬิกาแดด เป็นเครื่องบ่งชี้เวลาแต่สามารถใช้ได้เพียงแค่เวลากลางวันเท่านั้น นาฬิกาทรายจะใช้บอกเวลาในเวลากลางคืน จึงได้มีการคิดค้นและประดิษฐ์เครื่องจักรกลสำหรับบอกเวลาให้แก่มนุษย์คือ นาฬิกาน้ำ (Clepsydra) โดย Ctesibiua of Alexandria นักฟิสิกส์ชาวกรีกในปี 250 ก่อนคริสตกาล นาฬิกาน้ำนี้ใช้บอกเวลาแทนมนุษย์ที่แต่เดิมต้องบอกเวลาจากนาฬิกาแดดและนาฬิกาทราย โดยใช้พลังงานจากการไหลของน้ำ เป็นตัวผลักทำให้กลไกของนาฬิกาน้ำทำงาน และถือเป็นเครื่องจักรเครื่องแรกที่มนุษย์สร้างขึ้นเพื่อใช้สำหรับทำงานแทนมนุษย์ และเมื่อมนุษย์ได้รู้จักและเรียนรู้เกี่ยวกับไฟฟ้า ความคิดสร้างสรรค์ในการควบคุมเครื่องจักรโดยไม่ต้องใช้กระแสไฟฟ้าก็เริ่มขึ้น Nikola Tesia เป็นบุคลแรกที่สามารถใช้คลื่นวิทยุในการควบคุมหุ่นยนต์เรือขนาดเล็กในกรุงนิวยอร์ก ในปี ค.ศ. 1898 ภายในงานแสดงผลงานทางด้านไฟฟ้า

       ปี ค.ศ. 1940 - 1950 หุ่นยนต์ชื่อ Alsie the Tortoise ได้ถือกำเนิดขึ้นโดย Grey Walter หุ่นยนต์รูปเต่าสร้างจากมอเตอร์ไฟฟ้านำมาประกอบเป็นเครื่องจักร สามารถเคลื่อนที่ได้ด้วยล้อทั้ง 3 ต่อมาหุ่นยนต์ชื่อ Shakey ได้ถูกสร้างขึ้นให้สามารถเคลื่อนที่ได้เช่นเดียวกับ Alsie the Tortoise โดย Standford Research Institute:SRI แต่มีความสามารถเหนือกว่าคือมีความคิดเป็นของตนเองโดยที่ Shakey จะมีสัญญาณเซนเซอร์เป็นเครื่องบอกสัญญาณในการเคลื่อนที่ไปมา ซึ่งนอกเหนือจากหุ่นยนต์ที่สามารถเคลื่อนที่ไปมาด้วยล้อแล้ว ในปี ค.ศ. 1960 หุ่นยนต์ที่ชื่อ General Electric Walking Truck ที่สามารถเดินได้ด้วยขาก็ถือกำเนิดขึ้น มีขนาดโครงสร้างใหญ่โตและหนักถึง 3,000 ปอน์ด สามารถก้าวเดินไปด้านหน้าด้วยขาทั้ง 4 ข้างด้วยความเร็ว 4 ไมล์/ชั่วโมงโดยการใช้คอมพิวเตอร์ในการควบคุมการเคลื่อไหนของขา General Electric Walk Truck ได้รับการพัฒนาโครงสร้างและศักยภาพโดยวิศวกรประจำบริษัท General Electric ชื่อ Ralph Moser


       ภายหลังจากที่หุ่นยนต์เริ่มเป็นที่รู้จักไปทั่วโลก หุ่นยนต์เริ่มเข้ามามีบทบาทความสำคัญในด้านต่าง ๆ เกี่ยวข้องสัมพันธ์กับชีวิตของมนุษย์ โรงงานอุตสาหกรรมเริ่มมีความคิดใช้หุ่นยนต์แทนแรงงานมนุษย์เดิม หุ่นยนต์ด้านอุตสาหกรรมตัวแรกที่ชื่อ Unimates ได้ถือกำเนิดขึ้นในปี ค.ศ. 1950 - 1960 โดย George Devol และ Joe Engleberger ซึงต่อมา Joe ได้แยกตัวออกมาจาก George โดยเปิดบริษัทสร้างหุ่นยนต์ในชื่อของ Unimation ซึ่งต่อมาผลงานในด้านหุ่นยนต์ของ Joe ได้รับสมญานามว่า "บิดาแห่งหุ่นยนต์ด้านอุตสาหกรรม"

ประเภทของหุ่นยนต์

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


การแบ่งประเภทตามการเคลื่อนที่ได้

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

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

การแบ่งประเภทตามลักษณะรูปร่างภายนอก
       โดยทั่วไป หุ่นยนต์ยังถูกจำแนกตามลักษณะรูปลักษณ์ภายนอก และมีคำศัพท์เฉพาะเรียกต่างๆกันไป ได้แก่
- หุ่นยนต์ฮิวแมนนอยด์ (Humanoid Robot) เป็นลักษณหุ่นยนต์ที่เหมือนกับมนุษย์
- แอนดรอยด์ (Android) เป็นการเรียกหุ่นยนต์คล้ายมนุษย์ที่สามารถแสดงออกเหมือนมนุษย์ แม้ว่ารากศัพท์ภาษากรีกของคำนี้หมายถึงเพศชาย แต่การใช้ในบริบทภาษาอังกฤษมักไม่ได้มีความหมายเจาะจงว่าเป็นเพศใด
- จีนอยด์ (Gynoid) เป็นการเรียกหุ่นยนต์คล้ายมนุษย์เพศหญิง
- แอ็คทรอยด์ (Actriod) เป็นหุ่นยนต์ที่เลียนแบบพฤติกรรมมนุษย์ เช่น กระพริบตา หายใจ เริ่มพัฒนาโดย มหาวิทยาลัยโอซาก้าและบริษัทโคโคโระ
- ไซบอร์ก (Cyborg) เป็นหุ่นยนต์ที่เชื่อมต่อกับสิ่งมีชีวิต หรือ ครื่งคนครึ่งหุ่น เริ่มปรากฏครั้งแรกในเรื่องแต่งปี 1960
- นาโนโรบอท (Nanorobot) เป็นหุ่นยนต์ขนาดเล็กมาก ขนาดประมาณ 0.5-3 ไมครอน

ประโยชน์และความสามารถของหุ่นยนต์

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



ความสามารถในด้านการแพทย์


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

ความสามารถในงานวิจัย


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


ความสามารถในงานอุตสาหกรรม


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

ความสามารถในด้านความมั่นคง

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

ความสามารถในด้านบันเทิง


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

นาซ่าจับมือ 'จีเอ็ม' ร่วมพัฒนาเทคโนโลยีหุ่นยนต์ไฮเทคสมองกล


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

       ด้วยการใช้เทคโนโลยีชั้นนำอันทันสมัย อาทิ เอดจ์ คอนโทรล (Edge Control), เซ็นเซอร์ (Sensor) และเทคโนโลยีที่เกี่ยวกับการมองเห็น (Vision) ทีมวิศวกรและนักวิทยาศาสตร์จากนาซ่าและจีเอ็มได้ร่วมมือกันค้นคว้าวิจัยและ พัฒนาโครงการนี้ตามข้อตกลง Space Act Agreement ที่ศูนย์อวกาศจอห์นสันของนาซ่า (NASA’s Johnson Space Center) เพื่อสร้างสรรค์หุ่นยนต์สมองกลเลียนแบบมนุษย์ที่สามารถทำงานควบคู่ไปกับ พนักงานของทั้งสององค์กรได้อย่างมีประสิทธิภาพ โดยหมายรวมถึงการเอื้อประโยชน์ให้ทางจีเอ็มสามารถผลิตรถยนต์ที่มีความ ปลอดภัยยิ่งขึ้นในฐานการผลิตรถยนต์ที่ได้รับการยกระดับความปลอดภัยที่สูง ขึ้น รวมถึงการช่วยให้นักบินอวกาศของนาซ่าสามารถใช้ประโยชน์จากหุ่นยนต์รุ่นใหม่ นี้ได้ในระหว่างการดำเนินภารกิจที่เสี่ยงภัยทั้งหลายในอวกาศ

       ความคิดในการนำเอาหุ่นยนต์สมองกลเลียนแบบมนุษย์ ซึ่งเป็นหุ่นยนต์ที่มีศักยภาพในการบังคับมือของมันในการทำงานที่ต้องอาศัย ความละเอียดอ่อนเหมือนกับคนมาใช้ ไม่ได้เป็นเรื่องใหม่แต่อย่างใดในอุตสาหกรรมการบินและอวกาศ หุ่นยนต์นักบินอวกาศ หรือที่รู้จักกันว่า “Robonaut” ออกแบบมาโดยเฉพาะเพื่อการท่องอวกาศ และได้รับการสร้างสรรค์โดยแผนกซอฟท์แวร์ โรบ็อทติคส์ และซิมมิวเลชั่นแห่งศูนย์อวกาศจอห์นสัน ด้วยความร่วมมือจากสถาบันโครงการวิจัยเทคโนโลยีขั้นสูงด้านกลาโหม (Defense Advanced Research Project Agency) เมื่อ 10 ปีที่แล้ว โดยตลอดทศวรรษที่ผ่านมานาซ่าได้สั่งสมประสบการณ์ และความเชี่ยวชาญในการคิดค้น และพัฒนาเทคโนโลยีที่เกี่ยวกับหุ่นยนต์เพื่อการใช้งานในอวกาศด้านต่างๆ ซึ่งมีศักยภาพสูงในการใช้ประโยชน์ได้ดีเป็นอย่างยิ่งเมื่อนาซ่าได้มีโอกาส ปฏิบัติภารกิจบนดวงจันทร์อีกครั้ง

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

        “สำหรับจีเอ็มแล้ว การพัฒนาร่วมกันครั้งนี้ถือเป็นประเด็นสำคัญในด้านความปลอดภัยของยานพาหนะ คุณภาพ และโรงงานผลิต เมื่อเราพูดถึงยานยนต์เพื่ออนาคต ความก้าวหน้าทางด้านเทคโนโลยี เช่น การควบคุมเทคโนโลยีการมองเห็น (Control Censor and Vision) สามารถนำมาประยุกต์ใช้เพื่อการสร้างสรรค์ระบบความปลอดภัยอันล้ำสมัยสำหรับ ยานยนต์ได้เป็นอย่างดี” มร. อลัน เทาบ์ รองประธานจีเอ็มโกลบอลฝ่ายวิจัยและพัฒนา แสดงความคิดเห็น “วิสัยทัศน์ของการร่วมมือกันครั้งนี้ คือการสำรวจหนทางใหม่ในการสร้างหุ่นยนต์ที่มีความก้าวล้ำทางด้านเทคโนโลยี เพื่อการทำงานร่วมกันกับมนุษย์ได้อย่างมีความสอดคล้องกลมกลืน ซึ่งจะนำมาสู่การสร้างสรรค์ยานพาหนะที่ดีกว่าและมีคุณภาพที่ดียิ่งขึ้นใน ด้านความปลอดภัย ภายใต้สิ่งแวดล้อมการผลิตที่มีศักยภาพในการแข่งขันที่สูงขึ้นไปตามลำดับ”

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

       ด้วยความร่วมมือของทั้งสององค์กร ผนวกกับความช่วยเหลือจากทีมวิศวกรจากบริษัท Oceaneering International Inc. โครงการนี้จะสามารถดำเนินการพัฒนาและสร้างสรรค์หุ่นยนต์ Robonaut รุ่นต่อไปที่มีชื่อเรียกว่า Robonaut2 หรือ R2 โดยเป็นหุ่นยนต์ที่มีคุณสมบัติในการเคลื่อนไหวที่รวดเร็วกว่า มีสมองกลที่ประมวลผลได้ว่องไวกว่า อีกทั้งยังเป็นหุ่นยนต์ที่ใช้เทคโนโลยีในการประดิษฐ์ที่มีความทันสมัยกว่า หุ่นยนต์เจนเนอเรชั่นใหม่นี้สามารถใช้มือของมันในการทำงานต่างๆ ได้เหนือกว่าหุ่นยนต์เลียนแบบมนุษย์รุ่นใดๆ ที่เคยมีมา นอกจากนี้มันยังสามารถทำงานร่วมกับคนได้ทั้งภายใต้สิ่งแวดล้อมต่างๆ บนโลกมนุษย์และในอวกาศ

       ทั้งนาซ่าและจีเอ็มมีประวัติศาสตร์ที่เข้มข้นและยาวนานในเรื่องของความ ร่วมมือทางด้านเทคโนโลยีที่มีความสำคัญต่างๆ มากมาย โดยเริ่มจากศตวรรษที่ 60 ด้วยการพัฒนาระบบนำร่องสำหรับการสำรวจอวกาศหลายครั้งด้วยยานอพอลโล ซึ่งได้กลายเป็นพื้นฐานระบบนำร่องภายในสำหรับยานพาหนะในปัจจุบัน และทางจีเอ็มก็ได้มีบทบาทที่สำคัญในการพัฒนา Lunar Rover Vehicle ซึ่งเป็นยานพาหนะคันแรกที่นำไปใช้ในการสำรวจบนพื้นผิวดวงจันทร์ สำหรับความร่วมมือล่าสุดคือการตั้งเป้าหมายไปยังการพัฒนา และใช้หุ่นยนต์สมองกลเลียนแบบมนุษย์เพื่อขยายโอกาสในการสร้างความก้าวหน้าไป สู่แวดวงเทคโนโลยีหุ่นยนต์ในอีกขั้น

หุ่นยนต์สมองกลแมลงสาบ ฝีมือนักวิจัยไทยในเยอรมนี


       ดร.ปรเมษฐ์ มนูญพงศ์ นักวิจัยไทยจาก Bernstein Center for Computational Neuroscience (BCCN) มหาวิทยาลัยกอตติงเกน ประเทศเยอรมนี กล่าวว่า ได้พัฒนาหุ่นยนต์ต้นแบบ 6 ขา มาจากหลักการทำงานของสิ่งมีชีวิต โดยได้ศึกษาโครงสร้างและหน้าที่การทำงานในส่วนต่างๆ ของแมลงสาบ เพื่อนำมาออกแบบตัวหุ่นยนต์ให้มีลักษณะคล้ายแมลงสาบ คือมี 6 ขา แต่ละขาจะประกอบด้วยข้อต่อ 3 ข้อ ส่วนหัวกับลำตัวส่วนล่างมีข้อต่อช่วยให้เกิดการเคลื่อนที่ในแนวราบและช่วยให้ปีนป่ายข้ามสิ่งกีดขวางพร้อมติดเซ็นเซอร์ต่างๆ เช่น เซ็นเซอร์ที่ใช้ในการตรวจจับแสง ตรวจจับเสียง ตรวจจับสิ่งกีดขวาง ตรวจจับลม ตรวจจับวัตถุที่เข้าใกล้ และตรวจจับการเคลื่อนไหวของลำตัว เป็นต้น โดยทั้งหมดจะทำงานผ่านการควบคุมของพีดีเอ (Personal Digital Assistant : PDA) ที่จำลองมาจากโครงข่ายประสาทของสิ่งมีชีวิต เรียกว่า โครงข่ายประสาทเทียมที่มีเซลล์ประสาทส่วนกลางที่อยู่บริเวณกลางลำตัวสร้างสัญญาณการเคลื่อนไหวขาโดยอัตโนมัติ หุ่นยนต์จะเดินเร็วขึ้นเมื่อมีลมผ่านเซ็นเซอร์ตรวจจับลมที่บริเวณก้น คล้ายแมลงสาบที่วิ่งหนีเร็วมากเมื่อศัตรูเข้ามาทางด้านหลังเนื่องจากมีประสาทสัมผัสตรวจจับลมเช่นกัน

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

        ดร.ปรเมษฐ์กล่าวว่า นอกจากนี้ ยังได้พัฒนาหุ่นยนต์ 2 ขา ที่เรียกว่า "รันบอท (Runbot)" เป็นหุ่นยนต์ที่มีคานรองรับด้านข้าง ประกอบด้วยมอเตอร์ควบคุม 5 ตัว ได้แก่ มอเตอร์ควบคุมการเคลื่อนไหวส่วนบน 1 ตัว มอเตอร์ที่ควบคุมการเคลื่อนไหวของสะโพก 2 ตัว และมอเตอร์ควบคุมการแกว่งของหัวเข่าอีก 2 ตัว ส่วนเท้ามีการออกแบบให้เป็นส่วนโค้ง ขณะเดียวกันยังมีเซ็นเซอร์วัดความหน่วงให้เดินบนพื้นที่ต่างระดับ เดินด้วยความเร็ว 80 เซนติเมตรต่อวินาที จุดเด่นคือ ขณะที่ก้าวเดินขาจะเหยียดตรงคล้ายคน เชื่อว่าจะนำมาช่วยพัฒนางานวิจัยและการศึกษาในประเทศไทย 3 ส่วน คือ 1.การนำองค์ความรู้พื้นฐานการเดินของคนมาใช้พัฒนาขาเทียมที่มีความเฉลียวฉลาดที่ไม่เพียงแค่เดินยังสามารถวิ่งและเล่นกีฬาสำหรับคนพิการได้ด้วย โดยเสียค่าใช้จ่ายในราคาที่เหมาะสม 2.การนำเทคโนโลยีหุ่นยนต์เดินด้วยขาคล้ายสัตว์ นำมาใช้เป็นต้นแบบในการเรียนการสอนให้กับนักเรียนที่สนใจศึกษาด้านหุ่นยนต์ 3.สร้างศูนย์การเรียนรู้เกี่ยวกับระบบโครงข่ายประสาท เพื่อปูพื้นฐานความรู้ ความเข้าใจการทำงานของระบบประสาทในสิ่งมีชีวิตในรูปแบบที่ง่ายมากขึ้น

วันจันทร์ที่ 16 สิงหาคม พ.ศ. 2553

ระบบปฎิบัติการ OS Operating system

ความรู้เบื้องต้นเกี่ยวกับระบบปฏิบัติการ


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

1.1 ระบบปฏิบัติการ (Operating System : OS) คืออะไร

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

1. ฮาร์ดแวร์ ประกอบด้วยทรัพยากรต่างๆ ที่มีในระบบ ได้แก่ อุปกรณ์นำข้อมูลเข้า/ออก หน่วยประมวลผลกลาง และหน่วยความจำ นอกจากนี้ยังหมายความรวมถึง โปรแกรมภาษาเครื่อง และไมโครโปรแกรม ซึ่งเป็นส่วนที่บริษัทผู้ผลิตสร้างขึ้นเพื่อใช้เป็นซอฟร์แวร์ในระดับพื้นฐาน (primitive level) โดยสามารถทำงานได้โดยตรงกับทรัพยากรระบบด้วยคำสั่งง่ายๆ เช่น ADD MOVE หรือ JUMP คำสั่งเหล่านี้จะถูกกำหนดเป็นขั้นตอน การทำงานของวงจรภายในเครื่องคอมพิวเตอร์ ชุดคำสั่งที่ไมโครโปรแกรมต้องแปลหรือตีความหมายจะอยู่ใน รูปแบบภาษาเครื่องและมักเป็นคำสั่งในการคำนวณ เปรียบเทียบ และการควบคุมอุปกรณ์นำข้อมูลเข้า/ออก

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

3. โปรแกรมประยุกต์ คือซอฟต์แวร์หรือโปรแกรมที่ถูกเขียนขึ้นเพื่อการทำงานเฉพาะอย่างที่เราต้องการ เช่น งานส่วนตัว งานทางด้านธุรกิจ งานทางด้านวิทยาศาสตร์ โปรแกรมทางธุรกิจ เกมส์ต่างๆ ระบบฐานข้อมูล ตลอดจนตัวแปลภาษา เราอาจเรียกโปรแกรมประเภทนี้ว่า User's Program โปรแกรมประเภทนี้โดยส่วนใหญ่มักใช้ภาษาระดับสูงในการพัฒนา เช่นภาษา C, C++, COBOL, PASCAL, BASIC ฯลฯ ตัวอย่างของโปรแกรมที่พัฒนาขึ้นใช้ในทางธุรกิจ เช่น โปรแกรมระบบบัญชีจ่ายเงินเดือน (Payroll Program) โปรแกรมระบบเช่าซื้อ (Hire Purchase) โปรแกรมระบบสินค้าคงหลัง (Stock Program) ฯลฯ ซึ่งแต่ละโปรแกรมก็จะมีเงื่อนไขหรือแบบฟอร์มที่แตกต่างกัน ตามความต้องการหรือกฏเกณฑ์ของแต่ละหน่วยงานที่ใช้ ซึ่งโปรแกรมประเภทนี้เราสามารถดัดแปลงแก้ไขเพิ่มเติม (Modifications) ในบางส่วนของโปรแกรมเองได้ เพื่อให้ตรงกับความต้องการของผู้ใช้งานโปรแกรม

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

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

นิยามเกี่ยวกับระบบปฏิบัติการ ได้มีผู้ให้นิยามไว้ดังนี้

1. Andrew S. Tanenbaum:

- An operating system as an extended machine.

- An operating system as a resource manager.

2. Milan Milenkovic:

- An operating system is an organized collection of software extensions of hardware, consisting of control routines for operating a computer and for providing an environment for execution of programs.

3. H. M. Deitel

- Operating systems are primarily resource managers; the main resource they manage is computer hardware in the form of processors, storage, input/output devices, communication devices and data. Operating systems perform many functions such as implementing the user interface, sharing hardware among users, allowing users to share data among themselves, preventing users from interfering with one another, scheduling resources among users, facilitating input/output, recovering from errors, accounting for resource usage, facilitating parallel operations, organizing data for secure and rapid access, and handling network communications.

4. A. Silberschatz , J. Peterson and P. Galvin

- An operating system is a program that acts as an intermediary between a user of a computer and the computer hardware.

- An operating system is similar to a government. The components of a computer system are its hardware, software, and data. The operating system provides the means for the proper use of these resources in the operation of the computer system. Like a government, the operating system performs no useful function by itself. It simply provides an environment within which other programs can do useful work.

5. William S. Davis

- The operating system is a set of software routines that sits between the application program and hardware. Because the operating system serves as a hardware/software interface (Fig. 1.2 ), application programmers and users rarely communicate directly with the hardware.

6. ดร. ยรรยง เต็งอำนวย

- วิธีการปฏิบัติหรือดำเนินงานที่ซับซ้อนซึ่งได้รับการรวบรวมเป็นแบบแผนเดียวกัน

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

7. มงคล อัศวโกวิทกรณ์

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

- กลุ่มโปรแกรมงานที่มีความสามารถสูง เช่น ช่วยในการแบ่งปันการใช้ทรัพยากรต่างๆ ในระบบ และควบคุมจังหวะการทำงานของโปรแกรมที่กำลังรันอยู่เพื่อมิให้เกิดข้อผิดพลาดและรวมถึงควบคุม System Software

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

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

ระบบปฏิบัติการคอมพิวเตอร์


ระบบปฏิบัติการเป็นโปรแกรม (Software) ที่ทําหน้าที่ ควบคุมการทํางานของ เครื่องคอมพิวเตอร์และอุปกรณ์ที่ต่อพ่วงกับเครื่องคอมพิวเตอร์ ซึ่งระบบปฏิบัติการจะทําหน้าที่ เป็น ตัวกลางในการติดต่อกับฮาร์ดแวร์ของเครื่องโดยตรงและโปรแกรมการใช์งานต่าง ๆ


ความหมายของระบบปฏิบัติการ

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


ระบบปฏิบัติการ (Operating System) ระบบต่างๆ

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

1. ระบบปฏิบัติการ DOS (Disk Operating System)

ระบบ DOS เป็นระบบปฏิบัติการที่ถูกพัฒนาขึ้นโดยบริษัท IBM เพื่อให้เป็ระบบปฏิบัติการ

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

ความจําก่อน จากนั้น DOS จะไปทําหน้าที่เป็น ผู้ประสานงานต่าง ๆ ระหว่างผู้ใช้กับอุปกรณ์

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

ปฏิบัติตาม โดยการทํางานจะเป็นแบบ Text mode สั่งงานโดยการกดคําสั่งเข้าไปที่ซีพร็อม (C:\>)

ดังนั้น ผู้ใช้ระบบนี้จึงต้องจําคําสั่งต่าง ๆ ในการใช้งานจึงจะสามารถใช้งานได้ ระบบปฏิบัติการ

DOS ถือได้ว่าเป็นระบบปฏิบัติการที่เก่าแก่. และปัจจุบันนี้มีการใช้งานน้อยมาก


2 .ระบบปฏิบัติการ Microsoft Windows

Windows เป็นระบบปฏิบัติการที่พัฒนาโดยบริษัท Microsoft ซึ่งจะมีส่วนติดต่อกับ ผู้ใช้

(User interface) เป็นแบบกราฟิก หรือเป็นระบบที่ใช้รูปภาพแทนคําสั่ง เรียกว่า GUI (Graphic

User Interface) โดยสามารถสั่งให้เครื่องทํางานได้โดยใช้เมาส์คลิกที่สัญลักษณ์หรือคลิกที่คําสั่ง

ที่ต้องการ ระบบนี้อนุญาตให้ผู้ใช้สามารถใช้งานโปรแกรมได้มากกว่า 1 โปรแกรมในขณะเดียวกัน

ซึ่งถ้าเป็นระบบ DOS หากต้องการเปลี่ยนไปทํางานโปรแกรมอื่น ๆ จะต้องออกจาก โปรแกรม

เดิมก่อนจึงจะสามารถไปใช้งานโปรแกรมอื่น ๆ ได้ ในลักษณะการทํางานของ Windows จะมีส่วนที่เรียกว่า “หน้าต่าง” โดยแต่ละโปรแกรมจะถือเป็นหน้าต่างหนึ่งหน้าต่าง ผู้ใช้สามารถ สลับ

ไปมาระหว่างแต่ละหน้าต่างได้ นอกจากนี้ระบบ Windows ยังให้โปรแกรมต่าง ๆ สามารถ แชร์

ข้อมูลระหว่างกันได้ผ่านทางคลิปบอ์.ด (Clipboard) ระบบ Windows ทําให้ผู้ใช้ ทั่ว ๆไปสามารถ

ทําความเข้าใจ เรียนรู้และใช้งานเครื่องคอมพิวเตอร์ได้ง่ายขึ้น


3. ระบบปฏิบัติการ Unix

Unix เป็นระบบปฏิบัติการที่ใช้บนเครื่อง SUN ของบริษัท SUN Microsystems แต่ไม่ได้เป็นคู่แข่งกับบริษัท Microsoft ในเรื่องของระบบปฏิบัติการบนเครื่อง PC แต๋อย่างใด แต่Unix เป็น

ระบบปฏิบัติการที่ใช็เทคโนโลยีแบบเปิด (Open system) ซึ่งเป็นแนวคิดที่ผู้ใช้ไม่ต้อง ผูกติดกับ

ระบบใดระบบหนึ่งหรืออุปกรณ์ยี่ห้อเดียวกัน นอกจากนี้ Unix ยังถูกออกแบบมาเพื่อ ตอบสนอง

การใช้งานในลักษณะให้มีผู้ใช้ได้หลายคนในเวลาเดียวกัน เรียกว่า ระบบหลายผู้ใช้ (Multiuser

system) และสามารถทํางานได้หลาย ๆ งานในเวลาเดียวกัน ในลักษณะที่เรียกว่า ระบบหลาย

ภารกิจ (Multitasking system)

4. ระบบปฏิบัติการ Linux

Linux เป็นระบบปฏิบัติการเช่นเดียวกับ DOS, Windows หรือ Unix โดยLinuxนั้นจัด ว่าเป็นระบบปฏิบัติการ Unix ประเภทหนึ่ง การที่Linuxเป็นที่กล่าวขานกันมากในช่วงปี 1999 – 2000

เนื่องจากความสามารถของตัวระบบปฏิบัติ การและโปรแกรมประยุกต์ที่ ทํ างานบนระบบ Linux

โดยเฉพาะอย่างยิ่งโปรแกรมในตระกูลของ GNU (GNU’s Not UNIX) และสิ่งที่สําคัญที่สุดก็

คือ ระบบ Linux เป็นระบบปฏิบัติการประเภทฟรีแวร์ (Free ware) คือไม่เสียค่าใช้จ่ายในการซื้อ

โปรแกรม Linux นั้นมี นักพัฒนาโปรแกรมจากทั่วโลกช่วยกันแก้ไข ทําให้การขยายตัวของ Linux

เป็นไปอย่างรวดเร็ว โดยในส่วนของใจกลางระบบปฏิบัติการ หรือ Kernel นั้นจะมีการพัฒนาเป็น

รุ่นที่ 2.2 (Linux Kernel 2.2) ซึ่งได้เพิ่มขีดความสามารถและสนับสนุนการทํางานแบบหลายซีพียู

หรือ SMP (Symmetrical Multi Processors) ซึ่งทําให้ระบบLinux สามารถนําไปใช้สําหรับทํางาน

เป็น Saver ขนาดใหญ่ได้ระบบ Linux ตั้งแต่รุ่น 4 นั้น สามารถทํางานได้บนซีพียูทั้ง 3 ตระกูล คือ

บนซีพียูของ อินเทล (PC Intel) ดิจิทัลอัลฟาคอมพิวเตอร์ (Digital Alpha Computer และซันสปาร์ค

(SUN SPARC) เนื่องจากใช้เทคโนโลยีที่เรียกว่า RPM (Red Hat Package Management) ถึงแม้ว่า

ขณะนี้ Linux ยังไม่สามารถแทนที่ Microsoft Windows บนพีซีหรือ Mac OS ได้ทั้งหมดก็ตาม แต่

ก็มีผู้ใช้ จํานวนไม่น้อยที่สนใจมาใช้และช่วยพัฒนาโปรแกรมประยุกต์บน Linux และเรื่องของการ

ดูแล ระบบ Linux นั้น ก็มีเครื่องมือช่วยสําหรับดําเนินการให้สะดวกยิ่งขึ้น


การเลือกระบบปฏิบัติการให้กับคอมพิวเตอร์ (OS)

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

ระบบปฏิบัติการ (OS) <-- มาจาก Operating System แบ่งออกเป็น 3 กลุ่มหลัก ๆ คือ

1.Unix เป็น OS ที่ใช้สำหรับ เครื่อง Server เพราะเป็น OS ที่มีเสถียรถาพมากที่สุด ไม่เหมาะสำหรับผู้ใช้งานทั่ว ๆ ไปเพราะใช้ยากต้องมีความรู้เกี่ยวกับคอมพิวเตอร์ขั้นสูง และไม่สนับสนุนพวก Multimedia ต่าง ๆ ปัจจุบันมี OS ที่เป็น Unix ที่พัฒนามาให้ใช้งานง่ายเหมาะสมกับผู้ใช้ทั่ว ๆ ไปเพราะจะมีลักษณะ คล้ายกับ Windows ของ Microsoft เราเรียก OS ตัวนี้ว่า Linux เป็น OS ที่สามารถนำมาใช้ได้โดยไม่ต้องเสียค่าลิขสิทธิ์ เพราะเป็น OS ที่แจก Source code เพื่อนำไปพัฒนา ก็มีอยู่หลาย ๆ ค่ายที่นำ Linux ไปพัฒนา แต่ที่ได้รับความนิยมก็คือ Redhat Linux เพราะการใช้งานง่ายคล้าย Windows สำหรับที่เป็นภาษาไทย ตอนนี้ เนคเทค ได้พัฒนาจนสามารถใช้ภาษาไทยได้อย่างมีประสิทธิภาพ..สำหรับใครที่อยากทดลองใช้ก็สามารถ down load ได้จาก http://www.nectec.or.th

2. Apple OS เป็น OS ที่ใช้สำหรับเครื่อง Max เหมาะสำหรับผู้ที่ทำงานเกี่ยวกับการออกแบบ Graffic design อะไรทำนองนั้นไม่เหมาะสำหรับ User อย่างเรา ๆ หรอกครับ..

3. Windows เป็น OS ที่ได้รับความนิยมมากที่สุดถึงประมาณ 90 % ของเครื่องคอมพิวเตอร์ทั่วโลก เพราะมีลักษณะการใช้งานที่ง่าย ไม่ต้องมีความรู้ทางด้านคอมพิวเตอร์มากนัก สนับสนุน Multimedia อย่างสมบูรณ์ ไม่ว่าจะดูหนัง ฟังเพลง เล่นเกม ฯลฯ Windows ในปัจจุบันมีให้เลือกใช้งานหลาย version ด้วยกัน ทั้งที่ให้เป็น Server และ Home use ทั่ว ๆ ดังนี้


>>Home use

1) Windows 3.11 เป็น OS แบบ 16 bit เป็น version แรกของ Windows ที่ใช้ทรัพยากรของระบบน้อยมาก แต่ประสิทธิภาพต่าง ๆ ที่สนับสนุนก็น้อยตามไปด้วย..

2) Windows 95 เป็น OS แบบ 32 bit พัฒนาขีดความสามารถขึ้นมาจากเดิม มีฟีเวอร์ต่าง ๆ เพิ่มเข้ามา แต่ version นี้ยังมี bug มากไม่ค่อยเสถียรพอ..

3) Windows 98 เป็น OS แบบ 32 bit ที่พัฒนามาจาก 95 แก้ไข bug ต่าง ๆ ที่เกิดขึ้น รวมทั้งสนับสนุน Multimedia อย่างสมบูรณ์ มีการนำเอา browser ยอดนิยมอย่าง IE ติดมาให้ด้วย version นี้ได้รับความนิยมเป็นอย่างมาก..

4) Windows 98 SE เป็น OS แบบ 32 bit ที่แก้ไข version 98 ให้สมบูรณ์ยิ่งขึ้น แก้ไข bug และเพิ่มฟีเวอร์ใหม่ ๆ มากมายเช่นสามารถทำเป็น Server แชร์ IP ให้กับเครื่องลูกได้ และนำเอา IE 5 ติดมาด้วย นับว่า version นี้เป็น version ที่ดีที่สุด สมบูรณ์ที่สุด และเสถียรภาพมากที่สุดแล้ว ในตระกูลของ Windows 98

5) Windows Me เป็น OS แบบ 32 bit ที่พัฒนามาสำหรับ Home use โดยเฉพาะ ตัดเอา Ms-Dos ออกไปเพื่อสร้างความมีเสถียรภาพให้กับระบบ สนับสนุน Multimedia สมบูรณ์แบบที่สุด..ตอนนี้ผมเองก็ลองใช้อยู่ครับ..ยอมรับว่าดีมาก ๆ ไม่ค่อยมีปัญหาเหมือน 98 ที่ผ่านมาครับ..

>>Server

1) Windows NT4 มีความเสถียรถาพสูงทำงาน เป็น Srever การใช้งานผู้ใช้ต้องมีความรู้พอสมควรเพราะลักษณะการใช้งานคล้ายกับ Unix แต่จะมีระบบ Graffic ที่ดีกว่า..

2) Windows 2000 เป็น OS ที่เป็น NT พัฒนามาจาก NT4 มีความเสถียรภาพสูง และรองรับ Multimedia ใช้เป็น Server สนับสนุนการใช้งานแบบ Multi user มีระบบรักษาความปลอดภัยที่ดีเยี่ยม..มี 2 version ให้เลือกใช้งานตามความเหมาะสม..

" พูดถึง Windows ผมก็อยากที่จะให้ทุก ๆ ท่านมีความเข้าใจที่ถูกต้องเกี่ยวกับ Windows 98 กับ Windows 2000 ว่าจริง ๆ แล้วลักษณะการใช้งานแตกต่างกัน ดังที่ผมได้พูดไว้แล้ว..บางท่านยังเข้าใจผิดว่า Windows 2000 เป็น version ใหม่ล่าสุดที่มาแทนที่ Windows 98 SE เวลาจะซื้อเครื่องก็มักจะถามว่า เป็น Windows 2000 หรือเปล่า..อะไรทำนองนี้ ผมก็อยากให้ท่านทำความเข้าใจให้ถูกต้องด้วยนะครับ..ตอนนี้ที่เหมาะสำหรับ User ทั่ว ๆ ไป ก็คือ Windows 98 SE ครับ..ดีที่สุดแล้ว.."

ระบบปฏิบัติการของคอมพิวเตอร์

ระบบปฏิบัติการ นี่นะครับ ก็หมายถึง ชุดของโปรแกรมที่อยู่ระหว่างฮาร์ดแวร์และซอฟต์แวร์ประยุกต์ครับ จะมีหน้าที่ในการควบคุมการปฏิบัติงานของฮาร์ดแวร์ และสนับสนุนคำสั่งสำหรับควบคุมการทำงานของฮาร์ดแวร์ประยุกต์ครับ ตัวอย่างของระบบปฏิบัติการนะครับ ก็ได้แก่ MS - DOS , UNIX , LINUX , Windows Me , Windows XP เหล่านี้เป็นต้นครับ ระบบปฏิบัติการนี้นะครับจะทำงานอยู่เบื้องหลังของผู้ใช้ครับ โดยระบบปฏิบัติการนี้ก็มีหน้าที่หลักๆ ดังนี้ครับ

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

• อันที่สองนี้นะครับก็คือจัดการในส่วนของการติดต่อกับผู้ใช้ครับ

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

ระบบปฏิบัติการที่ใช้งานบนเครื่องไมโครคอมพิวเตอร์

ระบบปฏิบัติการที่ใช้งานในปัจจุบันนี้นะครับ จะเป็นระบบปฏิบัติการวินโดว์ครับ เพราะสามารถใช้งานได้ง่าย สะดวก และรวดเร็วด้วยครับ ถึงแม้คนที่ไม่ความรู้เรื่องคอมพิวเตอร์เลย ก็สามารถใช้งานระบบปฏิบัติการวินโดว์ได้ แต่ในที่นี้นะครับผมจะขอกล่าวถึง ระบบปฏิบัติการที่ใช้ในอดีตและในปัจจุบันนะครับแต่ในที่นี่ผมจะขอกล่าวถึง เพียงสองอย่างนะครับ ซึ่งได้แก่ MS – DOS และก็ Microsoft Windows สองอย่างนี้นะครับ

• ในข้อหนึ่งนี้นะครับผมจะกล่าวถึง ระบบปฏิบัติการ MS – DOS ครับ ซึ่ง เมื่อผู้ใช้เปิดเครื่องคอมพิวเตอร์ ระบบปฏิบัติการก็จะถูกเรียกจากฮาร์ดดิสก์มาไว้ใน หน่วยความจำของเครื่องนะครับเพื่อเตรียมที่จะใช้งานได้ทันที ที่ต้องการนะครับ ซึ่งขั้นตอนที่ย้ายระบบปฏิบัติการเข้าสู่หน่วยความจำของเครื่องนั้นเรียกว่า การบูตระบบ ครับ ซึ่งเมื่อเปิดสวิตช์เครื่องคอมพิวเตอร์ขึ้น โปรแกรมเล็ก ๆ ที่อยู่ใน หน่วยความจำรอม จะเรียกเอาส่วนประกอบพื้นฐานที่จำเป็นของระบบปฏิบัติการจากฮาร์ดดิสก์เข้ามาไว้ในหน่วยความจำหลักนะครับ ซึ่งจะได้ผลลัพธ์บนจอภาพเป็น C > หรือ C:\ > นี่นะครับ โดยที่หมายถึงดิสก์ไดรฟ์ที่ทำงานอยู่ และเครื่องหมาย > หมายถึงการเตรียมพร้อมที่จะทำงานจากนั้น ผู้ใช้ก็จะสามารถพิมพ์คำสั่งของ MS – DOS ได้ทันทีครับเพื่อใช้งานคอมพิวเตอร์

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

ระบบปฏิบัติการเครือข่าย

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

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

ระบบปฏิบัติการบนเครื่องคอมพิวเตอร์ขนาดใหญ่

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

ระบบปฏิบัติการแบบเปิด

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

 

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


(Operating System)


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

แนวคิดการทำงานของระบบปฏิบัติการ

การเชื่อมต่อระหว่างระบบปฏิบัติการกับโปรแกรมของผู้ใช้ ( User Program ) ระบบปฏิบัติการได้เตรียมคำสั่งต่างๆในเชื่อมต่อ เรียกว่าคำสั่งเรียกระบบ( System Call ) การทำงานของการเรียกระบบประกอบด้วย การสร้าง การลบและการเรียกใช้งานโปรแกรมต่างๆ โดยอยู่ภายใต้การควบคุมของระบบปฏิบัติการ

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

หน้าที่ของระบบปฏิบัติการ

1. การติดต่อกับผู้ใช้ (User Interface)

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

2. การควบคุมการทำงานของอุปกรณ์และเครื่องคอมพิวเตอร์

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

3. จัดสรรทรัพยากรต่างๆ ในระบบ (Resource Allocator)

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

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

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



พื้นฐานการทำงานของคอมพิวเตอร์

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

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

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

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

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



สถานะของโพรเซส

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

1. โพรเซสในสถานะทำงาน ( Running ) คือ สถานะที่โพรเซสกำลังครอบครองซีพียูอยู่ และ ใช้ซีพียูในการทำงาน โดยใช้ซีพียูทำงานตามคำสั่งในโปรแกรมของโพรเซสนั้น

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

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

ภาพแสดงการเปลี่ยนสถานะของโพรเซส

วิธีการจัดลำดับงาน (Process Scheduling)

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

การจัดลำดับงานแบบมาก่อนได้รับบริการก่อน(First Come First Serve Scheduling: FCFS)

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

การจัดลำดับงานแบบวนรอบ (Round-Robbins Scheduling :RR)

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

การจัดลำดับงานตามลำดับความสำคัญ ( Priority Scheduling )

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

- เจ้าของโพรเซส เช่น โพรเซสผู้ใช้ธรรมดาจะมีระดับความสำคัญต่ำกว่าผู้ใช้ที่เป็นผู้ควบคุมดูแลระบบ

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

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

การจัดลำดับงานแบบหลายลำดับ (Multiple Queues Scheduling)

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

หน้าที่ของระบบปฏิบัติการเกี่ยวกับการจัดการอุปกรณ์

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

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

- กำหนดว่าอุปกรณ์ชิ้นใดใครเป็นผู้ใช้ และใช้นานเท่าใด โดยที่ระบบปฏิบัติการจะให้ใครใช้อุปกรณ์มีเทคนิคการจัดการอุปกรณ์อยู่ 3 ประเภท คือ

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

2 ) การแบ่งปัน (Shared Device ) เป็นการกำหนดให้อุปกรณ์ใช้ได้หลายโปรเซสร่วมกัน ไม่เป็นของโปรเซสใดโปรเซสหนึ่ง

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

- การจัดสรร (Allocate ) เพื่อนมอบหมายอุปกรณ์ชิ้นนั้นให้โปรเซส

- การเรียกคืน (De allocate ) เมื่อโปรเซสที่ครอบครองอุปกรณ์จบลง ระบบปฏิบัติการจะนำอุปกรณ์ต่างๆที่ถูกครอบครองโดยโปรเซสนี้คืนให้ระบบ หมายความว่าอุปกรณ์ไม่ได้ถูกครอบครองโดยที่โปรเซสที่เพิ่งจบสิ้นนี้อีกต่อไป

ประเภทของอุปกรณ์

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

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

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

ประเภทของทรัพยากร

ทรัพยากรสามารถแบ่งออกเป็น 2 กลุ่ม คือ

1. ทรัพยากรที่สามารถปลดปล่อยได้โดยไม่ทำความเสียหายต่องานที่กำลังทำอยู่ (preempt able resource)

ตัวอย่างของทรัพยากรแบบนี้ ได้แก่หน่วยความจำ เช่น สมมติว่า ระบบคอมพิวเตอร์หนึ่งมีหน่วยความจำในส่วนของโปรแกรมผู้ใช้มีขนาด 512K มีเครื่องพิมพ์ 1 เครื่อง และมีโพรเซสขนาด 512K 2 โพรเซส ซึ่งเป็นโพรเซสที่ต้องการใช้งานเครื่องพิมพ์ทั้งคู่ โพรเซสได้ครองเครื่องพิมพ์ก่อน และเริ่มทำการประมวลผลข้อมูลเพื่อนำผลลัพธ์ไปพิมพ์ที่เครื่อง และการประมวลผลยังไม่เสร็จสิ้นก็หมดเวลาควอนตัมก่อน ต้องปลดปล่อยซีพียู และออกจากหน่วยความจำทำให้ยังไม่ได้พิมพ์ผลลัพธ์ เมื่อ A ปลดปล่อยซีพียู โพรเซส B ก็เข้าครองซีพียู และได้ครองหน่วยความจำ แต่ไม่สามารถใช้งานเครื่องพิมพ์ได้ การติดตายจึงเกิดขึ้น เนื่องจาก A ครอบครองเครื่องพิมพ์ ในขณะที่ B ครอบครองหน่วยความจำ แต่ต่างฝ่ายต่างก็คอยการปลดปล่อยทรัพยากรของอีกฝ่ายหนึ่ง ซึ่งภาวะนี้สามารถแก้ไขได้โดยให้ B ออกไปจากหน่วยความจำ เพื่อให้ A เข้าครอบครองเพื่อทำงานเพื่อส่งข้อมูลไปพิมพ์ ซึ่งเมื่อพิมพ์เสร็จ Aจะปลดปล่อยเครื่องพิมพ์ เพื่อให้ B เข้าใช้งานได้

2. ทรัพยากรที่ไม่สามารถปลดปล่อยได้จนกว่าการทำงานจะเสร็จสิ้น (non preempt able resource)

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

การติดตายจะเกิดกับทรัพยากรที่ไม่สามารถปลดปล่อยได้เท่านั้น ซึ่งในการใช้งานทรัพยากรประเภทดังกล่าว จะมีสถานะหลักๆ 3 สถานะคือ

- การร้องขอเพื่อใช้ทรัพยากร

- การใช้งานทรัพยากร

- การปลดปล่อยทรัพยากร

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

ข้อมูลในระบบคอมพิวเตอร์

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

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

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


1. แฟ้มข้อมูล (File)

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

ชื่อแฟ้มข้อมูล

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

โครงสร้างแฟ้มข้อมูล

การจัดโครงสร้างของแฟ้มข้อมูลสามารถจัดได้หลายรูปแบบ แต่ส่วนใหญ่แล้วในทางปฏิบัติ ระบบปฏิบัติการมีวิธีการจัดโครงสร้างที่นิยมใช้งานใน 3 ลักษณะ คือ

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

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

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

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

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

- แฟ้มทั่วไป เป็นแฟ้มที่เก็บข้อมูลต่างๆ ของผู้ใช้ ซึ่งอาจจะเก็บในลักษณะใดลักษณะหนึ่งตามที่ได้แสดงไว้ในรูป

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

- แฟ้มอักขระ แฟ้มอักขระจะมีความเกี่ยวข้องกับการรับหรือการแสดงผลข้อมูลผ่านทางพอร์ทอนุกรมซึ่งจะมีการกระทำกับข้อมูลคราวละ 1 อักขระ เช่น แป้นพิมพ์ เป็นต้น

- แฟ้มของกลุ่มข้อมูล เป็นแฟ้มที่มีการดำเนินการกับข้อมูลในลักษณะ บล็อค หรือกระทำกับข้อมูลในแฟ้มคราวละ 1 กลุ่มข้อมูล เช่น ดิสก์ เป็นต้น

            สำหรับในบทนี้จะกล่าวเน้นเฉพาะแฟ้มทั่วไปเท่านั้น ข้อมูลที่เก็บในแฟ้มทั่วไป อาจจะอยู่ในรูปของรหัสแอสกี หรือที่เรียกว่าแฟ้มแอสกี ( ASCII File )โดยจะมีการเก็บข้อมูลเป็นบรรทัด และแต่ละบรรทัดจะแยกออกจากกันโดยอักขระขึ้นบรรทัดใหม่ ( Carriage Return Character ) หรืออักขระเลื่อนบรรทัด ( Line Feed Character ) และแต่ละบรรทัดก็ไม่จำเป็นที่จะต้องมีจำนวนตัวอักขระเท่ากัน แฟ้มแอสกีนี้สามารถแสดงผลข้อมูลได้เหมือนกับข้อมูลที่มีอยู่ในแฟ้ม กล่าวคือ ข้อมูลที่แสดงผลออกมาไม่ว่าจะโดยอุปกรณ์แสดงผลแบบใด จะมีลักษณะเหมือนกับข้อมูลในแฟ้มนั้นทุกประการ เราสามารถสร้างหรือแก้ไขแฟ้มแอสกีได้โดยใช้อีดิเตอร์ทั่วไป ซึ่งทำได้สะดวกและรวดเร็ว จึงทำให้โปรแกรมใช้งานทั่วๆ ไป นิยมทำงานกับข้อมูลโดยใช้แฟ้มแอสกี นอกจากการที่ทำงานได้ง่ายและสะดวกแล้ว ยังสามารถย้ายข้อมูลไปทำงานกับโปรแกรมอื่นได้ง่าย สำหรับแฟ้มไบนารี่ ( Binary File ) เป็นแฟ้มที่มีข้อมูลภายในไม่ใช่รหัสแอสกี เป็นแฟ้มที่สามารถปฏิบัติการได้
2. ไดเรกทอรี่ (Directory)

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

โครงสร้างของระบบไดเรกทอรี่

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

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

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

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

                (ก)                                   (ข)                                                  (ค)

ภาพแสดงโครงสร้างของไดเรกทอรี่

3. เส้นทาง (Path)

ในการอ้างถึงแฟ้มในไดเรกทอรี่ หรือการอ้างไดเรกทอรี่ย่อยในไดเรกทอรี่ จะอ้างโดยการบอกเส้นทางหรือพาธ ( Path ) ของแฟ้มนั้นๆ เพื่อให้ระบบรู้ว่าเรากำลังอ้างถึงแฟ้มในไดเรกทอรี่ใด ซึ่งจะทำให้สามารถเข้าถึงแฟ้มที่ต้องการได้ถูกต้อง เช่น กรณีที่มีแฟ้มคนละแฟ้มซึ่งมีชื่อเดียวกันแต่อยู่ในคนละไดเรกทอรี่ การบอกเส้นทางจะทำให้ระบบทราบว่าผู้ใช้ต้องการจะอ้างถึงแฟ้มใด การอ้างถึงแฟ้มมี 2 วิธี คือ การอ้างด้วยเส้นทางสมบูรณ์ ( Absolute Path Name ) หรือเส้นทางสัมพัทธ์ ( Relative Path Name ) การอ้างถึงแฟ้มโดยใช้เส้นทางสมบูรณ์เป็นการอ้างถึงแฟ้มโดยเริ่มต้นจากไดเรกทอรี่รากแล้วตามด้วยชื่อไดเรกทอรี่ย่อยต่างๆ ไล่มาตามลำดับชั้นของไดเรกทอรี่จนกระทั่งถึงไดเรกทอรี่ย่อยที่เก็บแฟ้มนั้นแล้วจึงตามด้วยชื่อแฟ้ม เช่นในดอสจะใช้เครื่องหมาย "\" แทนไดเรกทอรี่ราก หรือ ในยูนิกซ์ใช้เครื่องหมาย "/" แทนไดเรกทอรี่ราก เช่นการอ้างเส้นทางสมบูรณ์ในระบบปฏิบัติการดอสจะมีลักษณะการอ้างดังนี้

\textbook\os\file.txt

จากตัวอย่างเครื่องหมาย '\' ตัวแรกหมายถึงไดเรกทอรี่ราก textbook เป็นไดเรกทอรี่ย่อยระดับแรก os เป็นไดเรกทอรี่ย่อยระดับที่สอง และ file.txt คือชื่อแฟ้มที่ต้องการอ้าง

ภาพตัวอย่างการอ้างเส้นทางสัมพัทธ์

ไดเรกทอรี่ย่อยจะมีไดเรกทอรี่ที่ชื่อ "." และ ".." ไดเรกทอรี่ โดย "." จะหมายถึงตัวไดเรกทอรี่ย่อยนั้นเอง และ ".." หมายถึงไดเรกทอรี่ที่อยู่เหนือขึ้นไปหนึ่งระดับ เช่นถ้าไดเรกทอรี่ปัจจุบันคือ os ดังนั้น "." จะหมายถึงตัวไดเรกทอรี่ os และ ".." หมายถึงไดเรกทอรี่ textbook ดังนั้นหากไดเรกทอรี่ปัจจุบันคือ os และต้องการอ้างถึงแฟ้ม unix ในไดเรกทอรี่ research โดยการอ้างเส้นทางสัมพัทธ์ระบบปฏิบัติการดอสจะทำได้ดังนี

..\..\research\unix

จากตัวอ ย่างเครื่องหมาย ".." ตัวแรก หมายถึงให้ย้อนกลับไปในไดเรกทอรี่ชั้นบน 1 ระดับ ซึ่งก็คือย้อนกลับไปที่ไดเรกทอรี่ textbook (ถึงขั้นนี้การทำงานยังคงอยู่ในไดเรกทอรี่ textbook อยู่) ".." ตัวที่สองคือการให้ย้อนกลับไปไดเรกทอรี่ที่เหนือกว่า textbook อีก 1 ระดับ research เป็นการบอกเส้นทางว่าให้เข้าไปในไดเรกทอรี่ research

รูปแบบของระบบแฟ้ม

การจัดเก็บแฟ้มเรียงต่อเนื่องกันตลอดทั้งแฟ้ม ( Continuous Allocation )

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

การจัดเก็บแฟ้มแบบใช้ลิงก์ลิสต์ ( Linked List Allocation )

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

ภาพแสดง การเก็บแฟ้มโดยใช้ลิงค์ลิสต์

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

การจัดระบบแฟ้มแบบเรด (RAID)

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

เรดแบบเงากระจก (Mirroring RAID)

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

เรดแบบแบ่งส่วนแฟ้ม (Striping RAID)

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