บทที่4 Process

posted on 18 Aug 2008 05:08 by 490702464037
แนวคิดของกระบวนการ (Process concept)

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

สถานะของกระบวนการ (Process State)

                สถานะของกระบวนการเกิดขึ้นต่อไปนี้

·         New                     : กระบวนการใหม่กำลังถูกสร้างขึ้น

·         Running               : กระบวนการกำลังทำงานตามคำสั่งในโปรแกรม

·         Waiting                 : กระบวนการกำลังรอคอยให้เหตุการณ์บางอย่างเกิดขึ้น

·         Ready                   : กระบวนการกำลังรอคอยที่จะเข้าใช้หน่วยประมวลผล

·         Terminate           : กระบวนการเสร็จสิ้นการทำงาน

แสดงแผนภาพสถานการณ์ของกระบวนการ

ตารางข้อมูลการประมวลผล (Process Control Block)

                ระบบปฏิบัติการแทนกระบนการต่างๆด้วยตารางข้อมูลของกระบวนการ PCB ซึ่งก็เป็นระเบียนหรือตารางข้อมูลที่ใช้เก็บข้อมูลต่างๆที่เกี่ยวข้องกับแต่ละกระบวนการโดยเฉพาะ ดังรูป

แสดงตารางข้อมูลประมวลผล

ข้อมูลต่างๆที่ปรากฏใน PCB มีดังต่อไปนี้

·         สถานะของกระบวนการ

·         ตัวชี้โปรแกรม

·         รีจิสเตอร์ของหน่วยประมวลผล

·         ข้อมูลในการจัดตารางทำงานของหน่วยประมวลผลกลาง

·         สารสนเทศเกี่ยวกับการจัดการหน่วยความจำ

·         ข้อมูลทางการบัญชี

·         ข้อมูลสถานการณ์รับ-ส่งข้อมูล

แสดงแผนภาพการสับเปลี่ยนซีพียู จากกระบวนการหนึ่งไปสู่อีกกระบวนการหนึ่ง

ตัวจัดตารางของกระบวนการ (Scheduling)

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

·         ตัวจัดตารางระยะยาว ทำห้าที่เลือกกระบวนการจากหน่วยเก็บข้อมูล เพ่อนำเข้าสู่หน่วยความจำหลัก

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

การเปลี่ยนงาน (Context Switch)

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

การสร้างกระบวนการ (Process Creation)

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

แสดงต้นไม้ของกระบวนการบนระบบ UNIX

กระบวนการแม่อาจทำงาน ได้ 2 วิธี คือ

·         กระบวนการแม่ทำงานพร้อมๆ กัน ไปกับกระบวนการลูก

·         กระบวนการแม่คอยจนกระทั่งกระบวนการลูกทั้งหมดสิ้นสุดการทำงาน

การระบุที่ว่างของกระบวนการใหม่ทำได้ 2 วิธี คือ

·         กระบวนการลูกสำเนามาจากกระบวนการแม่

·         กระบวนการลูกแม่โปรแกรมทีถูกโหลดเข้ามาเอง (สร้างเอง)

การเสร็จสิ้นกระบวนการ (Process Termination)

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

                กระบวนการแม่อาจต้องการยกเลิกกระบวนการลูกตัวหนึ่งเพราะ

·         กระบวนการลูกใช้ทรัพยากรที่กระบวนการแม่แบ่งให้จนหมดแล้ว ทรัพยากรไม่พอใช้

·         กระบวนการแม่ไม่ต้องการใช้กระบวนการลูกตัวนี้อีกต่อไป

·         กระบวนการแม่เสร็จสิ้นและระบบปฏิบัติการไม่ต้องการให้กระบวนการลูกทำงานต่อ

การทำงานร่วมกันของกระบวนการ (Cooperating Processes)

                กระบวนการที่ทำงานระบบปฏิบัติการ อาจจะเป็นกระบวนการออิสระ หรือกระบวนการที่ต้องทำงานร่วมกัน

·         กระบวนการอิสระ คือ กระบวนการที่ไม่มีผลกระทบต่ออกระบวนการอื่นในระบบ

·         กระบวนการที่ต้องทำงานร่วมกัน คือ กระบวนการที่มีผลต่อกระบวนการอื่นในระบบ

เหตุผลต่างๆ ที่ทำให้ต้องจัดเตรียมสิ่งแวดล้อมให้กับกระบวนการที่ต้องทำงานร่วมกัน คือ

1.       การร่วมกันใช้ข้อมูลข่าวสาร

2.       การคำนวณรวดเร็วขึ้น

3.       ระบบย่อย

4.       ความสะดวกสบาย

edit @ 18 Aug 2008 07:18:54 by

Comment

Comment:

Tweet

ขอบคุณมากมายคับ!

#12 By ลิขิต แหนงวงศ์ (115.87.185.231) on 2011-01-06 20:45

ขอบคุณสำหรับสิ่งดีๆ คับ!

#11 By คิด (115.87.185.231) on 2011-01-06 20:43

sad smile

#10 By janthana (203.172.179.188) on 2010-06-11 14:25

question

#9 By ชื่ออารายดีน๊า (203.172.179.188) on 2010-06-11 14:08

sad smile question cry big smile open-mounthed smile confused smile angry smile tongue embarrassed surprised smile wink double wink

#8 By (203.172.179.188) on 2010-06-11 14:07

angry smile เย้เย้

#7 By (203.172.179.188) on 2010-06-11 13:01

ห่วยแตก

#6 By กระทืบจัง (202.29.20.105) on 2009-08-05 10:04

เนื้อหา Operating System นี้
ทำไมเหมือนกับ หนังสือ ชื่อ

"OPERATING SYSTEM CONCEPT"
ของผู้แต่ง
SILBRSCHATZ, GALVIN, GAGNE

ของ WILEY เลยครับ
_________________

มีเกือบทุกเรื่องในบทนี้คับ
ยกเว้นเรื่อง

• Interprocess Communication(IPC)
• Direct-Indirect Communication
• Client-Server Communication
• Sockets
• Remote Procedure Calls (RPC)
• Remote Method Invocation (RMI)
• Marshalling Parameters

big smile

#5 By a Student (124.120.109.251) on 2009-08-02 23:52

ขอบจัยน๋า

วันนี้ทำข้อสอบได้เลย

#4 By CS- (202.28.64.1) on 2009-07-30 13:28

เจ๋งไปเลยเพื่อน 5 5 5 5

#3 By bobo (125.25.61.58) on 2009-07-28 21:35

#2 By (117.47.102.114) on 2009-02-06 00:47

#1 By (117.47.102.114) on 2009-02-06 00:47