1 00:00:00,660 --> 00:00:09,240 Hello, in this video, we are going to talk about the principles of net analysis, that is, what are 2 00:00:09,240 --> 00:00:13,660 the things you need to know before you can do that analysis? 3 00:00:15,360 --> 00:00:21,090 We are first going to take a look at how the dot net framework looks in this diagram. 4 00:00:21,090 --> 00:00:28,990 Here in left, you can see net, see how good it will be any of these languages here. 5 00:00:29,490 --> 00:00:37,950 Take, for example, theCIA, and then he will use the compiler to convert it into vehicle and a vehicle. 6 00:00:38,310 --> 00:00:46,110 As we have studied previously, he's also known as the intermediate language or common intermediate 7 00:00:46,110 --> 00:00:49,470 language or Microsoft intermediate language. 8 00:00:50,460 --> 00:00:58,310 So this Bikel is the same no matter which platform you write on the Linux, Mac or Windows. 9 00:00:59,100 --> 00:01:05,610 But the Common Language Runtime, also known as OCR, is different. 10 00:01:05,760 --> 00:01:13,740 For every platform in Linux, you install the Linux, on Windows, you install. 11 00:01:13,740 --> 00:01:18,330 These are for Windows, Mac, you install OCR for Mac. 12 00:01:19,110 --> 00:01:29,220 So because of this compound, net framework application can run in any machine because the Common Language 13 00:01:29,220 --> 00:01:37,080 Runtime will interpret this file based on the native requirements for that particular platform. 14 00:01:37,390 --> 00:01:44,760 This compiler is referring to the Sirah JT Stenzel just in time. 15 00:01:46,090 --> 00:01:53,160 There are several versions of Dot Net is the Dunnett Framework, which is the original version originally 16 00:01:53,160 --> 00:01:54,570 released in Two Thousand. 17 00:01:55,110 --> 00:02:01,200 When you are using the Internet framework, you are using the Microsoft Windows version, which runs 18 00:02:01,200 --> 00:02:04,890 only on Windows computers, Windows operating systems. 19 00:02:05,520 --> 00:02:11,130 And then there is also an Internet call, which is similar by suppos cross platform development. 20 00:02:11,640 --> 00:02:17,460 If you build an application using that, then you can run on Linux. 21 00:02:17,460 --> 00:02:21,450 Mac is doing this on Windows operating systems. 22 00:02:22,380 --> 00:02:28,820 Then there is done a standard, done a standard it a set of core libraries contained within the call. 23 00:02:30,060 --> 00:02:40,460 Then this mono mono is a non Microsoft open source Dunnett framework C I am I am saying in Seattle, 24 00:02:41,310 --> 00:02:45,910 these are some of the common terminologies you will see frequently in the Internet framework. 25 00:02:46,770 --> 00:02:50,520 CIO, as I mentioned, it stands for Common Language. 26 00:02:51,520 --> 00:03:00,190 I asked Denzel to me in English and I asked for Microsoft into your language, and then CIA is the same 27 00:03:00,190 --> 00:03:03,610 as I am saying they all refer to the buycott. 28 00:03:06,100 --> 00:03:07,960 You refer to this Symbicort. 29 00:03:11,210 --> 00:03:17,840 However, see, our common language runtime is different, it is the interpreter. 30 00:03:19,700 --> 00:03:27,650 This interpreter, also known as a runtime and runtime environment, he interprets whatever the backup 31 00:03:27,660 --> 00:03:36,200 is so that you can run on those particular machine, whether it be windows or Windows or Mac, how he 32 00:03:36,200 --> 00:03:37,160 works is like this. 33 00:03:37,460 --> 00:03:41,210 SEAL are interpreted by code to machine on the fly. 34 00:03:41,570 --> 00:03:44,900 That is why it is also known as just in time, the compiler. 35 00:03:45,950 --> 00:03:49,850 So the backup can be shared among all platforms. 36 00:03:50,310 --> 00:03:58,640 But what makes it able to run on Windows seven is because that particular machine has installed the 37 00:03:58,740 --> 00:04:06,020 libraries for that machine or that system, for example, this year are for Windows on Sirah for Mac 38 00:04:06,350 --> 00:04:15,920 all this year for Linux CIO instructions, CIA instructions is to intimidate language between COMPAR 39 00:04:16,040 --> 00:04:25,550 and if this is the differences between the assembly code and CIO in assembly language, you will see 40 00:04:26,120 --> 00:04:27,140 something like this. 41 00:04:27,320 --> 00:04:30,190 Multiply the X value in your register. 42 00:04:30,200 --> 00:04:38,510 Yes, we have the X value register X and install the result in the register X. 43 00:04:39,590 --> 00:04:45,890 In Syria, you do not use registers, but you use this technique, so in order to do the same thing 44 00:04:46,070 --> 00:04:54,710 in CIO language, you will look location zero, meaning that you will not first argument in location 45 00:04:54,710 --> 00:05:01,910 zero and then you will location one day Mazlo, the second agame location one, and then you will perform 46 00:05:02,610 --> 00:05:09,250 operation called Multiply, which means you take whatever the value is in location zero, multiply the 47 00:05:09,460 --> 00:05:18,290 value in location one and the result back in zero and then the last four instruction store location 48 00:05:18,620 --> 00:05:23,030 who actually properly value in location zero into the variable. 49 00:05:24,910 --> 00:05:32,900 So I'll use this to stack the stack, essentially what Danica was referring to, certain portions he 50 00:05:32,920 --> 00:05:42,270 randomly reserved for local variables, CIO uses a stack instead of the register and the LLC looks local. 51 00:05:42,310 --> 00:05:45,430 They're both at index zero into the stack. 52 00:05:45,670 --> 00:05:51,700 LDL see one variable and decreasing one onto the stack. 53 00:05:52,510 --> 00:05:56,830 SDLC means to pump the value from the stack into the local variable. 54 00:05:57,670 --> 00:06:04,000 How CIA core functions in this example here, LDC are means to load string. 55 00:06:04,510 --> 00:06:12,730 So here you are loading the string Helberg into the stack and then the next instruction calls the API 56 00:06:12,730 --> 00:06:18,050 on the operating system that comes from the system console to right line. 57 00:06:18,280 --> 00:06:27,940 So this whole string held onto the console in CIO mezuzot functions in classes and can become whenever 58 00:06:27,950 --> 00:06:28,430 they are needed. 59 00:06:28,720 --> 00:06:35,660 So in this case, a system that console is class and within this class it contains several methods of 60 00:06:35,680 --> 00:06:37,760 functions, for example. 61 00:06:37,780 --> 00:06:38,180 Right. 62 00:06:39,910 --> 00:06:46,960 There are several tools that are used very often analyzing the net framework applications. 63 00:06:47,320 --> 00:06:53,380 First is designed by the Enterprise and the compiler, as well as the debugger, and it is used to convert 64 00:06:53,380 --> 00:06:54,790 Buycott to source code. 65 00:06:55,330 --> 00:06:56,890 Hence it is the compiler. 66 00:06:58,210 --> 00:07:05,670 You can also deba and run dot net applications and put breakpoints four for you to analyze as events 67 00:07:06,070 --> 00:07:12,790 I am guessing is a and D assembler and I put it in here to differentiate it from. 68 00:07:13,090 --> 00:07:15,370 I have Yasim I. 69 00:07:15,370 --> 00:07:16,960 LDM is a dissembler. 70 00:07:17,200 --> 00:07:21,040 Disassembly means it is used to convert Pikelet to kill. 71 00:07:21,580 --> 00:07:24,640 On the other hand, I assume he's an assembler. 72 00:07:25,030 --> 00:07:29,400 It is used to generate executable binary backwood from zero. 73 00:07:30,310 --> 00:07:31,800 That's all for this video. 74 00:07:32,140 --> 00:07:32,840 Next lesson. 75 00:07:33,250 --> 00:07:37,030 We will have let Pratico true value demonstrate to you. 76 00:07:37,030 --> 00:07:41,090 How do you use I am the assim async. 77 00:07:41,500 --> 00:07:42,490 Thank you for watching. 78 00:07:42,760 --> 00:07:44,170 I'll see you in the next one.