เรื่องขอกแหล่งารจัหลายด
การ ฟังCPUฟหรือ นะคะ
CPปแล้วUป
แผป
แล้ว
CPU นะครับ ถือว่าเป็นอุปกแหรณ์ที่สำคัญนะครับ แผอ
ม
ในคอมพิวเตอร์ของเรานะครับ อหฟอิ
ทธิพล
ครับ ก็บทที่ 3 นะครับ ออฟ
ฟิศ
เดี๋ยวสัปดาห์หน้าอปแิห
นึ่ง
ก็อีก 2 บทแล้วก็ก่อนรับปหกล้มริญญาเราจะสอบมิดเทอมนะคะ
สอบเก็บคะแนนนะครับ Local
CPU นะครับ
เราจะเห็นว่ามันมีความสำคัญนะครับ
เป็นหัวใจหลักของคอมพิวเตอร์เลยนะครับ
ดังนั้นการที่เราจะใช้งาน CPU ให้คุ้มค่า
ก็เป็นหน้าที่หนึ่งของพวกเรานะครับ
ที่ต้องจัด
การจัดการอย่างไรดีนะคะ
อันนี้นี่คือหลักการของการจัดการ CPU นะครับ
การจัดการ processor นะครับ
เซ็นเซอร์หรือ CPU ตัวเดียวกันนะครับ
การเปลี่ยนสถานะของ CPU
ถือว่าเป็นมีค่าใช้จ่ายนะครับ
ค่าใช้จ่ายในที่นี้นะครับ ของ CPU นี่
ก็คือเรื่องของเวลานะครับ
การทำงานส่วนใหญ่ของโปรเซสเซอร์นะครับ ของ CPU
ก็คือเรื่องของเวลานะครับ
เราจะทำอย่างไรให้มันใช้งานได้อย่างเต็มที่อย่างมีประสิทธิภาพ
มันก็เป็นหน้าที่ของระบบปฏิบัติ
ตาลนะครับ
ซึ่งตัวของ CPU จะเสียเวลาอยู่ 3
3 งานนะครับ
ก็คือ 1
เก็บค่า register และสถานะของเครื่อง
คือเปิดขึ้นมาปุ๊บ
เก็บไว้แล้วนะครับ
ใช้เวลาอยู่อันที่ 1 นะครับ
อันที่ 2 คัดเลือก
process ในสถานะพร้อม
เพื่อเข้ามาครอบครองตัวมันเอง
นี่ก็เสียเวลานะครับ
อันที่ 3 นะครับ
โหลดค่า register
ในสถานะของเครื่องบน pcb นะครับ
นี่คือ 3 งานที่ทำให้เกิดการเสียเวลาขึ้นนะครับ
หน้าที่อันหนึ่งของระบบปฏิบัติการเลยนะครับ หน้าที่อันหนึ่งเลย
นอกจากการจัดการ process แล้วนะครับ
บทที่ 1 และบทที่ 2 แล้วมาบทนี้
การจัดการ CPU เราจะทำอย่างไรนะครักันบ ในการทำงผลานของ CPU จะมีประสิทธิภาพมผประเทศากหรือน้อย
ขึ้นอยู่กับ CPU
ขึ้นอยู่กับตัวเรา
ปฏิบัติการด้วยนะครับ
เรามาดูกันว่าในการคัดเลือกขา process ในการเข้ามาร้านนะครับ
ถือว่าเป็นหน้าที่อันหนึ่งของ OS
ซึ่งเราเรียกว่าการจัดคิวในระยะสั้น
ก็คือหมายความว่าการจัดคิวในระยะสั้นหมายถึง
ร้านที่ไปเลือกเอาโปรเซส
ครอบครอง CPU
ซึ่งการจัดคิวระยะสั้นก็มีหลายรูปแบบนะครับ
แบบที่ 1 นะครับ แบบที่ 1 เลยก็คือการจัดคิวแบบ
ces
นะครับ
First come First service นะครับ
คือ process ไหนมารอคิวก่อน
ได้เข้าไปครอบครอง CPU ก่อนนะครับ
อันนี้จัดง่ายนะครับ
มี process 10 ตัวมาเข้าคิว
1 2 3 4 5 6 ก็เข้าไปครอบครอง CPU ตามที่ตัวเองต่อคิวเอาไว้นะครับ
แต่ถ้า process ไหนเข้าไปใน calbertCPU แล้ฟหลายว
าน
ทำไมต้องรอนานครับ เนื่องจากว่าตัวของแท้จริงแ Process
สมมุตินะครับ ว่า
catแท้จริงhay
ต้อฟังงการเข้าไปครอบครกับอง CPU 1 วินาที
โปรเซสบีต้องการเข้าไปครอบครอง CPU 2 ชั่วโมง
process C ต้องเข้าไป
ครอบครอง CPU 3 วินาที
นั่นแสดงว่า process C
รอถึง 2 ชั่วโมง
นะครับ
ถึงต้องรอนานนะครับ
การจัดคิวแบบที่ 2 นะครับ การจัดคิวแบบที่ 2
เป็นการจัดคิวแบบ
round Robin นะครับ
การจัดคิวแบบนี้นะครับ
เป็นการจัดคิวแบบวนลูปนะครับ
บนโลก
คือหมายความว่าเข้าไปแล้วนะครับ
มีเวลา quantum มาจาก
นะครับ
เป็นการเข้าไปแบบวน loop
แบบ fcfs
แบบที่ 1 ไม่มีเวลา quantum นะครับ
เวลา quantum คือเวลาอะไรครับ
จำได้ไหม
หายไป 2-3 อาทิตย์
เวลา quantum
เวลาควอนตัมคืออะไร
ผู้ดีตอบหน่อยสิ
เวลาควันตัมคืออะไร
อาทิตย์หน้าก็อีก 2 บท
อาทิตย์ต่อไปก่อนรับปริญญาสอบนะครับ
เวลาควอนตัมคืออะไร ครับ
เวลาที่กำหนดให้ CPU
หรือให้โปรเซสเข้าไปครอบครอง CPU นานเท่าไรนะครับ
เช่น 5 วิ
10 วินาที 15 วินาทีก็ว่าไปนะครับ
การจัดคิวแบบที่ 3 นะครับ
การจัดคิวแบบลำดับความสำคัญ
การจัดคิวแบบนี้จะดูว่า process ที่มารอคิวนั้น
มีความสำคัญมากน้อยขนาดไหนนะครับ
เราจะเป็นคนกำหนดเองครับ ว่า process ใดมีความสำคัญมากน้อยขนาดไหนนะครับ
ยกตัวอย่างเช่น
ซ้ายมือนะครับ
โปรเซส a b c d e
นะครับ
ลำดับความสำคัญเท่ากับ 10
54
มันจะเรียงเข้าตามคิวที่มีลำดับความสำคัญมากน้อยนะคะ
8 สังเกตนะครับ พอโปรเซส a เข้ามาต่อคิว
process มีความสำคัญเท่ากับ 6
มันต้องจัดคิวแบบใหม่แล้วนะครับ
จัดคิวเป็นแบบ
a b e c ดีนะครับ
นี่คือการจัดคิวโดยลำดับความสำคัญนะครับ
เราจะรู้ได้อย่างไรว่าโปรเซสใดมีความสำคัญ
process ใดไม่มีความสำคัญนะครับ
มีความสำคัญมากน้อยต่างกันอย่างไรนะครับ
เรามาดูหลักพิจารณานะครับ
1
ผู้ใช้
เป็นเจ้าของโปรเซส
เป็นคนกำหนดเอง
นะครับ
หรือตัวเราเองกำหนดเองว่า process ใดมีความสำคัญมากน้อยขนาดไหนนะครับ
เช่น
โปรเซส
ของผู้ควบคุม
หรือผู้ดูแลระบบมีความสำคัญมากกว่า process ของ User ธรรมดา
นะครับ
2
ประเภทของโปรเซส
นะครับ
ประเภทของโปรเซส
โปรเซส
ที่
มีความ
อยู่ในโหมดของแบบ
มักมีความสำคัญน้อยกว่าหมดอ่ะ
หมดแบตคืออะไร ครับ
หมดแบต
คือการทำงานแบบลำดับขั้น
นะครับผม ยกตัวอย่างเช่นนะ
สมมตินะสมมตินะ
เราเขียนเกม
เรากำหนดว่าอยู่ในโหมดของ
เรายิงระเบิดออกไป
2 วันจึงรู้ว่าระเบิด
จะโดนฝั่งตรงข้ามหรือเปล่ามันจะคำนวณผลไปเรื่อย ๆ
แต่ถ้าเป็นโหมดโต้ตอบ
ยิงปืน
ส่วนปั๊บ
เหมือนเกมนะครับ
หรือเอาตัวอย่างหนึ่งเช่น
อุบลราชธานีอุบลราชธานี
ผมเดินมาเขกหัวอุบลเลย
ถ้าอยู่ในบทแบต
อุบลต้องคิดว่าเพราะอะไร
อาจารย์ถึงมาเขกหัวผม
แล้วอุบลก็คิดต่อไปว่า
เจ็บแล้วไปหาหมออะไรประมาณนี้เป็นขั้นเป็นตอนไป
แต่ถ้าเป็นในโหมดโต้ตอบ
ผมเขตหวงอุบลรัตน์
อุบลสวนกำปั้นมาปั๊บ
นี่คือโหมด
แบบโต้ตอบนะครับ
ดังนั้นการเขียนโปรแกรมในคอมพิวเตกันฟอร์เรานะครับ
มันมีอยู่หลายฟ้ากดดันหมดนะครับ
ดังนั้นหมดโต้ตอบ
มักจเราะมีความเราสำคัญมากกว่า
หมดแบต
แบต
รอประมวลผลนะครับ
วิธีการพิจารณาลำดับความสำคัญอันที่ 3 ก็คือ
ถ้าเราอยากรู้ว่า
โปรเซสใดสำคัญกว่ากัน
ผู้ใช้ยอมจ่ายตังค์
เราเคยสังเกตไหมครับ
เวลาเราเปิดเว็บไซต์
บางทีเราเปิดขึ้นมาเว็บไซต์บางเว็บไซต์เป็นรูปกากบาท
เคยเห็นไหม
เคยสังเกตไหม
โดยเฉพาะเว็บไซต์ที่เกี่ยวกับการศึกษา
ช้าไหมครับ
เช่นเว็บมหาวิทยาลัยเราอย่างนี้
บางทีเปิดเข้าพร้อม ๆ กันหลาย ๆ พันก่อน
เอาง่าย ๆ ตอนนี้แต่บปริญญาใช่ไหมจะเข้ารับปริญญา
เปิดเข้าลงทะเปผมบียนพร้อม ๆ กันเป็นอย่าแองไรครับ
ร่มไหม
เข้าแทบไม่ได้เลยนะครับไปรษณียบัตร
ผมเคยบอ
ฟหแอมก็บอกม
ประเทศฟหอยประเทศการเขียนโปรแกรมให้เราไปดูการเขียนโปรแกรมของ
โ
ได้ให้ไปดูเว็บโป๊นะ
ไปดู Code source Code ของเว็บ
ทำไมเขาเขียนแล้วมันขึ้นเร็วจังแฟ
ปัญหาทำภาพเคลื่อนไหวภาพนิ่งภาพทุกอย่างนะสังเกตนะ
ปัญหาแต่พอเราเวลาเรามาเขียนเว็บของเราพอเราขึ้นไปปุ๊บ
เป็นอย่างไรครับ
ช้า
บางทีไม่เห็นบางทีไม่มี
เพราะอะไรครับ
เพราะเราไม่จ่ายสตางค์
เว็บนี้เว็บพวกเว็บการพนันเอาง่าย ๆ เว็บการพนันตัวดีเลยเห็นไหมขึ้นทุกที่
เว็บการพนันเขาสามารถทำให้มันเร็วได้
เพราะว่าเขาไปเช่าพื้นที่
เขายอมเสียสตางค์เยอะ
นี่ก็คือมีความสำคัญมากในระบบนะครับ
มีใครเคยเข้าไปดูไหม
เข้าไปดูแล้วอย่าไปเล่นนะนะครับ
ผมเคยสอนนักศึกษาเข้าไปดู
ให้ไปดูโค้ดของมัน
ว่าเขาเขียนอย่างไรนะครับ
แล้วเราเอามาเขียนตามนะครับ
วันที่ 4 นะครับ
วิธีการพิจารณาอันที่ 4 ก็คือเวลา
ระยะเวลาที่โปรเซส
นั้นอยู่ในระบบ
นะครับ
ถ้า process ใด
อยู่ในระบบนาน
นั่นแสดงว่ามันมีความสำคัญนะครับ
เช่นโปรเซสของอะไรนะครับ
เราเปิดคอมพิวเตอร์ขึ้นมาปุ๊บ
process ที่รันก่อนเพื่อนก็คือ process ของระบบปฏิบัติการ
มันจะรันก่อนเพื่อนเลยนะครับ
นั่นแสดงว่ามันมีความสำคัญมากนะครับ
ถ้าเราไม่เชื่อเราก็ลองไปลบนะครับ
ลองไปลบออก
ลบระบบปฏิบัติการออกจากเครื่อง
เครื่องเราก็จะทำงานไม่ได้นะครับ
นอกจากโปรแกรมระบบปฏิบัติการแล้ว
โปรแกรมอะไรอีกครับ
ที่มันอยู่ในระบบนาน ๆ เลย
โปรแกรมอะไรครับ
ลองนึกดูสิ
เปิดขึ้นมาแล้วมีตลอดเห็นตลอดอย่างนี้
นอกจากระบบปฏิบัติการแล้วอะไรอีก
โปรแกรมอะไร
โปรแกรมอะไรเอ่ย
โปรแกรมแอนตี้ไวรัส
คอมทุกเครื่องจะลง antivirus ไว้นะครับ
แอนตี้ไวรัส
ก็จะมีทางใช้ฟรี
เสียสตางค์
ผมแนะนำนะครับ ว่าเราอย่าไปโหลดโปรแกรม
ที่บอกว่าใช้ฟรีตลอดชีวิต
นะครับ
ใช้ฟรีตลอดชาติ
อย่างนี้นะครับ
เขาเขียนไว้นะครับ
ไอ้ตัวนี้นะครับ
สวัสดีนะครับ เป็นไวรัส
ยอมเสียเงิน
500
1,000
นะครับ
ผมเคยโดนมาแล้วนะครับวัตถุประสงค์
ก็คือไม่ยอมเสียตังค์
ใช้ฟรีใช้ฟรีมาตลอด
สุดท้ายตัวมันเองเป็นไวรัสเองนะครับ
นี่คือการจัดคิวแบบเรียงลำดับความสำคัญนะครับ
มีอยู่ 4 อย่าง
ผู้ใช้กำหนดเองนะครับ
อยู่ในระบบนาน ๆ นะครับ
ยอมเสียสตางค์เพิ่มขึ้น
ประเภทของโปรเซสนะครับ
คราวนี้มาดูการจัดคิวแบบที่ 4 นะครับ
แบบที่ 4
การจัดคิวแบบ F
j a n
Sword of death
เป็นอย่างไรการจัดคิวแบบนี้
การจัดคิวแบบนี้เขาบอกเป็นการคัดเลือก
โปรเซสด้วยวิธีการเลือกเอาโปรเซสที่ต้องการเวลาน้อยที่สุด
โปรเซสมารอคิว 1 2 3 4 5
มันจะคำนวณว่าเข้าไปใน CPU แล้ว
เข้าไปครอบครองใน CPU แล้ว
ต้องการเวลาน้อยที่สุด
เช่น protege
ต้องการใช้ 5 วิ
roast Beef
ต้องการใช้ 6 วินาที
Frozen C
ต้องการใช้ 10 วินาที
กำหนดเวลา quantum ไว้ที่ 5 วินาทีนะครับ
โปรเซสที่ต้องการเวลาน้อยที่สุดคืออะไร ครับ
คืออะไร เอ่ย
process a หรือ B หรือ C
ABC
process อะไรครับ
process ที่ต้องการเวลาน้อยที่สุด
ชื่อก็บอกแล้วต้องการเวลาน้อยที่สุด
ก็ต้องเป็น process a นะครับ
การจัดคิวแบบที่ 5 นะครับ
แบบที่ 5
การจัดคิวแบบ F
rt
การจัดคิวแบบ srt นี้
จะคล้าย ๆ กับการจัดคิวแบบ sjn
HRV จะเลือกเอา process
ที่เหลือเวลาน้อยที่สุด
จากตัวอย่างเมื่อกี้
process A
ต้องการ 1 วิ protest B ต้องการ 5 วินาที
ocsc ต้องการ 8 วิ
การจัดคิวแบบ srt บอก
จะเลือกเอาเวลาที่เหลือน้อยที่สุดเมื่อครอบครอง CPU แล้ว
โปรเซส A ใช้ 1 วิหรือว่า 4 วินาทีใช่ไหม
เพราะเวลาควรตั้งกำหนดไว้ 5 วินาที
process B
-