Chào các bạn! Truyen4U chính thức đã quay trở lại rồi đây!^^. Mong các bạn tiếp tục ủng hộ truy cập tên miền Truyen4U.Com này nhé! Mãi yêu... ♥

ontaphdhmang

So sánh đa luồng với đa tiến trình

1. Giống nhau:

- Điề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 1 chương trình.

- Dùng chung tài nguyên từ tiến trình(hoạc luồng) cha.

- Cùng có chức năng xử lý song song.

- Chia sẻ tài nguyên cho nhau.

- Tăng tốc tính toán.

- Đảm bảo tính đơn thể.

2. Khác nhau:

Do các luồng cùng vận hành trong cùng 1 đị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 thì dễ hơn mượn đồ của hàng xóm láng giềng.

Do các luồng chung tài nguyên với cha và các luồng khác nên việc tạo lập và chuyển ngữ cảnh cũng nhanh hơn và ít chiếm tài nguyên hơn tiến trình.

Ví dụ: Việc ngăn riêng ra 1 phòng trong nhà thì nhanh hơn là chờ nhà nước cấp cho một căn hộ

Cấp phát bộ nhớ và tài nguyên cho tiến trình thì tốn kém hơn luồng.

Lập trình đa luồng thì dễ hơn lập trình đa tiến trình.

VD: tất cả SV đều chung 1 thời khóa biểu, khi lớp trưởng cập nhật lại thời khoá biểu, tất cả SV đều thay đổi theo, dễ hơn việc mỗi SV tự đăng kí môn học với 1 thời khóa biểu khác nhau, và tự mình theo dõi thời khóa biểu riêng của mình

Trong 1 cty, nhân viên trao đổi làm việc với 1 nhân viên khác nhanh và dễ hơn là chạy qua phòng ban khác để hỏi 1 vấn đề nào đó mình đang cần tìm hiểu

Đúc kết từ mọi "nguồn" xin trình bày lại :

Hệ thống tiến trình tồn tại các trạng thái sau:

-New(trạng thái khởi tạo).

.Trạng thái khi tiến trình mới hình thành, nhờ lệnh nhập vào từ thiết bị ngoại vi.

.Có thành phần reader: phân tích chương trình,tách, tạo các khối điều khiển đặt vào dòng xếp hàng của hệ thống.

- Ready tiến trình chuyển sang trạng thái ready khi tiến trình điều phối (Tiến trình được cấp tài nguyên từ thiết bị ngoại vi)

-Running: khi tiến trình được cấp CPU hay lập lịch.

.Khi đang trạng thái Running mà bị ngắt gián đoạn thì quay về trạng thái Ready.

.Khi đang trạng thái Running mà có sự kiện vào ra thì chuyển sang trạng thái Waiting.

- Waiting : Kết thúc hoàn tất sự kiện I/O thì chuyển về Ready.

* Từ Running chuyển sang trạng thái Terminate: có 2 trường hợp.

.Kết thúc tốt đẹp.

.Kết thúc bất thường(do ngắt bỏ cố ý của người dùng, hoặc do lỗi chương trình, lỗi thiết bị ngoại vi...).

Bạn đang đọc truyện trên: Truyen4U.Com

Tags: