Tin học
Bạn có muốn phản ứng với tin nhắn này? Vui lòng đăng ký diễn đàn trong một vài cú nhấp chuột hoặc đăng nhập để tiếp tục.

Phân biệt đa luồng và đa tiến trình?

2 posters

Go down

Phân biệt đa luồng và đa tiến trình? Empty Phân biệt đa luồng và đa tiến trình?

Bài gửi  107H1035-PhanThaiHoa 10/5/2009, 13:36

Phân biệt đa luồng và đa tiến trình?

Giống nhau:
Đều có thông tin trạng thái
Luồng còn được gọi là tiến trình nhẹ
Nhiều luồng hoặc nhiều tiến trình có thể liên quan đến một chu trình
Chia sẻ tài nguyên cho nhau, tăng tốc tính toán, đảm bảo tính đơn thể

Khác nhau
Do luồng cùng vận hành trong 1 vùng địa chỉ, vì vậy dễ dùng chung tài nguyên hơn đa tiến trình ví dụ mượn đồ trong gia đình dễ mượn đồ hơn của hàng xóm
Do luồng chung tài nguyên với luồng cha nên việc tạo lập và chuyển đổi ngữ cảnh cũng nhanh hơn tiến trình
Ví dụ: việc ngăn riêng ra một phòng trong nhà thì dễ hơn được nhà nước cấp cho một căn hộ
Cấp phát tài nguyên cho bộ nhớ thì tốn kém
Lập trình đa luồng thì dễ hơn lập trình đa tiến trình

107H1035-PhanThaiHoa

Tổng số bài gửi : 24
Join date : 06/05/2009

Về Đầu Trang Go down

Phân biệt đa luồng và đa tiến trình? Empty Phân biệt đa luồng và đa tiến trình ?

Bài gửi  LaMinhThuan_08H1010092 11/5/2009, 17:07

Bạn giải thích như vậy thì hơi khó hiểu cho người mới bắt đầu vì họ đâu biết luồng là gì, tiến trình là gì. Nên có ví dụ cụ thể.

Những từ thuật ngữ chuyên môn dịch sang tiếng việt có thể gây nhiều khó khăn, nên mình sẽ dùng
MultiProcess và MultiThread

- MultiProcess và MultiThread đều là khái niệm dùng để chỉ khả năng hoạt động song song cùng một lúc.

  • MultiProcess là liên quan tới chương trình :
Ví dụ Paint, Word, Excel, IE, nói chung là một chương trình chạy cụ thể.
-> Vì sao lại gọi là MultiProcess là để chỉ hệ điều hàng có khả năng chạy nhiều chương trình cùng lúc. Bạn có thể mở IE, Word, Window Media .... hay thậm chí mở 3, 4 chương trình IE cùng lúc. Chỉ những hệ điều hành hỗ trợ MultiProcess thì mới chạy nhiều chương trình cùng lúc như vậy được
-> Những hệ điều hành cũ như Dos(Microsoft), OS/2 (IBM) thì bạn chỉ có thể chạy tại 1 thời điểm 1 chương trình
Không tin bạn cứ khởi động máy ra Dos rồi chạy NC, PartionMagic, Norton Ghost hay đại loại coi làm sao chạy 2,3 thằng cùnglúc được

  • MultiThread là liên quan tới đa xử lý bên trong chương trình :

Ví dụ : Bạn mở IE hoặc FireFox có thể làm nhiều việc cùng lúc với nó
+ Duyệt nhiều trang web
+ Nghe nhạc online
+ Download tài liệu .....
Tất cả các thao tác trên bạn có thể làm cùng một lúc trong cùng một chương trình

Lập trình MultiProcess dễ hơn MultiThread là vì chỉ cần tạo nên chương trình đó, chạy bao nhiêu phiên bản thì hệ điều hành quản lý.
Còn MultiThread thì tất cả mình phải quản lý nên cực.

LaMinhThuan_08H1010092

Tổng số bài gửi : 6
Join date : 11/05/2009

Về Đầu Trang Go down

Về Đầu Trang

- Similar topics

 
Permissions in this forum:
Bạn không có quyền trả lời bài viết