You are on page 1of 70

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

(Operating Systems)
น.ท.ไพศาล โมลิ สกุ ล
มงคล
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 1
บทที่ 11
ระบบแบบกระจาย
(Distributed System)

ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 2
ระบบแบบกระจาย
ระบบแบบกระจาย
 แนวโน้ มการทำงานของคอมพิวเตอร์ ในปั จจุบนั นันจะมี ้ การทำงานที่เป็ น
ลักษณะของการแบ่งการประมวลผลกันระหว่างโปรเซสเซอร์ หลาย ๆ
โปรเซสเซอร์ ที่ทำงานร่วมกัน
 วิธีพื ้นฐานที่ใช้ สำหรับสร้ างระบบคอมพิวเตอร์ เพื่อให้ มีการทำงานใน
ลักษณะกระจายนี ้มีอยู่ 2 วิธี
 วิธีแรกจะเป็ นระบบที่เรี ยกว่า “มัลติโปรเซสเซอร์ ” (Multiprocessor system)
หรื อระบบที่ยดึ เหนี่ยวกันอย่างเเหนียวแน่น (Tightly coupled system)
 อีกวิธีหนึง่ เรี ยกว่า “ระบบแบบกระจาย” (Distributed system) หรื อระบบที่
ยึดเหนี่ยวกันแบบหลวม (Loosely coupled system)

ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 3
ลัลักกษณะของระบบแบบกระจาย
ษณะของระบบแบบกระจาย
 ระบบแบบกระจาย (Distributed system) หมายถึงกลุม่ ของ
โปรเซสเซอร์ ที่มีการทำงานโดยยึดเหนี่ยวแบบหลวม (Loosely coupled)
 โดยโปรเซสเซอร์ แต่ละตัวจะเชื่อมต่อกันโดยใช้ เครื อข่ายการติดต่อสื่อสาร
 การระบุถงึ ตำแหน่งของโปรเซสเซอร์ ในระบบแบบกระจายนัน้ ถ้ า
โปรเซสเซอร์ นนอยู
ั ้ ่ที่ตำแหน่งที่ไกลออกไปจากจุดที่อยูน่ นจะเรี
ั้ ยกว่าเป็ น
โปรเซสเซอร์ ระยะไกล (Remote)
 ส่วนโปรเซสเซอร์ ที่ตงอยู
ั ้ ่ตำแหน่งที่อยูน่ นจะเรี
ั้ ยกว่าเป็ นโปรเซสเซอร์ ระยะ
ใกล้ (Local)
 ของโปรเซสเซอร์ ในระบบแบบกระจายนันจะมี ้ ขนาดต่าง ๆ กันและมีหน้ า ที่
ต่างกันด้ วย
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 4
ลัลักกษณะของระบบแบบกระจาย
ษณะของระบบแบบกระจาย
 โดยโปรเซสเซอร์ แต่ละจุดนันอาจจะประกอบไปด้
้ วยไมโครโปรเซสเซอร์
(Microprocessor) สถานีงาน (Workstation) เครื่ องมินิคอมพิวเตอร์
(Minicomputer) และเป็ นระบบคอมพิวเตอร์ ที่เป็ นลักษณะใช้ งานทัว่ ๆ ไป
(general-purpose computer)
 คำว่าโหนดสำหรับใช้ ระบุถงึ จุดแต่ละจุดที่ตงของโปรเซสเซอร์
ั้ วัตถุประสงค์
ของระบบแบบกระจายนันก็ ้ เพื่อที่จะสร้ างระบบที่ประสิทธิภาพในสภาพ
แวดล้ อมของการใช้ ทรัพยากรร่วมกัน (shared resources) ของระบบ
 ระบบปฏิบตั ิการในระบบแบบกระจายนันจะมี ้ หน้ าที่ให้ ความช่วยเหลือผู้ใช้
ในการเรี ยกใช้ ทรัพยากรจากโหนดต่าง ๆ ในระบบ

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

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

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

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

ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 9
การเชื
การเชื่อ่อมต่
มต่ออหรื
หรืออโทโปโลยี
โทโปโลยี(Topology)
(Topology)
 การเชื่อมต่ อแบบทุกทิศทาง (Fully Connected Networks)
 การเชื่อมต่ อกันเป็ นบางทิศทาง (Partially Connected Networks)
 การเชื่อมต่ อแบบตามลำดับชัน้ (Hierarchical Networks)
 การเชื่อมต่ อแบบดาว (Star Networks)
 การเชื่อมต่ อแบบวงแหวน (Ring Networks)
 การเชื่อมต่ อแบบบัส (Bus Networks)

ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 10
การเชื
การเชื่ อ่ อมต่
มต่ออแบบทุ
แบบทุกกทิทิศศทาง
ทาง
 การเชื่อมต่ อแบบทุกทิศทาง (Fully Connected Networks) การเชื่อม
ต่อแบบนี ้แต่ละโหนดจะเชื่อมต่อกันโดยตรงกับโหนดอื่น ๆ ในระบบซึง่ ค่า
ใช้ จา่ ยของการเชื่อมต่อวิธีนี ้จะสูง
 เนื่องจากจะต้ องใช้ สายการสื่อสารเชื่อมต่อกันทุก ๆ 2 โหนด แต่อย่างไร
ก็ตามการส่งข้ อมูลในระบบการเชื่อมต่อแบบนี ้จะเร็ว เพราะการส่งข้ อมูล
ระหว่างโหนด 2 โหนดจะใช้ สายการสื่อสารเพียงเส้ นเดียว
 ยิ่งไปกว่านันระบบมี
้ ความเชื่อถือได้ สงู นัน่ คือถ้ าสายการสื่อสารสายใด
สายหนึง่ เสียไประบบก็ยงั ทำงานต่อไปได้

ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 11
การเชื่อมต่ อแบบทุกทิศทาง

ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 12
การเชื
การเชื่ อ่ อมต่
มต่ออกักันนเป็เป็นบางทิ
นบางทิศศทาง
ทาง
 การเชื่อมต่ อกันเป็ นบางทิศทาง (Partially Connected Networks) การ
เชื่อมต่อแบบนี ้จะมีการเชื่อมโยงกันโดยตรงของโหนดเพียงบางคูเ่ ท่านัน้
 การส่งข้ อความจากโหนดหนึง่ ไปยังอีกโหนดหนึง่ อาจจะต้ องส่งผ่านโหนดอื่น
ๆ ซึง่ เป็ นทางผ่านด้ วย ซึง่ จะมีผลทำให้ สง่ ข้ อมูลช้ า
 จากรูปข้ อมูลที่สง่ จากโหนด A ไปยังโหนด D ข้ อมูลจะต้ องส่งผ่านไปยัง
โหนด B และโหนด C ด้ วย
 ถ้ าการเชื่อมต่อจากโหนด B ไปยังโหนด C ล้ มเหลว การเชื่อมต่อจะถูกแยก
ออกเป็ น 2 ระบบย่อย

ระบบย่อยแรกจะประกอบไปด้ วยโหนด A, B และ E

อีกระบบย่อยหนึง่ จะประกอบไปด้ วยโหนด C และ D

ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 13
การเชื่อมต่ อกันเป็ นบางทิศทาง

ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 14
การเชื
การเชื่อ่อมต่
มต่ออแบบตามลำดั
แบบตามลำดับบชัชั้ น้ น
 การเชื่อมต่อแบบนี ้จะมีลกั ษณะเหมือนกับต้ นไม้
 รูปแบบการเชื่อมต่อแบบนี ้มักจะใช้ ในเน็ตเวิร์คขององค์กร สำนักงาน
สาขาเชื่อมต่อกับสำนักงานใหญ่ที่อยูพ่ ื ้นที่เดียวกัน
 แต่ละโหนดยกเว้ นโหนดที่เป็ นราก (root) คือโหนดที่อยูลำ
่ ดับสุดท้ าย จะมี
โหนดแม่ (parent) ไม่ซ้ำกันและโหนดแม่นนจะมี ั ้ โหนดลูก (child) หรื อ
ไม่มีโหนดลูกก็ได้
 การติดต่อกันระหว่างโหนดแม่กบั โหนดลูกจะมีการติดต่อกันโดยตรง
ส่วนโหนดที่เป็ นหลาน (sibling) จะติดต่อกันโดยผ่านโหนดที่เป็ นแม่อีกที
หนึง่

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

ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 16
การเชื่อมต่ อแบบตามลำดับชั้น

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

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

ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 19
การเชื่อมต่ อแบบดาว

ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 20
การเชื
การเชื่อ่อมต่
มต่ออแบบวงแหวน
แบบวงแหวน
 การเชื่อมต่อของแต่ละโหนดนันจะต้
้ องเชื่อมต่อกับโหนดอื่นอย่างน้ อย 2
โหนด
 ลักษณะของวงแหวนอาจจะเป็ นแบบรอบทิศทาง (unidirectional) หรื อ
อาจจะเป็ นแบบ 2 ทิศทาง (bidirectional) ก็ได้
 สำหรับลักษณะการส่งที่เป็ นแบบรอบทิศทางนัน้ แต่ละโหนดสามารถที่จะ
ส่งข้ อมูลไปยังเฉพาะโหนดที่ติดกันได้ โหนดเดียวเท่านัน้
 ทุก ๆ โหนดจะต้ องส่งข้ อมูลไปยังทิศทางเดียวกัน
 การส่งที่เป็ นแบบ 2 ทิศทางแต่ละโหนดสามารถที่จะส่งข้ อมูลไปยังโหนด
ข้ างเคียงได้ ทงั ้ 2 ข้ าง

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

ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 22
(ก) (ข)

การเชื่อมต่ อแบบวงแหวน

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

การเชื่อมต่ อแบบบัส

ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 25
ประเภทของเน็
ประเภทของเน็ตตเวิเวิรร์ ค์ ค(Network
(NetworkTypes)
Types)
 เน็ตเวิร์คสามารถแบ่งเป็ น 2 ประเภทคือ
 เน็ตเวิร์คเฉพาะที่ (Local area networks)
 เน็ตเวิร์คบริเวณกว้ าง (Wide area networks)
 ข้ อแตกต่างระหว่างเน็ตเวิร์คทังสองแบบคื
้ อลักษณะของพื ้นที่ที่จดั ตังระบบ

 ในเน็ตเวิร์คแบบเฉพาะที่นนอุั ้ ปกรณ์ตา่ ง ๆ จะติดตังบนพื
้ ้นที่บริ เวณ
เดียวกัน เช่น ตึกเดียวกันหรื อตึกที่อยูใ่ กล้ ๆ กัน
 ส่วนเน็ตเวิร์คบริ เวณกว้ างอุปกรณ์ตา่ ง ๆ จะติดตังอยู
้ บ่ นพื ้นที่ที่หา่ งไกลกัน
ตัวอย่างเน็ตเวิร์คเฉพาะที่คือ อีเธอร์ เน็ต (Ethernet)
 ส่วนตัวอย่างของระบบเน็ตเวิร์คบริ เวณกว้ างก็คือ อินเทอร์ เน็ต (Internet)

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

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

ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 28
อีอีเเธอร์
ธอร์เเน็น็ตต(Ethernet)
(Ethernet)
 อุปกรณ์ที่ชื่อว่า บริดจ์ (bridge) เป็ นตัวเชื่อมต่ออีเธอร์ เน็ตเข้ าด้ วยกัน
 เพื่อหลีกเลี่ยงการชนกันของการส่งข้ อมูล อีเธอร์ เน็ตสมัยใหม่จะมี
อุปกรณ์ชว่ ยคือสวิตช์ (switch)
 สวิตช์แต่ละตัวจะมีพอร์ ต (port) หลายพอร์ ตซึง่ พอร์ ตนี ้จะใช้ สำหรับต่อ
เข้ ากับคอมพิวเตอร์ อีเธอร์ เน็ต หรื อต่อเข้ ากับสวิตช์ตวั อื่น
 ข้ อมูลจะถูกเก็บไว้ ที่สวิตช์แล้ วข้ อมูลนันจะถู
้ กส่งไปยังพอร์ ตของเครื่ อง
คอมพิวเตอร์ ปลายทาง
 การที่ให้ คอมพิวเตอร์ แต่ละเครื่ องมีพอร์ ตเป็ นของตัวเองนัน้ การชนกันของ
การส่งข้ อมูลก็จะไม่เกิดขึ ้น

ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 29
(ก) อีเธอร์ เน็ตแบบทัว่ ไป (ข) อีเธอร์ เน็ตแบบมีสวิตช์

ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 30
อิอินนเทอร์
เทอร์เเน็น็ตต(Internet)
(Internet)
 อินเทอร์ เน็ตมีจดุ เริ่ มมาจากอาร์ พาเน็ต (ARPANET) ซึง่ เป็ นเน็ตเวิร์คของ
กระทรวงกลาโหมสหรัฐอเมริกาที่สร้ างขึ ้นมาเมื่อปี ค.ศ.1969
 เครื อข่ายอาร์ พาเน็ตมีความเจริญเติบโตรวดเร็วมาก มีคอมพิวเตอร์ เข้ ามา
เชื่อมต่อนับร้ อยตัว
 ซึง่ ทำให้ เน็ตเวิร์คนี ้กลายเน็ตเวิร์คที่ใหญ่ที่สดุ ซึง่ เรี ยกกันว่า อินเทอร์ เน็ต
(Internet)
 ในอินเทอร์ เน็ตจะประกอบไปด้ วยคอมพิวเตอร์ 2 ประเภทคือ
 เครื่ องคอมพิวเตอร์ หลัก (host)
 เราต์ เตอร์ (routers)

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

ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 32
อินเทอร์ เน็ต
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 33
อิอินนเทอร์
เทอร์เเน็น็ตต(Internet)
(Internet)
 จากภาพด้ านบนของภาพจะแสดงถึงสายการสื่อสารหลัก(backbone)
 ในสายการสื่อสารหลักนี ้จะประกอบไปด้ วยเราต์เตอร์ หลาย ๆ ตัว
 เราเตอร์ แต่ละตัวจะเชื่อมต่อกันด้ วยสายการสื่อสารความเร็ วสูง (High-
bandwidth fiber)
 การสื่อสารข้ อมูลบนอินเทอร์ เน็ตนันข้
้ อมูลที่สง่ จะถูกส่งในรูปของชุดข้ อมูล
หรื อแพ็กเกต (packet)
 แต่ละแพ็กเกตจะมีความยาวของข้ อมูลคงที่
 แต่ละแพ็กเกตประกอบไปด้ วยที่อยูป่ ลายทาง ซึง่ ที่อยูป่ ลายทางนี ้จะใช้
เป็ นตัวสำหรับระบุเส้ นทางการส่งข้ อมูล

ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 34
อิอินนเทอร์
เทอร์เเน็น็ตต(Internet)
(Internet)
 เมื่อแพ็กเกตเดินทางมาถึงเราเตอร์ เราเตอร์ จะดูแอ็ดเดรสปลายทางแล้ ว
จะทำการค้ นหาในตารางที่เก็บเส้ นทางเพื่อหาเส้ นทางที่เหมาะสมเพื่อส่ง
แพ็กเกตนัน้
 กระบวนการนี ้จะทำซ้ำไปเรื่ อย ๆ จนกว่าแพ็กเกตจะถึงเครื่ องคอมพิวเตอร์
ปลายทาง

ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 35
เน็เน็ตตเวิเวิรร์ ค์ คโปรโตคอล(Network Protocols))
โปรโตคอล(NetworkProtocols
 กฎเกณฑ์ตา่ ง ๆ ของการติดต่อสื่อสารกันระหว่างเครื่ องคอมพิวเตอร์ ใน
ระบบใดระบบหนึง่ นันเรี
้ ยกว่า “โปรโตคอล” (Protocol)
 ในเน็ตเวิร์คสมัยใหม่จะมีการใช้ โปรโตคอลสแต็ก (Protocol stack) ที่แสดง
ถึงชันต่
้ าง ๆ ของโปรโตคอลที่เรี ยงซ้ อนกัน
 โปรโตคอลในแต่ละชันจะมี้ หน้ าที่แตกต่างกันไป
 เนื่องจากระบบแบบกระจายส่วนใหญ่เกือบทังหมดจะมี
้ การทำงานพื ้นฐาน
เป็ นแบบอินเทอร์ เน็ต
 โปรโตคอลหลักที่ใช้ ในอินเทอร์ เน็ตมี 2 แบบคือ
 IP (Internet Protocol)
 TCP
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 36
เน็เน็ตตเวิเวิรร์ ค์ คโปรโตคอล
โปรโตคอล(Network Protocols))
(NetworkProtocols
 IP (Internet Protocol) จะเป็ นโปรโตคอลข้ อมูลที่ใช้ สำหรับส่งแพ็กเกตไป
ในเน็ตเวิร์คจนถึงปลายทาง
 ข้ อมูลที่สง่ ไปนันอาจจะถู
้ กแยกออกเป็ นข้ อมูลย่อย แล้ วถึงจะส่งไปใน
อินเทอร์ เน็ต ข้ อมูลย่อยทังหมดจะถู
้ กส่งไปตามเส้ นทางต่าง ๆ กัน
 เมื่อข้ อมูลย่อยทังหมดถึ
้ งปลายทางแล้ วข้ อมูลย่อยทังหมดจะถู
้ กประกอบ
เข้ ากันเป็ นข้ อมูลปกติ
 IP ที่ใช้ กน
ั อยูใ่ นปั จจุบนั นี ้มี 2 เวอร์ ชนั คือ v4 และ v6
 ในแบบ v4 นันแพ็ ้ กเกตจะเริ่มต้ นด้ วยส่วนหัวข้ อมูลซึง่ มีความยาว 40 ไบต์

ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 37
เน็เน็ตตเวิเวิรร์ ค์ คโปรโตคอล(Network Protocols))
โปรโตคอล(NetworkProtocols
 โดยส่วนหัวข้ อมูลนี ้จะประกอบไปด้ วยหมายเลขที่อยูข่ องต้ นทางมีความ
ยาว 32 บิต และหมายเลขที่อยูป่ ลายทางมีความยาว 32 บิต ซึง่ เรี ยกว่า
IP Address
 ระบบที่ใช้ ในอินเทอร์ เน็ต ปกติแล้ วจะเขียนที่อยูเ่ ป็ นเลขฐานสิบแบ่งเป็ น 4

ส่วน
 ตัวเลขจะมีคา ่ อยูร่ ะหว่าง 0-255 และคัน่ ด้ วยจุด เช่น 192.31.31.65
 เมื่อชุดข้ อมูลเดินทางถึงเราต์เตอร์ เราต์เตอร์ จะดูถง ึ ที่อยูป่ ลายทางและใช้
ที่อยูป่ ลายทางเป็ นตัวกำหนดเส้ นทางในการส่งข้ อมูล

ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 38
เน็เน็ตตเวิเวิรร์ ค์ คโปรโตคอล(Network Protocols))
โปรโตคอล(NetworkProtocols
 เนื่องจาก IP ไม่มีการส่งข้ อมูลตอบกลับ ฉะนัน้ IP อย่างเดียวยังไม่สามารถ
ทำให้ การส่งข้ อมูลในอินเทอร์ เน็ตเชื่อถือได้
 TCP (Transmission Control Protocol) ซึง ่ เป็ นโปรโตคอลที่อยูช่ นด้
ั ้ านบน
ของ IP ในการเรี ยกใช้ งาน TCP เริ่ มแรกโปรเซสจะต้ องทำการติดต่อไปยัง
โปรเซสระยะไกล
 โดยโปรเซสจะต้ องแจ้ งถึง IP ของเครื่ องและหมายเลขพอร์ ตของเครื่ องที่ใช้

สำหรับการติดต่อ
 เมื่อได้ ทราบถึงหมายเลข IP และหมายเลขพอร์ ตแล้ วถึงจะเริ่ มทำการส่ง

ข้ อมูลได้ โดยที่ข้อมูลนันได้
้ ถกู ส่งไปยังปลายทางที่ถกู ต้ องและข้ อมูลนันไม่ ้
หล่นหายระหว่างที่ทำการส่ง
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 39
เน็เน็ตตเวิเวิรร์ ค์ คโปรโตคอล(Network Protocols))
โปรโตคอล(NetworkProtocols
 ในการสร้ างการติดต่อกับเครื่ องคอมพิวเตอร์ หลักในเน็ตเวิร์คนันจำเป็
้ นที่
จะต้ องทราบหมายเลข IP ของเครื่ องคอมพิวเตอร์ นนั ้
 เนื่องจากการใช้ หมายเลข IP นันไม่้ สะดวกต่อการใช้
 จึงได้ มีการใช้ DNS(Domain Name System) แทนซึง่ จะเป็ นการระบุชื่อ
ของเครื่ องคอมพิวเตอร์ ที่สมั พันธ์กบั หมายเลข IP ของเครื่ องคอมพิวเตอร์
นัน้
 ดังนันคุ
้ ณสามารถใช้ ชื่อ DNS เป็ น asiaaccess.net.th แทนการใช้
หมายเลข IP 203.145.0.1 โดยที่การใช้ DNS จะเป็ นที่นิยมใช้ กนั มาก
เพราะจำง่ายกว่าการจำเป็ นหมายเลข

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

ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 41
ตำแหน่ งของมิดเดิลแวร์ ในระบบแบบกระจาย

ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 42
มิมิดดเดิเดิลลแวร์
แวร์ททเี่ เี่ป็ป็นเอกสาร
นเอกสาร(Document-Based
(Document-BasedMiddleware)
Middleware)
 ซอฟต์แวร์ ประเภทนี ้ที่เป็ นตัวอย่างที่เห็นได้ ชดั และเป็ นที่ร้ ูจกั กันดีคือ เครื อ
ข่ายใยแมงมุม (World Wide Web)
 ผู้ที่เขียนเว็บ (web) ขึ ้นมาเป็ นคนแรกคือ Tim Berners-Lee
 การทำงานของเว็บนันไม่ ้ ยงุ่ ยากโดยจะถือหลักว่าเครื่ องคอมพิวเตอร์
สามารถที่จะมีเอกสารหลาย ๆ เอกสารในเครื่ องได้ ซงึ่ เรี ยกว่า เว็บเพจ
(Web page)
 เว็บเพจแต่ละอันจะประกอบไปด้ วยข้ อความ รูปภาพ เสียง ภาพยนตร์
ฯลฯ และมีไฮเปอร์ ลงิ ค์ (Hyperlink) ซึง่ เป็ นเสมือนตัวชี ้เพื่อเชื่อมโยงไปยัง
เว็บเพจอื่น

ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 43
โครงสร้ างของเว็บเพจทีล่ งิ ค์ ไปเอกสารมากมาย

ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 44
มิมิดดเดิเดิลลแวร์
แวร์ททเี่ เี่ป็ป็นเอกสาร
นเอกสาร(Document-Based
(Document-BasedMiddleware)
Middleware)
 เว็บเพจแต่ละเว็บเพจจะมีที่อยูไ่ ม่ซ้ำกัน
 ที่อยูข่ องเว็บเพจนันเรี
้ ยกว่า URL (Uniform Resource Locator)
 มีรูปแบบเป็ น protocol://DNS-name/file-name โปรโตคอลของเว็บเพจก็
คือ http (Hypertext Transfer Protocol)
 ใน DNS นันจะประกอบไปด้
้ วยชื่อของเครื่ องคอมพิวเตอร์ หลักที่เก็บไฟล์
นันอยู
้ ่ (DNS-name) และตามด้ วยชื่อของไฟล์ที่เรี ยกใช้ (file-name)
 การทำงานพื ้นฐานของเว็บจะเป็ นลักษณะของระบบไคลเอ็นเซิร์ฟเวอร์
(client-server)
 โดยผู้ที่เรี ยกใช้ เว็บจะเป็ นไคลเอ็นต์และที่ตงของเว็
ั้ บก็จะเป็ นเซิร์ฟเวอร์

ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 45
มิมิดดเดิเดิลลแวร์
แวร์ททเี่ เี่ป็ป็นเอกสาร
นเอกสาร(Document-Based
(Document-BasedMiddleware)
Middleware)
 การทำงานของเว็บบราวเซอร์ จะมีขัน้ ตอนดังนีค้ ือ
 บราวเซอร์ จะติดต่อไปยัง DNS เพื่อดูหมายเลข IP ของ www.arm.org
 หมายเลข IP ที่ได้ คือ 203.222.69.161
 บราวเซอร์ จะทำการติดต่อโดยใช้ โปรโตคอล TCP ไปยังพอร์ ต 80 ของ
หมายเลข IP 203.222.69.161
 ทำการหาไฟล์ dl/abc.html ในเซิร์ฟเวอร์
 เซิร์ฟเวอร์ ที่ชื่อว่า www.arm.org จะทำการส่งไฟล์ dl/abc.html มาให้
 การติดต่อก็จะสิ ้นสุดลง
 บราวเซอร์ จะทำการแสดงผลข้ อมูลที่อยูใ่ นไฟล์ dl/abc.html
 บราวเซอร์ จะทำการดึงรูปภาพที่อยูใ่ นไฟล์ dl/abc.html และแสดงผล

ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 46
มิมิดดเดิเดิลลแวร์
แวร์ททเี่ เี่ป็ป็นไฟล์
นไฟล์ (File
(FileSystem-Based
System-BasedMiddleware)
Middleware)
 แนวความคิดพื ้นฐานแรกของการสร้ างเว็บในระบบแบบกระจายนันจะ ้
เป็ นการนำเอาเอกสารจำนวนมากมายมาเชื่อมโยงเข้ าหากัน
 วิธีที่สองคือจะเป็ นการทำให้ ระบบแบบกระจายดูเสมือนเป็ นไฟล์ที่มีขนาด
ใหญ่มาก
 ลักษณะของการสร้ างระบบไฟล์ที่มีขนาดใหญ่ในระบบแบบกระจายนันจะ ้
หมายความว่าในระบบจะมีไฟล์เพียงไฟล์เดียวเท่านันและเป็ ้ นไฟล์ที่มี
ขนาดใหญ่มาก
 ซึง่ ผู้ใช้ ที่อยูท่ วั่ ทุกมุมโลกสามารถที่จะอ่านหรื อเขียนไฟล์นี ้ได้ ตามสิทธิที่ได้
รับอนุญาต

ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 47
รูรูปปแบบการโอนย้
แบบการโอนย้าายไฟล์
ยไฟล์((Transfer
TransferModel)
Model)
 รู ปแบบการโอนย้ ายไฟล์ มี 2 รู ปแบบคือ
 เป็ นวิธีที่เรี ยกว่าการอัพโหลด/ดาวน์โหลด (upload/download)
 วิธีการประมวลผลระยะไกล (remote access model)
 การอัพโหลด/ดาวน์โหลดนันโปรเซสสามารถที
้ ่จะใช้ ไฟล์ได้ โดยที่ไคลเอ็นต์
จะต้ องทำการโอนย้ ายไฟล์ที่ต้องการมาจากเครื่ องเซิร์ฟเวอร์ ที่มีไฟล์นนมา ั้
ที่เครื่ องตัวเองก่อน
 หลังจากนันโปรเซสก็
้ สามารถที่จะอ่านหรื อเขียนไฟล์นนได้
ั ้ ที่เครื่ องตัวเอง
 เมื่อเสร็จสิ ้น ไฟล์ดงั กล่าวก็จะถูกบันทึกกลับไปที่เครื่ องเซิร์ฟเวอร์ เครื่ อง
เดิมที่ได้ ทำการโอนย้ ายไฟล์นนมา ั้

ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 48
รูรูปปแบบการโอนย้
แบบการโอนย้าายไฟล์
ยไฟล์((Transfer
TransferModel)
Model)
 การประมวลผลระยะไกลนัน้ ไฟล์จะยังคงอยู่ที่เครื่ องเซิร์ฟเวอร์ เครื่ อง
ไคลเอ็นต์ที่ต้องการใช้ ไฟล์นนก็ั ้ เพียงแต่เขียนคำสัง่ ส่งไปยังเครื่ อง
เซิร์ฟเวอร์
 การกระทำทังหมดก็้ จะกระทำที่เครื่ องเซิร์ฟเวอร์
 ข้ อดีของการใช้ วิธีอพั โหลด/ดาวน์โหลดก็คือเป็ นวิธีการที่งา่ ย และเป็ นการ
โอนย้ ายไฟล์ทงหมดในคราวเดี
ั้ ยวกันซึง่ จะมีความสะดวกกว่าการโอนย้ าย
ไฟล์ทีละส่วน
 ข้ อเสียของวิธีนี ้คือจะต้ องมีการสิ ้นเปลืองเนื ้อที่ในการจัดเก็บไฟล์ที่โอน
ย้ ายมาไว้ ที่เครื่ องของตนเอง

ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 49
รู ปแบบการอัพโหลด/ดาวน์ โหลด

ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 50
รู ปแบบการประมวลผลระยะไกล

ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 51
โครงสร้
โครงสร้าางของไดเร็
งของไดเร็กกทอรี
ทอรี (The
(TheDirectory
DirectoryHierarchy)
Hierarchy)
 ในระบบไฟล์แบบกระจายนันสนั ้ บสนุนในเรื่ องที่ไดเร็กทอรี หนึง่ สามารถ
จัดเก็บไฟล์ได้ หลายไฟล์
 สิง่ ที่ต้องคำนึงถึงก็คือในเรื่ องของการที่ไคลเอ็นต์แต่ละเครื่ องสามารถมอง
เห็นไดเร็ กทอรี ที่อยูใ่ นเซิร์ฟเวอร์ ลกั ษณะเดียวกัน

ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 52
(ก) (ข) (ค)

่ งเซริ ฟ
(ก) เครือ ่ ง สเี่ หลีย
์ เวอร์ 2 เครือ ่ มหมายถึง
ไดเร็กทอรีและวงกลมหมายถึงไฟล์
(ข) ไคลเอ็นต์ทงั้ 2 เครือ ่ งมองเห็นรูปแบบการจ ัดเก็บ
ไฟล์ ในเซ
ระบบปฏิบต ิ
ั ฟ
ร ์ิ าร
ก เวอร์ เหมือSystems)
(Operating นก ัน 53
การตั
การตั้ง้งชืชื่อ่อ(Naming
(NamingTransparency)
Transparency)
 ปั ญหาหลักปั ญหาหนึง่ ของการตังชื ้ ่อพาธในเน็ตเวิร์คมีรูปแบบอยู่ 2 รูป
แบบ
 รูปแบบแรกคือ Location transparency หมายถึงการตังชื ้ ่อพาธที่เก็บไฟล์
โดยไม่สื่อให้ ผ้ ใู ช้ ทราบว่าไฟล์นนเก็
ั ้ บอยู่ที่ใดในเน็ตเวิร์ค
 เช่น จากพาธ /server1/dir1/dir2/a จะเป็ นการบอกว่าไฟล์ a เก็บอยู่ที่
server1 แต่ไม่ได้ บอกว่าเซิร์ฟเวอร์ นนตั ั ้ งอยู
้ ่ที่ใด
 ซึง่ server1 นันสามารถที
้ ่จะเคลื่อนย้ ายไปติดตังที ้ ่ใดก็ได้ ในเน็ตเวิร์คโดยที่
ไม่ต้องเปลี่ยนชื่อพาธในการเรี ยกใช้ ไฟล์ a
 แต่อย่างไรก็ตามสมมติวา่ ไฟล์ a นันค่ ้ อนข้ างใหญ่และเนื ้อที่วา่ งบน
server1 มีจำกัด
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 54
การตั
การตั้ง้งชืชื่อ่อ(Naming
(NamingTransparency)
Transparency)
 สมมติวา่ เนื ้อที่วา่ งบน server2 ยังมีอีกมาก ระบบอาจจะทำการย้ ายไฟล์ a
ไปไว้ ยงั server2 โดยอัตโนมัติ
 แต่เนื่องจากในส่วนแรกของชื่อพาธนันจะเป็ ้ นชื่อของเซิร์ฟเวอร์ ทำให้ ระบบ
ไม่สามารถย้ ายไฟล์ a ไปไว้ ที่ server2 ได้ โดยอัตโนมัติ
 ถึงแม้ วา่ ใน server2 นันจะมี
้ ไดเร็ กทอรี dir1 และ dir2 ก็ตาม
 ปั ญหาก็คือถ้ าระบบทำการย้ ายไฟล์ a ไปไว้ ที่ server2 โดยอัตโนมัติจะ
ทำให้ พาธเดิมคือ /server1/dir1/dir2/a ต้ องเปลี่ยนเป็ นพาธ
/server2/dir1/dir2/a การเรี ยกใช้ ไฟล์ a ก็จะต้ องเปลี่ยนไปด้ วย
 ในระบบที่อนุญาตให้ ไฟล์สามารถย้ ายที่เก็บได้ โดยไม่ต้องทำการเปลี่ยนชื่อ
พาธนันถื้ อว่าระบบนันเป็ ้ นลักษณะของ Location independence
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 55
สัสัมมพัพันนธภาพของการใช้
ธภาพของการใช้ไไฟล์
ฟล์รร่ ว่ วมกั
มกันน(Semantics
(SemanticsofofFile
File
Sharing)
Sharing)
 ในการเรี ยกใช้ งานไฟล์เดียวกันพร้ อมกันของผู้ใช้ หลายคน จำเป็ นที่จะต้ อง
กำหนดสัมพันธภาพของการอ่าน (read) และการเขียน (write) ไฟล์เพื่อไม่
ให้ เกิดปั ญหาในการใช้ งานไฟล์นนั ้
 สำหรับการใช้ งานในระบบที่เป็ นแบบหน่วยประมวลผลตัวเดียว (single
processor) การอ่านจะต้ องกระทำหลังจากการเขียน ซึง่ ค่าที่ได้ จากการ
อ่านจะเป็ นค่าที่ได้ หลังจากการเขียนแล้ ว
 ในลักษณะคล้ าย ๆ กัน เมื่อมีการ เขียน 2 ครัง้ เกิดขึ ้นใกล้ เคียงกัน แล้ วมี
การอ่านค่าที่ได้ จากการอ่านก็จะเป็ นค่าที่ได้ หลังจากมีการเขียนครัง้ ที่ 2
แล้ ว ซึง่ รูปแบบของการกระทำแบบนี ้เรี ยกว่า ลำดับของความต้ องกัน
(sequential consistency)
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 56
สัสัมมพัพันนธภาพของการใช้
ธภาพของการใช้ไไฟล์
ฟล์รร่ ว่ วมกั
มกันน(Semantics
(SemanticsofofFile
File
Sharing)
Sharing)
 กรณีที่มีเครื่ องเซิร์ฟเวอร์ เครื่ องเดียวในเน็ตเวิร์คและเครื่ องไคลเอ็นต์ไม่ได้
ใช้ วิธีเก็บไฟล์ที่เรี ยกมาจากเครื่ อง เซิร์ฟเวอร์ ไว้ ในแคช
 การอ่านและการเขียนทังหมดนั ้ นจะเกิ
้ ดขึ ้นที่เครื่ องเซิร์ฟเวอร์ ซึง่ ที่เครื่ อง
เซิร์ฟเวอร์ จะมีการควบคุมดูแลการเรี ยกใช้ ไฟล์ให้ เป็ นไปตามลำดับของ
ความต้ องกัน (sequential consistency)
 ในทางปฏิบตั ิการที่มีเครื่ องเซิร์ฟเวอร์ เพียงเครื่ องเดียวในเน็ตเวิร์คนันจะ ้
ทำให้ ประสิทธิภาพของเน็ตเวิร์คนันไม่ ้ ดีพอ
 สามารถแก้ ปัญหานี ้ได้ โดยการอนุญาตให้ เครื่ องไคลเอ็นต์ ทำการก็อปปี ้
ไฟล์ที่ต้องการใช้ บอ่ ย ๆ ไว้ ในแคชส่วนตัวได้

ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 57
สัสัมมพัพันนธภาพของการใช้
ธภาพของการใช้ไไฟล์
ฟล์รร่ ว่ วมกั
มกันน(Semantics
(SemanticsofofFile
File
Sharing)
Sharing)
 กรณีที่ client1 กำลังทำการเขียนไฟล์ในแคชส่วนตัวอยู่ และในขณะนัน้
client2 ก็ทำการอ่านไฟล์เดียวกันนันจากเซิ ้ ร์ฟเวอร์
 ดังนันไฟล์
้ ที่ client 2 อ่านมาจากเซิร์ฟเวอร์ ก็จะเป็ นไฟล์ก่อนที่ไคลเอ็นต์
จะทำการเขียนลงไป
 ถึงแม้ วา ่ แนวความคิดนี ้จะเป็ นแนวทางที่งา่ ยแต่เป็ นวิธีที่ไม่มีประสิทธิภาพ
 สามารถสร้ างกฎเกณฑ์ใหม่ขึ ้นมาคือ โปรเซสจะเรี ยกใช้ ไฟล์ได้ ก็ตอ ่ เมื่อ
ไฟล์นนเปิ
ั ้ ดอยู่ และในขณะที่ไฟล์นนเปิ ั ้ ดอยูโ่ ปรเซสอื่นไม่สามารถเรี ยกใช้
ไฟล์นนได้
ั ้ ต่อเมื่อไฟล์นนปิ ั ้ ดแล้ วโปรเซสอื่น ๆ จึงจะสามารถที่จะเรี ยกใช้
ไฟล์นนได้ั้

ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 58
(ก) แสดงถึงลำดับของความต้ องการ

ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 59
(ข) การเก็บไฟล์ ทอี่ ่ านมาไว้ ในแคชของ client1 ในระบบแบบกระจายทำให้ ไฟล์ ที่
client2 อ่ านมาจากเซิร์ฟเวอร์ เป็ นไฟล์ เก่ าทีย่ งั ไม่ ได้ เปลีย่ นแปลง
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 60
AFS
AFS
 AFS ถูกออกแบบและสร้ างขึ ้นที่มหาวิทยาลัยคาร์ เนกี ้เมล่อน AFS ย่อมา
จาก Andrew File System
 ตังขึ
้ ้นเพื่อเป็ นเกียรติแก่ผ้ กู ่อตังมหาวิ
้ ทยาลัยคือ Andrew Carnegie และ
Andrew Mellon
 โครงการนี ้เริ่ มดำเนินงานเมื่อปี ค.ศ.1980
 จุดมุง่ หมายของโครงนี ้ก็คือเพื่อสร้ างระบบคอมพิวเตอร์ ที่ให้ นกั ศึกษาและ
อาจารย์ของมหาวิทยาลัยใช้ งานร่วมกันบนระบบ UNIX
 ผู้ใช้ AFS แต่ละคนจะมีเครื่ องคอมพิวเตอร์ ใช้ งานเป็ นของตัวเอง ซึง่ เครื่ อง
คอมพิวเตอร์ จะใช้ ระบบปฏิบตั ิการ UNIX

ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 61
AFS
AFS
 โครงสร้ างของไดเร็ กทอรี ของ AFS จะเหมือนกับในระบบ UNIX
 แต่จะมีไดเร็ กทอรี ที่เพิ่มขึ ้นมาคือ /cmu และ /cache
 ในไดเร็กทอรี /cache จะใช้ เก็บไฟล์ที่เป็ น cache remote file ส่วนใน
ไดเร็กทอรี /cmu จะใช้ เก็บชื่อของ cell ที่ใช้ งานร่วมกันได้
 แนวความคิดพื ้นฐานของ AFS ก็คือต้ องการที่จะให้ ผ้ ใู ช้ แต่ละคนสามารถ
กระทำสิง่ ต่าง ๆ บนเครื่ องของตัวเองได้ มากเท่าที่จะมากได้
 เมื่อทำการเปิ ดไฟล์ขึ ้นมา venus จะใช้ คำสัง่ open และทำการดาวน์โหลด
ไฟล์ทงหมดเข้
ั้ ามาในเครื่ องส่วนตัวและบันทึกไฟล์ลงไปในไดเรคทอรี
/cache

ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 62
(ก) ตำแหน่ งของ venus และ vice ใน AFS

ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 63
(ข) มุมมองระบบไฟล์ ของไคลเอ็นต์

ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 64
Publish/Subscribe
Publish/Subscribe
 รูปแบบของ Publish/Subscribe จะประกอบไปด้ วยโปรเซสหลาย ๆ โปร
เซสที่ติดต่อกันอยูใ่ นเน็ตเวิร์คแต่ละโปรเซสสามารถที่จะเป็ นผู้สร้ างข้ อมูล
(information producer) ผู้ใช้ ข้อมูล หรื ออาจจะทำหน้ าที่ทงั ้ 2 อย่าง
 เมื่อโปรเซสที่ทำหน้ าที่เป็ นผู้สร้ างข้ อมูลได้ สร้ างข้ อมูลใหม่ขึ ้นมา โปรเซ
สนันจะทำการส่
้ งข้ อมูลนันไปเก็
้ บไว้ ในเน็ตเวิร์ค
 ที่เก็บข้ อมูลเรี ยกว่า tuple การกระทำแบบนี ้เรี ยกว่า publishing แต่ละ
tuple จะประกอบไปด้ วยฟิ ลด์ (field) คัน่ ด้ วยจุด โปรเซสใดที่ต้องการจะ
ใช้ ข้อมูลนันก็
้ สามารถที่จะ subscribe เพื่อเข้ าถึงข้ อมูลนัน้

ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 65
Publish/Subscribe
Publish/Subscribe
 เมื่อโปรเซสได้ ทำการ publish ข้ อมูลในเน็ตเวิร์คแล้ ว เครื่ องที่อยูใ่ น
เน็ตเวิร์คก็จะทำการก็อปปี ข้ ้ อมูลนันไปไว้
้ ในหน่วยความจำของเครื่ องตัว
เอง
 โปรเซสที่เป็ นผู้สร้ างข้ อมูลก็จะทำการพิจารณาอีกว่ามีโปรเซสไหนที่
ต้ องการข้ อมูลนันบ้
้ าง ก็จะทำการส่งสำเนาของข้ อมูลนันไปให้ ้ แต่ละโปรเซ
สที่ต้องการข้ อมูล
 ในบางครัง้ จำเป็ นที่จะต้ องมีการเก็บ tuple เก่าเพื่อไว้ ใช้ งานภายหลังอีก
ทางหนึง่ ที่จะสามารถทำได้ คือจะต้ องมีการผูกฐานข้ อมูลติดไว้ กบั ระบบ
และให้ ฐานข้ อมูลนัน้ subscribe กับ tuple ทังหมด

ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 66
สถาปัตยกรรม Publish/Subcribe

ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 67
Jini
Jini
 ระบบ Jini ประกอบไปด้ วยอุปกรณ์ที่ทำงานด้ วยตัวเองจำนวน
 อุปกรณ์ Jini สามารถที่จะเชื่อมต่อกันเข้ าเป็ นเน็ตเวิร์คและสามารถใช้ งาน
ได้ ทนั ทีโดยไม่ต้องมีขนตอนยุ
ั้ ง่ ยากสำหรับการติดตัง้
 อุปกรณ์ Jini อาจจะเป็ นเครื่ องคอมพิวเตอร์ ทวั่ ไป หรื ออาจจะเป็ น
เครื่ องพิมพ์ เครื่ องคอมพิวเตอร์ แบบพกพา โทรศัพท์เคลื่อนที่ เครื่ องรับ
โทรทัศน์ หรื ออุปกรณ์ชนิดอื่น ๆ ที่มีซีพียู มีหน่วยความจำ และมีสว่ นที่
เชื่อมต่อเข้ ากับเน็ตเวิร์ค
 เมื่อต้ องการเพิ่มอุปกรณ์เข้ าไปในระบบ Jini นัน้ จะต้ องทำการติดต่อไปที่
ชแพ็กเกตข้ อมูล (packet) ที่อยูใ่ น LAN

ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 68
Jini
Jini
 โดยจะมองหา lookup service ว่ามีอยูห่ รื อไม่ โปรโตคอลที่ใช้ สำหรับหา
lookup service มีชื่อว่า discovery protocol
 lookup service รู้วา่ มีอปุ กรณ์ใหม่ต้องการจะเข้ ามาเชื่อมต่อ lookup
service จะทำการตอบกลับไปเป็ นโค้ ด (code)
 เนื่องจาก Jini เป็ นระบบที่เขียนขึ ้นโดยใช้ Java ฉะนันโค้
้ ดที่เขียนส่งไปเพื่อ
ทำการลงทะเบียนอุปกรณ์ใหม่นนจะเป็ ั้ น JVM (the Java Virtual
Machine language)
 ในช่วงเวลาก่อนที่การลงทะเบียนจะหมดไป อุปกรณ์นนสามารถจะทำการ
ั้
ลงทะเบียนซ้ำได้ อีกถ้ าต้ องการ ซึง่ แนวความคิดของการลงทะเบียนภายใน
ช่วงเวลาที่กำหนดนันเรี้ ยกว่าการ lease
ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 69
Jini
Jini
 ใน Jini นั้นไคลเอ็นต์และอุปกรณ์ Jini จะติดต่อสื่ อสารและประสานการทำงาน
กันโดยใช้
 ในแต่ละ Javaspace จะประกอบไปด้วยเอ็นทรี ย ์ (entry)
 แต่ละเอ็นทรี ยป์ ระกอบไปด้วยฟิ ลด์ต่าง ๆ
 วิธีที่ใช้สำหรับกำหนด Javaspace มีอยู่ 4 วิธีคือ
 Write : เป็ นการเพิม
่ เอ็นทรียใ์ หม่ลงไปใน Javaspace
 Read : เป็ นการก็อปปี้ เอ็นทรียท ์ ต ี่ รงกับ template ออกจาก
Javaspace
 Take : ก็อปปี้ และลบเอ็นทรียท ์ ตี่ รงกับ template
 Notify : เป็ นการแจ ้งให ้ทราบว่าได ้เขียนเอ็นทรียใ์ หม่ลง
Javaspace แล ้ว

ระบบปฏิบต
ั ก
ิ าร (Operating Systems) 70

You might also like