Trong cùng một tiến trình, các luồng (thread) có thể chia sẻ cho nhau thành phần nào?
Đáp án đúng: D
Trong một tiến trình (process), các luồng (threads) chia sẻ chung không gian địa chỉ bộ nhớ, bao gồm code section (vùng chứa mã lệnh), data section (vùng chứa dữ liệu toàn cục và tĩnh), và các resources khác của hệ điều hành như file descriptors, signals, v.v. Mỗi luồng có stack riêng để lưu trữ các biến cục bộ và thông tin hàm gọi.
Câu hỏi liên quan
* Ready queue: Là hàng đợi chứa các tiến trình đã sẵn sàng để thực thi và đang chờ được cấp phát CPU.
* I/O queue: Là hàng đợi chứa các tiến trình đang chờ hoàn thành các thao tác nhập/xuất (I/O).
Khi một tiến trình đang chạy cần phải chờ một sự kiện nào đó (ví dụ: hoàn thành I/O), nó sẽ tạm thời bị chuyển ra khỏi CPU và đưa vào hàng đợi tương ứng (ví dụ: I/O queue). Khi sự kiện đó hoàn thành, tiến trình sẽ được chuyển trở lại hàng đợi Ready queue để chờ được cấp phát CPU trở lại.
Bộ điều phối tiến trình (scheduler) chịu trách nhiệm chọn một tiến trình từ Ready queue để cấp phát CPU. Do đó, đáp án đúng là B: là việc chọn thời điểm cho CPU thực thi một process nào đó từ Ready queue. Các đáp án khác không chính xác vì:
* Đáp án A: Chọn từ I/O queue là không chính xác. I/O queue chứa các tiến trình đang chờ I/O, không phải các tiến trình sẵn sàng để chạy ngay lập tức.
* Đáp án C: Hệ điều hành không trực tiếp thực thi một process, mà CPU thực thi process đó. Hệ điều hành quản lý và điều phối việc thực thi.
* Đáp án D: Việc nạp process vào bộ nhớ là một bước chuẩn bị trước khi process có thể chạy, không phải là điều phối tiến trình.
Tóm lại, điều phối tiến trình tập trung vào việc chọn tiến trình nào từ Ready queue để cấp CPU, nhằm tối ưu hóa hiệu suất và đáp ứng các tiêu chí khác của hệ thống.
Khi mô tả một giải thuật điều phối tiến trình, hai yếu tố quan trọng cần trình bày là:
- Selection function (Hàm lựa chọn): Xác định tiến trình nào sẽ được chọn để chạy tiếp theo trong số các tiến trình đang ở trạng thái sẵn sàng (ready). Hàm này dựa trên các tiêu chí khác nhau như độ ưu tiên, thời gian chờ, thời gian xử lý còn lại, v.v.
- Decision mode (Chế độ quyết định): Xác định thời điểm hàm lựa chọn được thực thi. Có hai chế độ chính:
- Non-preemptive (Không độc chiếm): Một khi tiến trình đã được chọn để chạy, nó sẽ tiếp tục chạy cho đến khi tự nguyện nhả CPU (ví dụ: khi tiến trình hoàn thành hoặc yêu cầu I/O).
- Preemptive (Độc chiếm): Tiến trình đang chạy có thể bị ngắt và trả CPU lại cho hệ điều hành, ví dụ khi một tiến trình có độ ưu tiên cao hơn vào trạng thái sẵn sàng hoặc khi hết thời gian lượng tử (time slice).
Các yếu tố khác như Response time (Thời gian phản hồi), Turnaround time (Thời gian hoàn thành), Waiting time (Thời gian chờ) và Throughput (Thông lượng) là các metrics (độ đo) được sử dụng để đánh giá hiệu suất của một giải thuật điều phối, chứ không phải là yếu tố cần trình bày để mô tả giải thuật đó.
Phương án A là đáp án chính xác, vì nó mô tả đúng hành vi của chế độ Non-Preemptive: tiến trình giữ CPU cho đến khi nó hoàn thành.
Phương án B sai vì nó mô tả cơ chế của chế độ Preemptive (độc chiếm), nơi hệ điều hành có thể tước CPU khỏi một tiến trình đang chạy.
Phương án C và D liên quan đến việc chiếm dụng và giải phóng bộ nhớ, không liên quan trực tiếp đến khái niệm điều phối tiến trình Non-Preemptive.
Trong giải thuật FCFS (First-Come, First-Served), các tiến trình được thực thi theo thứ tự đến. Trong giải thuật SJF (Shortest Job First), các tiến trình có thời gian thực thi ngắn nhất được ưu tiên thực hiện trước.
Đối với cả FCFS và SJF, thời gian chờ luôn nhỏ hơn hoặc bằng thời gian đáp ứng. Vì thời gian đáp ứng bao gồm cả thời gian chờ và thời gian thực thi. Do đó, đáp án B là chính xác.
Giải thuật FCFS (First-Come, First-Served) thực hiện các tiến trình theo thứ tự đến. Trong trường hợp này, các tiến trình P1, P2, P3 đến theo thứ tự đó.
- P1 chạy đầu tiên với Burst time là 24.
- P2 chạy tiếp theo với Burst time là 3.
- P3 chạy cuối cùng với Burst time là 3.
"Thời gian đáp ứng" (hay còn gọi là thời gian chờ) của một tiến trình là khoảng thời gian tiến trình phải chờ trước khi được thực thi. Đối với P3, nó phải chờ P1 và P2 hoàn thành.
Thời gian đáp ứng của P3 = Burst time của P1 + Burst time của P2 = 24 + 3 = 27.

Bộ Đồ Án Tốt Nghiệp Ngành Trí Tuệ Nhân Tạo Và Học Máy

Bộ 120+ Đồ Án Tốt Nghiệp Ngành Hệ Thống Thông Tin

Bộ Đồ Án Tốt Nghiệp Ngành Mạng Máy Tính Và Truyền Thông

Bộ Luận Văn Tốt Nghiệp Ngành Kiểm Toán

Bộ 370+ Luận Văn Tốt Nghiệp Ngành Kế Toán Doanh Nghiệp

Bộ Luận Văn Tốt Nghiệp Ngành Quản Trị Thương Hiệu
ĐĂNG KÝ GÓI THI VIP
- Truy cập hơn 100K đề thi thử và chính thức các năm
- 2M câu hỏi theo các mức độ: Nhận biết – Thông hiểu – Vận dụng
- Học nhanh với 10K Flashcard Tiếng Anh theo bộ sách và chủ đề
- Đầy đủ: Mầm non – Phổ thông (K12) – Đại học – Người đi làm
- Tải toàn bộ tài liệu trên TaiLieu.VN
- Loại bỏ quảng cáo để tăng khả năng tập trung ôn luyện
- Tặng 15 ngày khi đăng ký gói 3 tháng, 30 ngày với gói 6 tháng và 60 ngày với gói 12 tháng.