Back to Home

CLRium: until the end of registration - 4 days / Blog of the company Seminars Stanislav Sidristy

CLRium · World Wildlife · .net

CLRium: until the end of registration - 4 days

    Ahead of the weekend, where you can have a great and useful time. And in my humble opinion, when a modern person has thousands of things that distract him from the opportunity to expand his knowledge, the presence of a master class will be very useful. After all, this is at least an opportunity to come and not be distracted by household chores to do something interesting, useful, and most importantly - new for yourself.
    A few days ago (and it seems, yesterday) I published the announcement of a master class on .Net Framework Internalswhich today was called CLRium. This mini-conference will show how any .Net application works, and how to add features to the .Net application that were not laid down when designing the platform. What for? Each of you can pursue your interests. However, in my opinion, several interest groups can be derived:

    • You are very interested in how the .Net Framework works. After all, if you learn how it works, you can understand its essence and begin to relate somehow in the platform itself. Without unicorns, pink glasses and fairies in the form of a Garbage Collector;
    • You want to increase your knowledge so that you can easily respond to interviews deeper than required, thereby taking away more paid vacancies
    • You are interested in understanding how you can easily and naturally crack .Net applications in real time (for, of course, academic purposes, without violating the law and without malicious intent. Well, you understand)


    However, whatever you are guided by, you will begin to understand why something has been done in the .Net Framework one way or another. Where are the legs of the incorrect count ++ counting from different threads growing, why did ThreadPool do it, why are there threads, but there are processes ... And many other questions, the roots of which go beyond the platform.


    I do not want to repeat myself, and this is not accepted on Habré, but I can slightly open the veil of what will happen.
    For an approximate understanding of the level of problem solving, I will provide a link to one of my articles in the past:


    In addition, the following topics will be covered:
    • .Net / Windows / CPU Memory Management Basics
    • How .Net objects are arranged in memory; how type information is stored. How inheritance is implemented at the level of the physical content of objects
    • Son Of Strike (SOS) debugger extension for viewing the internals of .Net objects
    • We consider sizeof () of any .Net type (the standard sizeof considers only by Value types)
    • Transferring objects between AppDomains without serialization: no overhead.
    • We load the assembly so that its types can be used in the current domain, but at the same time it can be shipped
    • How do exceptions work? We are wedged in processes of service of exceptions.
    • We are developing a class for allocating .Net objects outside .Net memory (outside SOH / LOH)
    • We write a pool of objects outside .Net memory
    • We write the core of Memory Profiler and dump the virtual memory with recognition of .Net objects in it.
    • We will expand the .Net object between processes (through the use of a paging file)
    • We write the fork () method: a method that creates a thread that starts from the same place where fork was called (thread branching) - C ++ / CLI / asm


    When and where?
    • May 16, Friday , from 18:00 to 23:00, Moscow, 1st Volokolamskiy proezd, d.10, p. 3. So if you take time off from work, then not for long. If there are many registrations, then we will hold a second master class on Saturday . Everything is welcome here: write to the mail, when it is more convenient for anyone ([email protected])


    Registration Page:


    What you need:
    • Come with a laptop and installed Visual Studio. I’ll drop it into your mail before starting the link to DropBox or Google Drive with files (there will be MSIL, C ++ / CLI, which will be written for a long time without preparation, and therefore we may not be able to do everything). They - it will be necessary to download and check.


    The picture for the seed (after calling CloneThread, the current thread branches into two, each of which goes to its part of the if condition):

    See you!

    Read Next