WorksheetsGroup1
Total questions: 20
Worksheet time: 12mins
Inter Process communication còn được gọi là gì
IPC
ICP
IPP
IPCC
2 Models chính của IPC là ?
Shared memory-Cooperating Processes
shared memory-message passing
message passing-Problem of shared data
Problem of shared data-Cooperating Processes
Cooperating Processes:
Các tiến trình độc lập có chia sẻ dữ liệu cho các tiến trình khác không?
Có
Không
Ưu điểm của hợp tác quy trình là?
Chia sẻ thông tin
Tăng tốc độ tính toán
Có thể thực hiện nhiều tác vụ
Tăng tốc độ nhưng giảm hiệu quả
Giá thành rẻ
Đâu là điều không đúng về: problem of shared data
Quyền truy cập đồng thời vào dữ liệu được chia sẻ có thể dẫn đến sự không nhất quán của dữ liệu
Duy trì tính nhất quán của dữ liệu đòi hỏi các cơ chế để đảm bảo thực hiện có trật tự các tiến trình hợp tác
Duy trì nhiều tác vụ, nhiều cơ chế khác nhau để thực hiện và không cần tuân theo trật tự
Cần có cơ chế để các quá trình giao tiếp và đồng bộ hóa các hành động của chúng
Đây là gì?
Race Conditions
Problem of shared data
Cooperating Processes
shared memory
Điều kiện để cung cấp mutual exclusion:
có hai quá trình nào có thể đồng thời bên trong critical region của chúng.
có giả định nào được đưa ra về tốc độ hoặc số lượng CPU.
quá trình nào đang chạy bên ngoài critical regions, nó có thể chặn bất kỳ quá trình nào
Không có quá trình nào phải đợi mãi để đi vào critical region của nó.
Phần của chương trình nơi bộ nhớ dùng chung được truy cập được gọi là?
Critical Regions
Regions Critical
Mutual exclusion
Critical Section
Peterson’s Solution là
à một thuật toán lập trình riêng biệt để bổ trợ lẫn nhau
là một thuật toán lập trình đồng thời để loại trừ lẫn nhau
là một thuật toán lập trình riêng biệt để loại trừ lẫn nhau
là một thuật toán lập trình đồng thời để bổ trợ lẫn nhau
Thuật toán sử dụng hai biến là
flag và turn
flga và tunr
fgla và trun
flag và trun
SLEEP hay WAKEUP là gì
là những hành động tách biệt, không thể bị ngắt quãng
là những hành động tách biệt, có thể bị ngắt nửa chừng trong quá trình xử lý
là những hành động cùng mục đích, có thể bị ngắt
là những hành động cùng mục đích, không thể bị ngắt quãng
Khái niệm semaphore :
đảm bảo nhiều tiến trình cùng truy xuất đến miền găng mà không có sự mâu thuẫn truy xuất.
Không đảm bảo nhiều tiến trình cùng truy xuất và không có sự mâu thuẫn
đảm bảo nhiều tiến trình cùng truy xuất đến miền găng mà có rất ít khả năng xảy ra sự mâu thuẫn truy xuất.
Không đảm bảo nhiều tiến trình cùng truy xuất
Để thực hiện đồng bộ hóa, tất cả các tiến trình cần phải áp dụng cùng cấu trúc chương trình sau đây (e(s) = 1):
While (TRUE) {
Downs(s);
Critical- section ();
Up(s);
Noncritical- section ();
}
While (TRUE) {
Down(s);
Critical- sections ();
Up(s);
Noncritical- section ();
}
While (TRUE) {
Down(s);
Critical- section ();
Up(s);
Noncritical- sections ();
}
While (TRUE) {
Down(s);
Critical- section ();
Up(s);
Noncritical- section ();
}
Hai tiến trình chia sẻ một semaphore s, khởi gán e(s) là 0.
- Hai tiến trình có cấu trúc như sau:
While (TRUE) {
Down(s); // Chờ P1
Job2();
}
While (TRUE) {
Job1();
Up(s); // Đánh thức P2
}
While (TRUE) {
Down; // Chờ P1
Job2();
}
While (TRUE) {
Job1();
Up(s);} // Đánh thức P2
}
nếu lập trình viên vô tình đặt các primitve Down và Up sai vị trí, thứ tự trong các chương trình thì sẽ xảy ra
Không sao và vẫn được lưu trữ
Bị xóa vĩnh viễn
Bị khóa vĩnh viễn
Dữ liệu bị đảo lộn linh tinh
Monitor là
(a)
Cấu trúc tiến trình yêu cầu tài nguyên trong giải pháp message:
While (TRUE) {
Send (process controller, request message);
Receive (process controller, accept message);
Critical- section ();
Send (process controller, end message);
Noncritical- section ()
}
While (TRUE) {
Send (process controller, request message);
Receive (process controller, accept message);
Critical- section ();
Send (process controller, end message);
Noncritical- section ();
}
While (TRUE) {
Send (process controller, request message);
Receive (process controller, accept message);
Critical- sections ();
Send (process controller, end message);
Noncritical- section ();
}
While (TRUE) {
Send (process controller, request message)}
Receive (process controller, accept message);
Critical- section ();
Send (process controller, end message);
Noncritical- section ();
}
các primitive semaphore và monitor KHÔNG
Không hữu dụng trong các hệ thống phân tán, khi mà mỗi bộ xử lý sở hữu một bộ nhớ riêng biệt và liên lạc qua mạng
hữu dụng trong các hệ thống phân tán, khi mà mỗi bộ xử lý sở hữu một bộ nhớ chung và liên lạc qua mạng
hữu dụng trong các hệ thống phân tán, khi mà mỗi bộ xử lý sở hữu một bộ nhớ riêng biệt và liên lạc qua mạng
hữu dụng trong các hệ thống phân tán, khi mà mỗi bộ xử lý sở hữu một bộ nhớ riêng biệt và không liên lạc qua mạng
Avoiding locks: Read-Copy-Update
Luôn tồn tại ổ khóa nhanh nhất
Không có ổ khóa nào nhanh nhất cả
Các ổ khóa luôn giúp nhau nhanh hơn
Ổ khóa không thể nhanh hơn được nữa
Thuật toán tạo ra?
một chuỗi các ma trận vô hạn
một chuỗi các ma trận theo vòng lặp
một chuỗi các ma trận theo thời gian,
một chuỗi các ma trận theo không gian
