What is the purpose of the sorted bit vector field in the ~ metadata header in the .NET assembly?

According to the Partition II metadata, it says that a valid field is a bitmask that marks which CLR metadata tables are in the .NET executable, but I can’t understand what such a field is “sorted” for - what is its value, and What should I emit into this area when creating my own .NET executables?

+3
source share
2 answers

I think the sorted field just hints if the sorting of a particular metadata table or not (this field is a bit exactly the same as the real one).

memmapped .

+1

: , Valid, Sorted, ,

"", , II, §24.2.6, :

Valid - 64- , , ; §22. , DeclSecurity , 0x0e Valid vector. Valid, 0x2c .

22, § 22.2, -. , 22.2 ": 0x20". , PE Assembly, . 22.2, 0x20 Valid. , , Valid & 0x20 == 0x20, , 0x20th (.. 32-) Valid, Valid & (1 << 0x20) == (1 << 0x20).

, 0 1-, , 0-. , 0, - 0x00.

0

Source: https://habr.com/ru/post/1720990/


All Articles