ทที่ 3 การจ่ายงาน (Process Managemnt)
พื้นฐานการทำงานของคอมพิวเตอร
์์


            หัวใจในการทำงานของระบบปฏิบัติการ คือการจัดการให้งานหรือโปรแกรมต่างๆของผู้ใช้

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

ของระบบ เช่น หน่วยประมวลผล  หน่วยความจำ แฟ้มข้อมูล หรืออุปกรณ์รอบข้างต่างๆและเพื่อ

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

ถึงเฉพาะระบบปฏิบัติการของระบบคอมพิวเตอร์แบบซีพียูเดียวเช่นในขณะที่กำลังรันโปรแกรมอยู่

ก็สามารถอ่านข้อมูลจากดิสก์  และพิมพ์งานทางเครื่องพิมพ์ได้พร้อมได้พร้อมๆกับไปด้วยซึ่งในระบบ

หลายโปรแกรม หน่วยประมวลผลจะทำการสลับการทำงานจากโปรแกรมหนึ่งไปอีกโปรแกรมหนึ่ง

        สำหรับคำนิยมที่เป็นที่ยอมรับกันมากที่สุดคือโพรเซสเป็นส่วนของโปรแกรมที่ กำลังทำงาน

แต่เนื่องจากในระบบคอมพิวเตอร์ ณ เวลาหนึ่งอาจจะมีหน้าที่กำลังทำงานได้หลายงาน


         ในการทำงานของระบบคอมพิวเตอร์โปรแกรมทุกโปรแกรมที่ทำงานอยู่รวมถึงโปรแกรม

ที่เป็นของระบบปฏิบัติการเองก็ตามจะมีการทำงานแบบตามลำดับ โดยโปรแกรมที่ได้ครอง

ทรัพยากรเพื่อทำงานนั้นเรียกว่าโพรเซส แต่เนื่องจากในระบบซีพียูเดียวนั้นจะมีซีพียูเพียง

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

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

ภายในเวลาที่ได้รับจัดสรรให้ครองเท่านั้นดังนั้นอาจจะเป็นไปได้ดังนั้นอาจจะเป็นไปได้ว่าเมื่อ

ครองซีพียูครบตามเวลาที่ได้รับจัดสรรแล้วแต่การทำงานของโพรเซสนั้นๆยังไม่เสร็จสิ้นสมบูรณ์

โพรเซสนั้นจะต้องทำการปลดปล่อยซีพียูและคอยการจัดสรรในรอบใหม่ต่อไป


            ในระบบหลายโปรแกรมจะพบว่าในช่วงเวลาหนึ่งมีการทำงานของหลายโพรเซส

ซึ่งแต่ละโพรเซสนั้นจะมีการทำงานที่เหมือนกันหรือแตกต่างกันก็ได้คุณลักษณะหรือ

สถานะที่แตกต่างกันแต่ละโพรเซสจะต้องมีสถานะเป็นอย่างใดอย่างหนึ่ง มี ดังนี้


http://learners.in.th/file/apatsra_june/cpu_pink.jpg

 

        โพรเซสในสถานะพร้อม (Ready) คือ สถานะที่โพรเซสคอยที่จะเข้าครองซีพียู หรือ พร้อม

ที่จะใช้ซีพียูทันทีที่ระบบระบบปฏิบัติการมอบหมายให้ในสถานะที่ไม่มีการทำงานของโพรเซส


โพรเซสในสถานะติดขัด (Blocked) หรือ สถานะพัก (Suspend) คือ สถานะที่โพรเซสติดต่อกับ

อุปกรณ์ หรือ คอยเหตุการณ์ใดเหตุการณ์หนึ่งให้เกิดขึ้น

 

http://202.143.189.147/content2011/wbi1/e_lerning%20_os_sm/image/clip_image001.gif

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



             เมื่อผู้ใช้ต้องการส่งงานให้เครื่องคอมพิวเตอร์โดยการสั่งให้โปรแกรมทำงาน ผ่านทาง

ระบบปฏิบัติการแล้วระบบปฏิบัติการจะมีการเตรียมการที่จะสร้างโพรเซสให้กับงานใหม่ที่ถูก

ส่งเข้า มาโดยแต่ละโพรเซสจะถูกสร้างขึ้นมาได้นั้นจะต้องมีองค์ประกอบต่างๆเช่นคำสั่ง

ของโปรแกรม ข้อมูลที่โปรแกรมต้องการใช้ และต้องมีเนื้อที่ในหน่วยความจำหลักเพียงพอ

สำหรับโพรเซสใหม่ที่กำลังจะเข้า ไปในระบบ

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

เอาเป็นข้อมูลในการจัดการโพรเซส เช่นการจัดลำดับงานการจัดสรรเวลาหรือให้สามารถทำ

งานต่อจากจุดเดิมที่ค้างไว้ได้อย่างถูกต้อง โดยข้อมูลที่เก็บไว้นี้จะมีการปรับปรุงค่าข้อมูลอยู่

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

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

โดยจะทำการเก็บค่าต่างๆที่ทำงานค้างไว้ใน เรจิสเตอร์ ก่อนที่จะปลดปล่อยซีพียุเพื่อให้เป็น

ข้อมูลในการทำงานต่อเมื่อได้ครองซีพียูอีกครั้ง

     ค่าของเรจิสเตอร์ โดยจะทำการเก็บค่าต่าง ๆ ที่ทำงานค้างไว้ในเรจิสเตอร์ก่อนที่จะปลดปล่อยซีพียู

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

จากเรจิสเตอร์ไว้นี้ ก็เนื่องจากเรจิสเตอร์ภายในซีพียูํเป็นหน่วยความจำที่ใช้ในการเก็บข้อมูลชั่วคราว

ในขณะที่ซีพียูทำงานหากโพรเซสใหม่เข้ามาครองและใช้งานซีพียูก็จะทำให้ข้อมูลในเรจิสเตอร์ถูกแทน

ที่ด้วยข้อมูลของโพรเซสใหม่ทำให้โพรเซสเดิมไม่สามารถทำงานต่อได้โปรแกรมเค้าเตอร์( Program

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

ใหม่เวลาเริ่มทำงานของโพรเซสเวลาของซีพียูที่ใช้ไปแล้วหมายเลขประจำตัวของโพเซส

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

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

สามารถอ้างอิงและนำมาใช้งานได้อพนากรต่าง ๆ ได้อย่างถูกต้องพอยน์เตอร์ชี้ไปยังทรัพยากรต่าง ๆ

ที่โพรเซสครอบครองหมายเลขประจำตัวของโพเซส

        ข้อมูลเพื่อการจัดการโพรเซสที่สำคัญ ๆ ได้แก่ไดเร็กทอรี่รากเป็นการเก็บที่อยู่ของโปรแกรมของ 

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

ประจำตัวของโพเซส

Free Web Hosting