Tương tranh (khoa học máy tính)
Có người đề nghị trang Tương tranh (khoa học máy tính) nên được di chuyển thành Concurrency (khoa học máy tính). Xin hãy thảo luận điều đó tại Thảo luận:Tương tranh (khoa học máy tính). Lý do là vì cách dịch không hợp lý. |
Trong ngành khoa học máy tính, tương tranh là một tính chất của các hệ thống bao gồm các tính toán được thực thi trùng nhau về mặt thời gian, trong đó các tính toán chạy đồng thời có thể chia sẻ các tài nguyên dùng chung. Hoặc theo lời của Edsger Dijkstra: "Tương tranh xảy ra khi nhiều hơn một luồng thực thi có thể chạy đồng thời." Việc cùng sử dụng các tài nguyên dùng chung, chẳng hạn bộ nhớ hay file dữ liệu trên đĩa cứng, là nguồn gốc của nhiều khó khăn. Các tranh đoạt điều khiển (race condition) liên quan đến các tài nguyên dùng chung có thể dẫn đến ứng xử không đoán trước được của hệ thống. Việc sử dụng cơ chế loại trừ lẫn nhau (mutual exclusion) có thể ngăn chặn các tình huống chạy đua, nhưng có thể dẫn đến các vấn đề như tình trạng bế tắc (deadlock) và đói tài nguyên (resource starvation). Thiết kế của các hệ thống tương tranh thường là kết quả của việc tìm kiếm các kĩ thuật đáng tin cậy cho việc phối hợp hoạt động của thực thi, trao đổi dữ liệu, cấp phát bộ nhớ và lập lịch thực thi để giảm tối thiểu thời gian phản ứng (response time) và tăng tối đa thông lượng (throughput).
Xem thêm
sửa- Tính toán tương tranh (Concurrent computing)
- Điều khiển tương tranh (Concurrency control)
- Luồng (Thread)
- Tiến trình (Process)
- Nodes in a cluster
- Các nút trong một hệ thống phân tán
- Các nút trong một mạng client-server
- Ptolemy Project
- OpenMP
- Các ngôn ngữ lập trình tương tranh
Tham khảo
sửaLiên kết ngoài
sửa- Concurrent Systems Lưu trữ 2006-01-28 tại Wayback Machine at The WWW Virtual Library