วันพุธที่ 2 พฤศจิกายน พ.ศ. 2559

บทที่ 2 โครงสร้างของระบบคอมพิวเตอร์ และโครงสร้างของระบบปฏิบัติการ

บทที่ 2

โครงสร้างของระบบคอมพิวเตอร์ และโครงสร้างของระบบปฏิบัติการ

ระบบคอมพิวเตอร์ในยุคปัจจุบันจะประกอบไปด้วยซีพียูเเละตัวควบคุบอุปกรณ์(Device controller) อยู่จำนวนหนึ่งที่มีการเชื่อมโยงเข้าด้วยกันผ่ายสายส่งข้อมูลที่เรียกกันว่าบัส(Bus)
      ตัวควบคุมอุปกรณ์ เเต่ละตัวมีหน้าทีควบคุมอุปกรณ์ที่ตนรับผิดชอบ เช่น ดิสก์ ไดรฟ์ หรือเครื่องพิมพ์ เป็นต้น 
     
     ซีพียูเเละตัวควบคุมอุปกรณ์ต่างๆล้วนเเต่ต้องการใช้พื้นที่หน่วยความจำทั้งสิ้น 
    
     พื้นที่หน่วยความจำ เป็นพื้นที่ส่วนกลางที่อนุญาตให้อุปกรณ์อื่น เเละโปรเเกรมต่างๆเข้าใช้งานร่วมกันได้ โดยจะผ่านสายส่งข้อมูลที่เรียกว่าบัส
     
     ทั้งซีพียูเเละตัวควบคุมอุปกรณ์ต่างๆสามารถทำงานพร้อมกันได้ ด้วยสาเหตุนี้ จึงต้องมีตัวควบคุมหน่วยความจำ(Memory controller)ที่รับผิดชอบหน้าทีการควบคุมเพื่อป้องกันการเข้าถึงหน่วยความจำให้เป็นไปอย่างถูกต้อง
     
     เมื่อมีการเปิดเครื่อง เพื่อให้คอมพิวเตอร์เริ่มทำงาน เหตการณ์ของการเปิดเครื่องคอมพิวเตอร์จะเรียกว่าการบูต(Boot)
     
     ครั้นเมื่อระบบปฏิบัติการให้โหลดเข้าสู่หน่วยความจำหลักเป็นที่เรียบร้อยเเล้ว Bootstrap Program 
ก็หมดหน้าที่เเล้วจะปล่อยให้ระบบปฏิบัตืการณ์เป็นตัวควบคุมดูเเลระบบ ระบบปฏิบัติการก็จะรอคอยสัญญาณขัดจังหวะ หรือที่เรียกว่า การอินเตอร์รัปต์ (Interrupt)
     
     สำหรับฮาร์ดเเวร์ สามารถส่งสัญญาณอินเตอร์รัปต์ผ่านทาง System Bus มายังซีพียูได้ตลอดเวลา
ในขณะที่ส่วนของซอฟต์เเวร์จะส่งสัญญาณอินเตอร์รัปต์ผ่านทาง System Call เพื่อเอ็กซีคิวต์คำสั่งต้องการ 
     
     เมื่อซีพียูถูกอินเตอร์รัปต์ หมายความว่าซีพียูถูกขัดจังหวะ ดังนั้น ซีพียูก็จะหยุดทำงานที่กำลังทำอยู่ชั่วคราว เพื่อไปทำงานกับอุปกรณ์ที่ส่งสัญญาณขัดจังหวะมา ครั้นเมื่อทำงานเสร็จซีพียูก็จะกลับมาทำงานต่อจากงานเดิมที่ค้างไว้
    
      อินเตอร์รัปต์เวกเตอร์ ประกอบด้วยหมายเลขอินเตอร์รัปต์ เเละตำเเหน่งเเอดเดรสของ
รูทีนอินเตอร์รัปต์ เพื่อเป็นข้อมูลให้ซีพียูรู้ตำเเหน่งของอุปกรณ์ที่จะเข้าไปจัดการ



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

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

 เมื่อการใช้งาน I\O หรือมีการร้องขออุปกรร์ก็จะทำการตรวจสอบข้อมูลในรีจิสเตอร์มาเก็บไว้ในตัวควบคุมอุปกรณ์ก็จะทำการตรวจสอบข้อมูลในรีจิสเตอร์นั้นคืออะไร ให้ทำกิจกรรมอะไร


  DMA (Direct Memory Access) เป็นวิธีการส่งข้อมูลจากอุปกรณ์ I\O ไปยังหน่วยความจำโดยตรง โดยไม่ต้องผ่านซีพียู วิธีนี้ทำให้การส่งข้อมูลที่มีความรวดเร็วยิ่งขึ้น อีกทั้งยังไม่เปลืองเวลาซีพียูด้วย



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


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


  หน่วยความจำแบบ Non-Volatile เช่น ดิสก์ เทป ซีดี ข้อมูลที่บันทึกอยู่ในหน่วยความจำชนิดนี้ยังคงอยู่ต่อไป ถึงแม้จะไม่มีไฟฟ้าเลี้ยงก็ตาม


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

   1.โหมดการทำงานของผู้ใช้ (User Mode)

   2.โหมดการทำงานของระบบ (System Mode\Monitor Mode)

 เพื่อป้องกันไม่ให้ผู้ใช้หรือโปรแกรมเข้าไปจัดการกับอุปกรณ์ I\O อย่างไม่ถูกต้อง จึงมีการ

กำหนดให้คำสั่ง I\O ทั้งหมดเป็นคำสั่งสงวน (Privilege Instructions) นั่นหมายความว่า ผู้ใช้จะไม่สามารถสั่งการกับอุปกรณ์อินพุตและเอาต์พุตได้โดยตรง แต่ถ้าหากผู้ใช้ต้องการใช้งาน I\O จะต้องติดต่อผ่านระบบปฏิบัติการเท่านั้นด้วยการเรียกใช้ผ่าน System Call 

   การป้องกันหน่วยความจำ จะทำได้ด้วยการป้องกันไม่ให้โปรแกรมของผู้ใช้สามารถเข้าไปแก้ไขข้อมูล

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

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

   การศึกา โครงสร้างของระบบปฏิบัติการ สามารถพิจารณาถึงส่วนสำคัญต่างๆ ดังนี้ 

 1. ส่วนประกอบของระบบ


 2. งานบิรการของระบบปฏิบัติการ


 3. การติดต่อระหว่างโปรเซสกันระบบปฎิบัติการ




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

แสดงความคิดเห็น