วันอังคารที่ 3 ธันวาคม พ.ศ. 2556

แบบฝึกหัด3

แบบฝึกหัด 3


1.) Multitasking, Multiuser, Multiprocessing คืออะไร

Multitasking คืออะไร 
            ระบบหลายภารกิจ (Multitasking) หมายถึง ความสามารถของระบบปฏิบัติการ(Operating System) ที่จะควบคุมและดําเนินการใหเครื่องคอมพิวเตอร สามารถจัดสรรทรัพยากรของระบบใหประมวลผลขอมูล หรือทํางานไดหลายงานพรอมกัน 
       ประเภทของ Multitasking 
ระบบ Multitasking สามารถแบงไดเปน 2 ประเภท คือ          
        1. Cooperative Multitasking           
        2. Preemptive Multitasking 
โดยสามารถอธิบายลักษณะของ Multitasking ทั้งสองประเภทไดคราวๆ ดังนี้ 
         1. Cooperative Multitasking: จะเปนระบบที่แตละโปรแกรมสามารถควบคุมการทํางานของ CPU นานเทาไหรก็ได จนกวาจะเห็นสมควรปลอย CPU ใหโปรแกรมอื่นใชบาง (เชน อยูในสภาวะไอเดิล) จึงเปลี่ยนไปใหโปรแกรมอื่นทําการควบคุม CPU ตอไป ระบบที่ทํางานแบบนี้จะมีปญหาคอนขางมาก เนื่องจากโปรแกรมบางโปรแกรมอาจไมยอมคืน CPU ใหแกระบบ ทําใหไมสามารถทํางานอื่นไปพรอมๆกันได 
          2. Preemptive Multitasking: ระบบปฏิบัติการจะควบคุมการทํางานของ CPU โดยตรง และทําการแบงเวลา (Time Slice) ใหแตละโปรแกรมตามความเหมาะสม โดยที่จะไมมีโปรแกรมใดสามารถควบคุม CPU ไวแตผูเดียว เปนวิธีที่มี ประสิทธิภาพสูง และไดรับความนิยมมากในปจจุบั


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


Multiprocessing คืออะไร
               Multiprocessing คือการทำงานเพื่อให้ประมวลผลเร็วขึ้น โดยใช้ CPU ที่มากกว่าหนึ่งตัวเข้ามาทำงานร่วมกัน ทำให้คอมพิวเตอร์สามารถทำงานได้หลายๆคำสั่งงานในเวลาเดียวกัน โดยที่ระบบปฏิบัติการจะทำหน้าที่เป็นตัวประสานการทำงานของซีพียูที่มากกว่าหนึ่งตัวนี้ให้ทำงานด้วยกันได้เป็นอย่างดี และถึงแม้ซีพียูตัวใดตัวหนึ่งเสีย ซีพียูตัวอื่นก็ยังสามารถทำงานแทนกันได้ ถือเป็นการร่วมประมวลผลของโปรแกรม โดยใช้หน่วยประมวลผลของคอมพิวเตอร์มากกว่าหนึ่งเครื่องขึ้นไป
     ระบบประมวลผล หมายความว่า การจัดสรรการทำงานของเครื่องคอมพิวเตอร์มากกว่าหนึ่งเครื่องขึ้นไป โดยที่การจัดสรรนั้นสามารถปรับปรุงเปลี่ยนแปลงได้ตลอดเวลา หรืออีกนัยหนึ่งก็คือว่าเครื่องคอมพิวเตอร์ หลายๆ เครื่องสามารถที่จะทำงานบนโปรแกรมเดียวกันในเวลาเดียวกัน
     ระบบประมวลผลแบ่งเป็น 2 ประเภทคือ
     1. ระบบหลายตัวประมวลแบบแบ่งสัดส่วน (Symmetric Multiprocessing) การทำงานของระบบประมวลผลแบบนี้จะทำการแบ่งสัดส่วนการใช้งานของหน่วยความจำและช่องทางในการรับส่งของข้อมูล อีกทั้ง ระบบปฏิบัติการ (Operating System) ก็ถูกแบ่งใช้กันกับระบบประมวลผลอื่นทั้งหมด หรือในอีกความหมายหนึ่งระบบนี้ ถูกเรียกว่าระบบแบ่งปันทุกอย่าง โดยส่วนใหญ่แล้วระบบนี้จะใช้หน่วยประมวลผลไม่เกิน 16 หน่วย
     2. การประมวลผลขนานกันแบบกลุ่ม (Massively Parallel Processing) ระบบ ประมวลผลแบบนี้สามารถใช้หน่วยประมวลผลมากถึง 200 หน่วยหรือมากกว่านั้น ระบบประมวลผลแบบนี้สามารถที่จะทำงานในโปรแกรมใช้งานเดียวกันได้ โดยที่ แต่ละหน่วยประมวลผลมีระบบปฏิบัติการและหน่วยความจำเป็นของตัวเอง แต่การเชื่อมต่อระหว่างกันในการจัดสรรช่องทางรับส่งข้อมูลนั้น อนุญาตให้สามารถสื่อสารกันได้ระหว่างหน่วยประมวลผล แต่โดยการติดตั้งระบบประมวลผลแบบนี้ จะมีความซับซ้อนยุ่งยากกว่า เนื่องจากจะต้องคำนึงถึงการแบ่งส่วนฐานข้อมูลที่ใช้โดย ทั่วไป ไปยังแต่ละหน่วยประมวลผลและจะทำอย่างไรถึงจะจัดสรรงานให้กับแต่ละหน่วยประมวลผลได้อย่างลงตัว ดังนั้นคนทั่วไปจึงเรียกระบบนี้ว่าระบบที่ไม่แบ่งปันอะไรเลย
     ระบบหลายตัวประมวลนั้น บางครั้งอาจจะทำให้เกิดการสับสนกับระบบการทำงานหลายโปรแกรม (Multiprogramming) ซึ่งจริงๆแล้วการทำงานของระบบหลายตัวประมวลนั้น หมายความว่าโปรแกรมเดียวกันแต่ถูกทำงานโดยหน่วยประมวลผลหลายหน่วย ซึ่งต่างกับระบบการทำงานหลายโปรแกรมที่หมายความว่าหน่วยประมวลผลเดียวสามารถทำงานได้หลายโปรแกรม
     ข้อดีของระบบ Multiprocessing
     ระบบหลายตัวประมวลนั้นทำให้เกิดประสิทธิภาพในการทำงานและประสิทธิผลที่เพิ่มขึ้น เพราะบางครั้งการทำงานของโปรแกรมอาจต้องการใช้ทรัพยากรอื่นๆ ถ้าหากใช้ตัวประมวลเดียวก็จะทำให้ต้องรอจนกว่าตัวประมวลนั้นจะว่าง จึงสามารถใช้ทรัพยากรได้



2.) Bios คืออะไร

             Bios คือ  ซอฟต์แวร์ขนาดเล็กที่มีชุดคำสั่งที่จำเป็นสำหรับสำหรับบู๊ตระบบตอนเปิดเครื่อง และเป็นตัวควบคุมการทำงานในระดับต่ำสุด ที่ใกล้ชิดกับฮาร์ดแวร์มากที่สุก อีกทั้งรองรับ และตอบสนองการทำงานกับซอฟท์แวร์ในระดับที่สูงขึ้นไป เช่น ระบบปฏิบัติการ ดังนั้นระบบคอมพิวเตอร์จึงมีการแบ่งการทำงานเป็นระดับต่าง ๆ ได้แก่ Hardware (ฮาร์ดแวร์), Bios (ไบออส), (OS) โอเอส และ Application (แอพพลิเคชัน)
Bios1

สำหรับโปรแกรม Bios นี้จะมีหลายบริษัทพัฒนาออกจำหน่าย ไม่ว่าจะเป็น Award, Phoenix และ AMI ซึ่งโดยทั่วไปจะมีประสิทธิภาพในการควบคุม และรองรับการทำงานเหมือน ๆ กันแต่จะต่างกันที่รายละเอียด เช่นความสามารถในการปรับแต่งระบบ หรือค่าต่าง ๆ ซึ่งจะมากน้อยต่างกัน
          ซอฟต์แวร์ Bios จะถูกเก็บไว้ในชิปหน่วยความจำแบบรอม (ROM Chip) จึงมักเรียกกันว่า "รอมไบออส (ROM Bios)" ชนิดแฟลช (Flash Memory) ซึ่งเป็นหน่วยความจำประเภท "นอนโวลาไทล์ (Nonvolatile)" ที่เก็บข้อมูลได้ถาวร ไม่ต้องการไฟเลี้ยง สามารถเขียนข้อมูลใหม่ได้โดยใช้ไฟฟ้าทำให้ง่ายต่อการอัพเดท
            ชิป ROM แบ่งออกเป็น 3 ประเภท ได้แก่ PROM (Programable ROM), EPROM (Erasable PROM)  และ EEPROM (Electrically Erasable PROM)
         - PROM เป็นหน่วยความจำแบบที่เก็บข้อมูลได้อย่างถาวร และสามารถเขียนข้อมูลได้เพียงครั้งเดียว กระบวนการเขียนทำด้วยกระแสไฟฟ้า และอาจจะทำโดยผู้ขาย หรือผู้ซื้อก็ได้ ต้องมีเครื่องมือพิเศษสำหรับการเขียน PROM
         - EPROM การอ่านหรือการเขียนด้วยกระแสไฟฟ้า เช่นเดียวกับ PROM อย่างไรก็ตาม ก่อนที่ทำการเขียน เซลล์ที่เก็บข้อมูลต้องถูกลบก่อนให้เหมือนกับตอนเริ่มต้น โดยการอาบรังสีอัลตร้าไวโอเลต ดังนั้น EPROM สามารถเปลี่ยนแปลงได้หลายครั้ง ข้อมูลสามารถเก็บได้อย่างไม่มีกำหนด EPROM แพงกว่า PROM แต่ว่ามันมีประโยชน์คือการเปลี่ยนแปลงข้อมูลทำได้หลายครั้ง
         - EEPROM สามารถเขียนได้ตลอดเวลา โดยไม่ต้องบบสิ่งที่มีอยู่ก่อน ข้อมูลไม่สูญหาย และมีความยืดหยุ่นในการเปลี่ยนแปลง EEPROM แพงกว่ามาก EPROM อัพเกรดโดยใช้การ "Flashing" บนชิปจึงถูกเรียกว่า Flash ROM โดยใช้โปรแกรมพิเศษทำการป้อนข้อมูลใหม่ที่ดาวโหลดได้จากผู้ผลิตแล้วบันทึกลงไปบนชิป
          ในปัจจุบัน EEPROM ได้ถูกพัฒนาไปเป็น Flash ROM หรือ Flash Memory สามารถลบ และตั้งโปรแกรมใหม่ได้ด้วยการใช้ไฟฟ้า แต่แทนที่จะต้องลบข้อมูลเดิมทั้งหมดออกก่อน Flash ROM สามารถแก้ไขข้อมูลที่ตำแหน่งต่าง ๆ ได้โดยตรงทันที ทำให้รวดเร็วกว่าเดิมมาก ซึ่งนิยมนำมาใช้เก็บ Bios ในเครื่องรุ่นใหม่
หน้าที่ของ Bios
          เมื่อเปิดเครื่องขึ้นมาครั้งแรก คอมพิวเตอร์จะยังไม่สามารถทำอะไรได้ จนกว่ามันจะได้รับคำสั่ง ณ ขณะนี้ไมโครโพรเซสเซอร์ก็ยังไม่รู้เลยว่า ตัวเองต้องทำอะไร เพราะไม่มีอะไรให้ประมวลผล ซึ่งในช่วงดังกล่าวนี้ระบบปฏิบัติการเองก็ยังไม่ทำงาน มันยังถูกเก็บอยู่ในฮาร์ดดิสก์ จึงเป็นเหตุให้ต้องมี Bios มาเป็นตัวเริ่มต้นการทำงาน เพื่อให้ระบบสามารถดำเนินการได้ โดยในช่วงของการทำงานตอนเริ่มสตาร์ทเครื่อง Bios มีหน้าที่สำคัญหลัก ๆ ดังนี้
          - Power-on Self-Test (POST) จะเป็นการตรวจสอบส่วนประกอบที่เป็นฮาร์ดแวร์ทั้งหมดในระบบ เพื่อให้แน่ใจว่าทุกส่วนพร้อมใช้งานได้
          - เข้าไปกระตุ้นชิป Bios ตัวอื่น ๆ ซึ่งมักจะเป็นของการ์ดที่ติดตั้งอยู่ภายในเครื่อง เช่น กราฟิกการ์ด, สกัซซี่การ์ด (SCSI) ซึ่งการ์ดเหล่านี้มักจะมี Bios อยู่ด้วย
          - จัดการชุดของงานรูทีนระดับล่าง Bios จะทำตัวเป็นล่ามแปลภาษาระหว่าฮาร์ดแวร์กับซอฟต์แวร์ จะช่วยให้ระบบปฏิบัติการสามารถติดต่อสื่อสารกับอุปกรณ์ฮาร์ดแวร์ต่าง ๆ ได้ดี
          - Bios เป็นซอฟต์แวร์ที่มีอินเทอร์เฟสแสดงรายการสำหรับการตั้งค่าของส่วนต่าง ๆ และสามรถนำข้อมูลไปบันทึกไว้ใน CMOS (ซีมอส) ได้ เช่น วันที่ และเวลา, การตั้งค่าฮาร์ดดิสก์, คล็อค (Clock), ไดรว์ซีดีรอม ฯลฯ


3.) Spooling คืออะไร
           ระบบสพูลลิ่ง (Spooling System)  เมื่อมีการคิดค้นเทคโนโลยีเทปแม่เหล็กมาใช้งานร่วมกับเครื่องอ่านบัตรทำให้มีการ ประสิทธิภาพของซีพียูมากขึ้น แต่ก็เพียงเล็กน้อยเท่านั้นโดยจะจำลองข้อมูลจากบัตรลงบนเทป เมื่อโปรแกรมต้องการอ่านบัตร ระบบปฏิบัติการจะเปลี่ยนไปอ่านที่เทปแทน หรือแม้แต่การพิมพ์ก็โหลดข้อมูลลงบนเทปก่อนแล้วจึงพิมพ์ออกทางเครื่องพิมพ์เรียกว่าทุกขั้นตอนจะต้องทำผ่านเทปแม่เหล็กนี้ก่อนทุกงาน ถึงแม้จะทำให้เพิ่มความเร็วของงานได้บ้างแต่ก็มีจุดอ่อนตรงที่โปรแกรมจะต้องทำงานผ่านขั้นตอนต่าง ๆ มากขึ้น จนเมื่อมีการคิดค้นดิสก์ หรือจานแม่เหล็กขึ้นมาช่วยงาน ทำให้หันมาให้งานดิสก์กันมากขึ้นเนื่องจากเหตุผล  ดังนี้ 
         - ถ้าใช้เทปเมื่อทำการประมวลผลข้อมูลในเทปจะทำการโหลดข้อมูลจากเครื่องอ่านบัตร ลงเทปม้วนเดียวกันไม่ได้ 
         - การแอ็กเซสข้อมูลในดิสก์จะทำโดยตรง ในขณะที่การแอ็กเซสข้อมูลในเทปจะเป็นแบบซีเควนเชียล (sequential) หรือเรียงลำดับ 
         - เนื่องจากในดิสก์จะแอ็กเซสข้อมูลโดยตรงและทำงานได้ทันที (โดยมีโปรแกรมพิเศษที่โหลดข้อมูลจากอุปกรณ์พร้อมกับการทำงานของโปรแกรมจากผู้ใช้) แต่สำหรับเทปการโหลดข้อมูลจะต้องทำคนละเวลากับการประมวลผล 
ลักษณะของทำงานของดิสก์กับอุปกรณ์รับ 
        - แสดงข้อมูลที่ต้องคู่ขนานกันไปนี้จะเป็นพื้นฐานของมัลติโปรแกรมมิ่งนั่นเอง ซึ่งอาจจะเรียกว่า “สพูลลิ่ง” (Spooling) ซึ่งมาจากคำว่า Simultaneous Peripheral Operation On – Line ซึ่งหลักการทำงานแบบสพูลลิ่งนี้มีข้อดีที่เห็นได้ชัดเจน 2 ข้อคือ 
       - สพูลลิ่งเป็นระบบสำหรับงานมัลติโปรแกรมมิ่งพื้นฐาน ทำให้มีการใช้ซีพียได้เต็มประสิทธิภาพมากขึ้น โดยจะทำงานพร้อมกันของงาน 2 งาน โดนงานแรกจะประมวลผล ส่วนงานที่สองเป็นการรับ – แสดงผลข้อมูลของอีกงานหนึ่ง (ต่างกับบัฟเฟอร์ตรงที่บัฟเฟอร์จะทำงานพร้อมกันระหว่างประมวลผลกับการรับ – แสดงข้อมูลในงานเดียวกัน) 
       - เนื่องจากมีการแอ็กเซสข้อมูลของดิสก์เป็นแบบโดยตรง ดังนั้นเมื่อมีงานส่งเข้ามาจะถูกจัดเป็น jobpool ทำให้ระบบสามารถเลือกได้ว่าจะประมวลผลงานใดก่อนหลังตามลำดับความสำคัญ (Priority) ดังนั้นงานใดที่มีความสำคัญ เช่น งานของผู้บริหารระบบก็จะทำงานนั้นก่อน หรือเลือกอุปกรณ์ใดสนับสนุนงานนั้นก่อน เป็นต้น