Chapter 5 metadata and verification of organization of metadata tables in expert. NET 2.0 il Explorer

Source: Internet
Author: User

Returned directory

 

Metadata and Verification

However, this "good suggestion" is just a suggestion. The preceding section provides information about which tables can be referenced from a column's determined type. This does not mean that you should reference all the tables that you can reference. In the table5-10The symbol types of some groups listed inCLRIn fact, the existing Release versions are more acceptable. For example,MemberrefparentGroup, which describesMemberrefThe parent table of the record, includingTypedefTable. However, this metadata is released.APINot acceptTypedefSymbolMemberrefAnd even if such metadata is released somehow, the loader will ignore it.

Metadata publishingAPIA very small amount of security is provided (most of them are trivial) until the metadata validity is involved. Metadata is an extremely complex system and hundreds of validity rules on text that need to be enforced.

advanced language compilers, such as VB. net or C # , metadata publishing provides an important level of protection because they prevent the exact metadata specification and release from Program members. This high-level language is replaced by concepts and is based on concepts, this is the responsibility of the compiler to convert the language concept into a metadata structure and IL Code is constructed, so a compiler can be built to publish valid structure and structure (okay, more or less .) On the other hand, ilasm , like other compilers, is a platform-oriented language that allows programmers to generate a large range of metadata structures and IL structures, only a small part represents a valid subset.

Considering this difficult situation, we need to rely on external validity and validation tools (speaking of effectiveness and verification are not repetitive exercises in terms of synonyms-inCLRIn terms of validity, it is often used in metadata.IlCode .) A tool like this isCLRItself. The loader relies on many validity tools to test metadata, especially those that can damage the system. ResponsibleJITThe execution of the subsystem during the compiler RuntimeIlCode verification. These projects are called "RunTime validity and verification ".

Peverify, An independent. NET Framework SDKProvides more thorough effectiveness and verification.PeverifyTwo independent subsystems are used,MdvalidatorAndIlverifier.MdvalidatorYou can alsoIlCalled in the anti-compiler.

you can find in the appendix peverify and IL Anti-compiler information. The subsequent sections discuss various validity rules along with the relevant metadata structure and the IL structure.

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.