Những thành phần của luồng trong hệ điều hành

Xem chủ đề cũ hơn Xem chủ đề mới hơn Go down

Những thành phần của luồng trong hệ điều hành

Bài gửi  v_hoangminh[I22B] on 10/4/2013, 09:38

Những thành phần thông thường của một luồng gồm:

• ID của luồng định danh duy nhất luồng
• Tập thanh ghi biểu diễn trạng thái của bộ xử lý
• Ngăn xếp người dùng khi luồng đang chạy ở chế độ người dùng. Tương tự,mỗi luồng cũng có một ngăn xếp nhân được dùng khi luồng đang chạy trong chế độ nhân
• Một vùng lưu trữ riêng được dùng bởi nhiều thư viện thời gian thực và thự viện liên kết động (DLLs).

Cấu trúc dữ liệu chủ yếu của luồng gồm:

• RTHREAD (executive thread block-khối luồng thực thi).
• KTHREAD (kernel thread-khối luồng nhân).
• TEB (thread environment block-khối môi trường luồng)

Các thành phần chủ yếu của RTHREAD gồm một con trỏ chỉ tới quá trình nào luồng thuộc về và địa chỉ của thủ tục mà luồng bắt đầu điều khiển trong đó.ETHREAD cũng chứa một con trỏ chỉ tới KTHREAD tương ứng.
• KTHREAD gồm thông tin định thời và đồng bộ hóa cho luồng. Ngoài ra,KTHREAD chứa ngăn xếp nhân (được dùng khi luồng đang chạy trong chế độ nhân)và con trỏ chỉ tới TEB.
• ETHREAD và KTHREAD tồn tại hoàn toàn ở không gian nhân; điều này có nghĩa chỉ nhân có thể truy xuất chúng.
• TEB là cấu trúc dữ liệu trong không gian người dùng được truy xuất khi luồng đang chạy ở chế độ người dùng. Giữa những trường khác nhau, TEB chứa ngăn xếp người dùng và một mảng cho dữ liệu đặc tả luồng (mà Windows gọi là lưu trữ cục bộ luồng)

v_hoangminh[I22B]

Tổng số bài gửi : 24
Join date : 17/03/2013
Age : 27

Xem lý lịch thành viên

Về Đầu Trang Go down

Xem chủ đề cũ hơn Xem chủ đề mới hơn Về Đầu Trang

- Similar topics

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