Ý nghĩa của GFP trong kmalloc là gì? Ví dụ GFP_KERNEL, GFP_ATOMIC?Ý nghĩa của GFP trong cờ kmalloc là gì?
11
A
Trả lời
13
GFP = Nhận trang miễn phí = __get_free_pages
.
Những cờ này là cờ được chuyển đến các chức năng cấp phát bộ nhớ, chẳng hạn như __get_free_pages
và kmalloc
, cho họ biết những gì có thể và không thể thực hiện được khi phân bổ.
Ví dụ: GFP_ATOMIC
nghĩa là không cần chuyển ngữ cảnh khi phân bổ (có nghĩa là không thể phân trang).
1
Hãy xem tệp include/linux/gfp.h để biết chi tiết.
100 /* This equals 0, but use constants in case they ever change */
101 #define GFP_NOWAIT (GFP_ATOMIC & ~__GFP_HIGH)
102 /* GFP_ATOMIC means both !wait (__GFP_WAIT not set) and use emergency pool */
103 #define GFP_ATOMIC (__GFP_HIGH)
104 #define GFP_NOIO (__GFP_WAIT)
105 #define GFP_NOFS (__GFP_WAIT | __GFP_IO)
106 #define GFP_KERNEL (__GFP_WAIT | __GFP_IO | __GFP_FS)
107 #define GFP_TEMPORARY (__GFP_WAIT | __GFP_IO | __GFP_FS | \
108 __GFP_RECLAIMABLE)
109 #define GFP_USER (__GFP_WAIT | __GFP_IO | __GFP_FS | __GFP_HARDWALL)
110 #define GFP_HIGHUSER (__GFP_WAIT | __GFP_IO | __GFP_FS | __GFP_HARDWALL | \
111 __GFP_HIGHMEM)
112 #define GFP_HIGHUSER_MOVABLE (__GFP_WAIT | __GFP_IO | __GFP_FS | \
113 __GFP_HARDWALL | __GFP_HIGHMEM | \
114 __GFP_MOVABLE)
115 #define GFP_IOFS (__GFP_IO | __GFP_FS)
116 #define GFP_TRANSHUGE (GFP_HIGHUSER_MOVABLE | __GFP_COMP | \
117 __GFP_NOMEMALLOC | __GFP_NORETRY | __GFP_NOWARN | \
118 __GFP_NO_KSWAPD)
Các vấn đề liên quan
- 1. Ý nghĩa của ∃ là gì?
- 2. Ý nghĩa của + trong CSS là gì?
- 3. Ý nghĩa của @_ trong Perl là gì?
- 4. Ý nghĩa của '==' trong C là gì?
- 5. Ý nghĩa của $$ trong Ruby là gì?
- 6. Ý nghĩa của /// trong JavaScript là gì?
- 7. Ý nghĩa của cờ 'g' trong cụm từ thông dụng là gì?
- 8. ý nghĩa của "tóm lại" là gì
- 9. Ý nghĩa của -532459699 là gì?
- 10. Ý nghĩa của "UseTaskFriendlySynchronizationContext" là gì?
- 11. Ý nghĩa của Giao dịch là gì?
- 12. Android - ý nghĩa của StableID là gì?
- 13. Ý nghĩa của typedef này là gì?
- 14. Ý nghĩa của tệp dylib là gì?
- 15. Ý nghĩa của System.CLSCompliantAttribute là gì?
- 16. Ý nghĩa SQL của 0x5E5B7D7E là gì?
- 17. Ý nghĩa của id là gì?
- 18. Ý nghĩa của! #: 3 là gì?
- 19. Ý nghĩa của svg: svg là gì?
- 20. Ý nghĩa của `_t` của` size_t` trong C là gì?
- 21. Giải thích ý nghĩa của cờ Span giống như SPAN_EXCLUSIVE_EXCLUSIVE
- 22. Ý nghĩa của XOR trong lắp ráp x86 là gì?
- 23. Ý nghĩa của i.to_s trong Ruby là gì?
- 24. Ý nghĩa của char zero (0) trong Java là gì?
- 25. Ý nghĩa của NULL! = Giá trị trong C++ là gì?
- 26. Ý nghĩa của biểu tượng $ trong jQuery là gì?
- 27. Ý nghĩa của "vnd" trong các loại MIME là gì?
- 28. Ý nghĩa của "quasi" trong quasiquotations là gì?
- 29. Ý nghĩa của "Nhóm chủ đề" trong JMeter là gì?
- 30. Ý nghĩa của proxy trong EntityFramework là gì?