Một số phương pháp đồng bộ khác (other kernel mode synchronization primitives )

13 210 0
Một số phương pháp đồng bộ khác (other kernel mode synchronization primitives )

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Một số phương pháp đồng khác (Other Kernel-Mode Synchronization Primitives ) Một số phương pháp đồng khác (Other Kernel-Mode Synchronization Primitives ) Bởi: Khoa CNTT ĐHSP KT Hưng Yên Nhân XP Windows đưa số phương pháp bổ sung để đồng hóa thực luồng hay để bảo vệ truy nhập để chia sẻ đối tượng Trong mục này, bàn luận mutex nhanh, đối tượng mà đề xuất loại trừ lẫn nhanh thực so với nhân mutex tối ưu hóa cho trường hợp thật tranh dành xuất Tôi mô tả phạm trù chức hỗ trợ mà bao gồm từ Interlocked tên chúng Những chức thực thao tác chung định tăng giảm số nguyên hay việc chèn loại bỏ mục từ kê liên kết cách nguyên tử điều ngăn ngừa giao thoa đa nhiệm hay đa xử lý Những đối tượng Mutex nhanh (Fast Mutex Objects): Một mutex nhanh thực cung cấp giải pháp tới nhân mutex để bảo vệ tiết diện tới hạn mã Bảng 4-6 tổng kết chức công tác bạn thường làm việc với loại đối tượng Bảng 4-6 Những chức công tác cho sử dụng với thực Mutexes nhanh Chức dịch vụ Mô tả ExAcquireFastMutex Thu nhận quyền sở hữu mutex, đợi cần thiết ExAcquireFastMutexUnsafe Thu nhận quyền sở hữu mutex, đợi cần thiết, hoàn cảnh người gọi vô hiệu hóa xác nhận APCs 1/13 Một số phương pháp đồng khác (Other Kernel-Mode Synchronization Primitives ) ExInitializeFastMutex Khởi tạo đối tượng mutex ExReleaseFastMutex Thoát khỏi mutex ExReleaseFastMutexUnsafe Thoát khỏi mutex truyền reenabling APC ExTryToAcquireFastMutex Thu nhận mutex để làm việc đợi So sánh với nhân mutexes, mutexes nhanh có sức mạnh yếu tổng kết Bảng 4-7 Trên cạnh dấu cộng, mutex nhanh nhanh nhiều để thu nhận giải phóng thực tế sư tranh chấp cho Trên cạnh trừ, luồng mà thu nhận mutex nhanh khả để nhận kiểu định gọi thủ tục không đồng bộ, phụ thuộc vào chức xác mà bạn gọi, ràng buộc bạn gửi IRPs cho trình điều khiển khác Bảng 4-7 So sánh Kernel đối tượng Mutex nhanh Kernel Mutex Fast Mutex Có thể thu nhận cách đệ quy luồng đơn (hệ thống bảo trì Không thể thu nhận cách đệ quy máy đếm tuyên bố) Một cách tương đối chậm Một cách tương đối nhanh Chủ nhân nhận nhân APCs " đặc biệt " Chủ nhân không nhận chiến thắng APCs bạn sử dụng chức XxxUnsafe Có thể phận nhiều đối tượng Không thể sử dụng đối số tới đợi KeWaitForMultipleObjects Bất ngờ, tài liệu DDK đối tượng mutex nhân lâu nói nhân đưa cho quyền ưu tiên tăng tới luồng mà đòi hỏi mutex Tôi có thông tin đáng tin cậy điều thật không từ năm 1992 (năm, nghĩa là, Windows xây dựng số) Tài liệu lâu nói luồng giữ mutex loại bỏ từ cân thiết lập(điều đó, chinh phục tới việc cho di chuyển tất trang khỏi nhớ vật lý) Windows NT mẻ không thời gian dài 2/13 Một số phương pháp đồng khác (Other Kernel-Mode Synchronization Primitives ) Để tạo mutex nhanh, bạn phải cấp phát cấu trúc liệu FAST_MUTEX số trang kí ức Rồi bạn khởi tạo đối tượng việc " gọi " ExInitializeFastMutex, mà thật macro WDM.H: ASSERT(KeGetCurrentIrql() [...]... ASSERT(KeGetCurrentIrql () ... Function2 () { 12/13 Một số phương pháp đồng khác (Other Kernel- Mode Synchronization Primitives ) ASSERT(KeGetCurrentIrql ()

Ngày đăng: 31/12/2015, 22:11

Mục lục

    Một số phương pháp đồng bộ khác (Other Kernel-Mode Synchronization Primitives )

    Những đối tượng Mutex nhanh (Fast Mutex Objects):

    Các chức năng (InterlockedXxx Functions):

    Các chức năng (ExInterlockedXxx Functions):