рд╡рд░реНрдЪреБрдЕрд▓ рд╡рд░реНрд▓реНрдб рдЗрдВрдЯреЗрд▓ред рднрд╛рдЧ 2: рдПрд╕рдПрдордкреА

рдкрд┐рдЫрд▓реЗ рд▓реЗрдЦ (рд▓рд┐рдВрдХ) рдореЗрдВ, рдореИрдВрдиреЗ рдЗрдВрдЯреЗрд▓ рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рд╡рд░реНрдЪреБрдЕрд▓рд╛рдЗрдЬреЗрд╢рди рддрдХрдиреАрдХ рдкрд░ рдЖрдзрд╛рд░рд┐рдд рдПрдХ рд╣рд╛рдЗрдкрд░рд╡рд┐рдЬрд░ рдХреА рдореВрд▓ рдЕрд╡рдзрд╛рд░рдгрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХреА рдереАред рдЕрдм рдореИрдВ рдорд▓реНрдЯреАрдкреНрд░реЛрд╕реЗрд╕рд░ рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ (рдПрд╕рдПрдордкреА) рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рдЬреЛрдбрд╝рдХрд░ рд╣рд╛рдЗрдкрд░рд╡рд┐рдЬрд░ рдХреА рдХреНрд╖рдорддрд╛рдУрдВ рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рд╕реНрддрд╛рд╡ рдХрд░рддрд╛ рд╣реВрдВ, рдФрд░ рдпрд╣ рднреА рдПрдХ рдЙрджрд╛рд╣рд░рдг рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ рдХрд┐ рд╣рд╛рдЗрдкрд░рд╡рд╛рдЗрдЬрд░ рдЕрддрд┐рдерд┐ рдУрдПрд╕ рдореЗрдВ рдмрджрд▓рд╛рд╡ рдХреИрд╕реЗ рдХрд░ рд╕рдХрддрд╛ рд╣реИред

рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╡рд┐рдиреНрдпрд╛рд╕ рдХреЗ рд╕рд╛рде рдкреАрд╕реА рдкрд░ рд╕рднреА рдЖрдЧреЗ рдХреА рдХрд╛рд░реНрд░рд╡рд╛рдИ рдХреА рдЬрд╛рдПрдЧреА:

CPU: Intel Core i7 5820K
рдорджрд░рдмреЛрд░реНрдб: Asus X99-PRO
рд░рд╛рдо: резрем рдЬреАрдмреА
рдЕрддрд┐рдерд┐ OS: PAE рдЕрдХреНрд╖рдо рдХреЗ рд╕рд╛рде рд╡рд┐рдВрдбреЛрдЬ 7 x32

рдореИрдВ рд╣рд╛рд░реНрдб рдбреНрд░рд╛рдЗрд╡ рдкрд░ рд╣рд╛рдЗрдкрд░рд╡рд┐рдЬрд░ рдХреЗ рдШрдЯрдХреЛрдВ рдХреЗ рд╕реНрдерд╛рди рдХрд╛ рд╡рд░реНрдгрди рдХрд░рдХреЗ рд╢реБрд░реВ рдХрд░реВрдБрдЧрд╛ (рд╕рднреА рдорд╛рди рдХреНрд╖реЗрддреНрд░реЛрдВ рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╣реИрдВ)ред

рдЫрд╡рд┐
рд╣рд╛рдЗрдкрд░рд╡рд┐рдЬрд░ рд▓реЛрдб рдХрд░рдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдкрд┐рдЫрд▓реЗ рд╕рдВрд╕реНрдХрд░рдг рд╕реЗ рдХреЗрд╡рд▓ рдПрдХ рдирдП рдореЙрдбреНрдпреВрд▓ рд╣рд╛рдЗрдкрд╡рд╛рдЗрдЬрд╝рд░.рдПрдк рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдореЗрдВ рднрд┐рдиреНрди рд╣реЛрддреА рд╣реИ , рдЬрд┐рд╕рдХрд╛ рдЙрджреНрджреЗрд╢реНрдп рдПрдкреА рдкреНрд░реЛрд╕реЗрд╕рд░ рдХрд╛ рдореВрд▓ рдЖрд░рдВрднреАрдХрд░рдг рд╣реИред

рдореЗрдореЛрд░реА рдореЗрдВ рдореЙрдбреНрдпреВрд▓ рд▓реЛрдб рдХрд░рдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛:



рдПрд╕рдПрдордкреА рд╕рдорд░реНрдерди

рдореИрдВрдиреЗ рд╕рдордорд┐рдд рдорд▓реНрдЯреАрдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ рдХреЗ рд╕рд┐рджреНрдзрд╛рдВрдд рдкрд░ рдПрдХ рд╣рд╛рдЗрдкрд░рд╡рд┐рдЬрд░ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛, рдЬрд┐рд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рд╡реАрдПрдордПрдХреНрд╕ рдХреА рдПрдХ рд╣реА рдкреНрд░рддрд┐ рд╕рднреА рддрд╛рд░реНрдХрд┐рдХ рдкреНрд░реЛрд╕реЗрд╕рд░ рдкрд░ рд▓реЙрдиреНрдЪ рдХреА рдЬрд╛рдПрдЧреАред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЖрдИрдбреАрдЯреА рдФрд░ рдЬреАрдбреАрдЯреА рдЯреЗрдмрд▓, рд╕рд╛рде рд╣реА рд╕рд╛рде рдкреЗрдЬрд┐рдВрдЧ рдореЗрдореЛрд░реА рдХреЗ рд▓рд┐рдП рдЯреЗрдмрд▓, рд╕рднреА рддрд╛рд░реНрдХрд┐рдХ рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреЗ рд▓рд┐рдП рд╕рд╛рдорд╛рдиреНрдп рд╣реЛрдЧреАред рдореИрдВрдиреЗ рдРрд╕рд╛ рдЗрд╕рд▓рд┐рдП рдХрд┐рдпрд╛ рдХреНрдпреЛрдВрдХрд┐ рд╣рд╛рдЗрдкрд░рд╡рд┐рдЬрд░ рддреБрд░рдВрдд рдЕрддрд┐рдерд┐ рдУрдПрд╕ рдХреЗ рдкрддреЗ рдХреЗ рд╕реНрдерд╛рди рдХреЗ рд▓рд┐рдП рдореЗрдореЛрд░реА рдХреЛ рдЗрдирд┐рд╢рд┐рдпрд▓рд╛рдЗрдЬрд╝ рдХрд░ рджреЗрдЧрд╛ рдФрд░ рд╡реНрдпрдХреНрддрд┐рдЧрдд рдкреЗрдЬреЛрдВ рдХреЗ рднреМрддрд┐рдХ рдкрддреЗ рдХреЛ рдЧрддрд┐рд╢реАрд▓ рд░реВрдк рд╕реЗ рдкреБрди: рдЕрд╕рд╛рдЗрди рдХрд░рдиреЗ рдХреА рдХреЛрдИ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЗрд╕ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЗ рд╕рд╛рде, рдЖрдкрдХреЛ рд╣рд╛рдЗрдкрд░рд╡рд┐рдЬрд░ рдХреА рддрд░рдл рдкреНрд░реЛрд╕реЗрд╕рд░ рдЯреАрдПрд▓рдмреА рдХреИрд╢ рдХреЗ рдкрддреНрд░рд╛рдЪрд╛рд░ рдХреА рдирд┐рдЧрд░рд╛рдиреА рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред
рдмреАрдПрд╕рдкреА рдФрд░ рдПрдкреА рдХреЗ рд▓рд┐рдП рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдЕрд▓рдЧ рд╣реЛрдЧреАред рдмреАрдПрд╕рдкреА рдХреЗ рдкреНрд░рд╛рд░рдВрдн рдХреЗ рджреМрд░рд╛рди рд╣рд╛рдЗрдкрд░рд╡рд┐рдЬрд░ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╕рднреА рдкреНрд░рдореБрдЦ рд╕рдВрд░рдЪрдирд╛рдПрдВ рдмрдирд╛рдИ рдЬрд╛рдПрдВрдЧреАред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, vmx рдиреЙрди рд░реВрдЯ рдореЛрдб рдПрдкреА рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреЗ рд▓рд┐рдП рдЧрддрд┐рд╡рд┐рдзрд┐ рд░рд╛рдЬреНрдп рдХреЛ рдПрдЪрдПрд▓рдЯреА рд░рд╛рдЬреНрдп рдореЗрдВ рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рд╡рд░реНрдЪреБрдЕрд▓рд╛рдЗрдЬреЗрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдмрд┐рдирд╛ рдЕрддрд┐рдерд┐ рдУрдПрд╕ рд╡рд╛рддрд╛рд╡рд░рдг рдХрд╛ рдЕрдиреБрдХрд░рдг рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдмреАрдПрд╕рдкреА:

  1. рд╕реНрдкрд┐рдирд▓реЙрдХ рдЖрд░рдВрднреАрдХрд░рдг
  2. рдЬреАрдбреАрдЯреА рдФрд░ рдЖрдИрдбреАрдЯреА рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХреЛ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдФрд░ рд▓реЛрдб рдХрд░рдирд╛
  3. рдкреЗрдЬрд┐рдВрдЧ рдЯреЗрдмрд▓реНрд╕ рдХреА рд╢реБрд░реБрдЖрдд
  4. рд╡реАрдПрдорд╕реАрдПрд╕ рд╕реНрдЯреНрд░рдХреНрдЪрд░реНрд╕ рдХреА рд╢реБрд░реБрдЖрдд рдФрд░ рдПрдХ рдХреЙрдорди рдИрдкреАрдЯреА рдЯреЗрдмрд▓ рдмрдирд╛рдирд╛
  5. рдПрдкреА рдкреНрд░реЛрд╕реЗрд╕рд░ рдХрд╛ рд╕рдХреНрд░рд┐рдпрдгред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдкреНрд░рддреНрдпреЗрдХ IN рдХреЛ рдПрдХ INIT - SIPI рд╡реНрдпрд╡рдзрд╛рди рдЕрдиреБрдХреНрд░рдо рднреЗрдЬрд╛ рдЬрд╛рддрд╛ рд╣реИред SIPI рдЗрдВрдЯрд░рдкреНрдЯ рдХреЗ рд▓рд┐рдП рд╡реЗрдХреНрдЯрд░ 0x20 рд╣реИ, рдЬреЛ 0x20000 (hypervisor.ap рдореЙрдбреНрдпреВрд▓) рдкрд░ рдПрдкреА рдирд┐рдпрдВрддреНрд░рдг рдХреЗ рд╣рд╕реНрддрд╛рдВрддрд░рдг рд╕реЗ рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реИ
  6. 0x7C00 (win7.mbr рдореЙрдбреНрдпреВрд▓) рдкрд░ рдЕрддрд┐рдерд┐ OS рд╢реБрд░реВ рдХрд░рдирд╛

рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдПрдкреА:

  1. рдПрдкреА рдХреЛ рд╕рдХреНрд░рд┐рдп рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдкреНрд░реЛрд╕реЗрд╕рд░ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдореЛрдб рдореЗрдВ рд╣реИред Hypervisor.ap рдореЙрдбреНрдпреВрд▓ рд▓рдВрдмреА рдореЛрдб рдкрд░ рд╕реНрд╡рд┐рдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореЗрдореЛрд░реА рдФрд░ рдкреЗрдЬрд┐рдВрдЧ рдЯреЗрдмрд▓ рдХреЛ рдЗрдирд┐рд╢рд┐рдпрд▓рд╛рдЗрдЬрд╝ рдХрд░рддрд╛ рд╣реИ
  2. IDT, GDT, рд╕рд╛рде рд╣реА рдмреАрдПрд╕рдкреА рдЖрд░рдВрднреАрдХрд░рдг рдЪрд░рдг рдХреЗ рджреМрд░рд╛рди рдмрдирд╛рдИ рдЧрдИ рдкреЗрдЬрд┐рдВрдЧ рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХреА рд╕реВрдЪреА рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ
  3. VMCS рд╕рдВрд░рдЪрдирд╛рдУрдВ рдХрд╛ рдкреНрд░рд╛рд░рдВрдн, рдФрд░ BSP рдХреЗ рдЖрд░рдВрднрд┐рдХ рдЪрд░рдг рдореЗрдВ рдирд┐рд░реНрдорд┐рдд EPT рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХрд╛ рд▓реЛрдбрд┐рдВрдЧ
  4. рд╕рдХреНрд░рд┐рдп HLT рд╕реНрдерд┐рддрд┐ рдХреЗ рд╕рд╛рде vmx рдЧреИрд░-рд░реВрдЯ рдореЛрдб рдкрд░ рд╕реНрд╡рд┐рдЪ рдХрд░рдирд╛

рд╣рдо рдХрд╣ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рд╣рд╛рдЗрдкрд░рд╡рд┐рдЬрд╝рд░ рдореЗрдВ рдПрд╕рдПрдордкреА рд╕рдорд░реНрдерди рдХрд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХрд╛рдлреА рд╕рд░рд▓ рд╣реИ, рд▓реЗрдХрд┐рди рдХреБрдЫ рдмрд┐рдВрджреБ рд╣реИрдВ рдЬрд┐рдиреНрд╣реЗрдВ рдореИрдВ рдЖрдХрд░реНрд╖рд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ред

1.USB рд▓рд┐рдЧреЗрд╕реА рд╕рдкреЛрд░реНрдЯ

рдирдП рдорджрд░рдмреЛрд░реНрдб рдореЙрдбрд▓ рдореЗрдВ PS / 2 рдХрдиреЗрдХреНрдЯрд░ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдкрд┐рдЫрдбрд╝реЗ рд╕рдВрдЧрддрддрд╛ рдХреЛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП USB рд▓рд┐рдЧреЗрд╕реА рд╕рдкреЛрд░реНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рд╣реИ рдХрд┐ рдЖрдк рдЙрд╕реА рддрд░реАрдХреЗ (рдЗрдирдкреБрдЯ / рдЖрдЙрдЯрдкреБрдЯ рдкреЛрд░реНрдЯ) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХ usb рдХреАрдмреЛрд░реНрдб рдпрд╛ рдорд╛рдЙрд╕ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬреИрд╕рд╛ рдХрд┐ PS / 2 рдорд╛рдирдХ рдХреЗ рд╕рд╛рде рдерд╛ред рдпреВрдПрд╕рдмреА рд▓рд┐рдЧреЗрд╕реА рд╕рдкреЛрд░реНрдЯ рдХрд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рди рдХреЗрд╡рд▓ рдорджрд░рдмреЛрд░реНрдб рдХреЗ рдореЙрдбрд▓ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ, рдмрд▓реНрдХрд┐ рдлрд░реНрдорд╡реЗрдпрд░ рдХреЗ рд╡рд┐рднрд┐рдиреНрди рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдореЗрдВ рднреА рдорд╛рдирд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдореЗрд░реЗ Asus X99-PRO рдорджрд░рдмреЛрд░реНрдб рдкрд░, USB рд▓рд┐рдЧреЗрд╕реА рд╕рдкреЛрд░реНрдЯ SMI рдЗрдВрдЯрд░рдкреНрдЯ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрд┐рд╕рдХреЗ рдкреНрд░реЛрд╕реЗрд╕рд░ рдореЗрдВ PS / 2 рдЙрддреНрд╕рд░реНрдЬрди рд╣реЛрддрд╛ рд╣реИред рдореИрдВ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдЗрд╕ рддрд░рд╣ рд╕реЗ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рд▓рд┐рдЦрддрд╛ рд╣реВрдВ, рдХреНрдпреЛрдВрдХрд┐ рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ (рдлрд░реНрдорд╡реЗрдпрд░ рд╕рдВрд╕реНрдХрд░рдг 3801), рдпреВрдПрд╕рдмреА рд▓рд┐рдЧреЗрд╕реА рд╕рдкреЛрд░реНрдЯ рд▓рдВрдмреЗ рдореЛрдб рдХреЗ рд╕рд╛рде рд╕рдВрдЧрдд рдирд╣реАрдВ рд╣реИ рдФрд░ рдЬрдм рдпрд╣ рдПрд╕рдПрдордПрдо рд╕реЗ рд▓реМрдЯрддрд╛ рд╣реИ, рддреЛ рдкреНрд░реЛрд╕реЗрд╕рд░ рд╢рдЯрдбрд╛рдЙрди рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдЪрд▓рд╛ рдЬрд╛рддрд╛ рд╣реИред

рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╕рдмрд╕реЗ рдЖрд╕рд╛рди рдЙрдкрд╛рдп рдпрд╣ рд╣реИ рдХрд┐ рд▓реЙрдиреНрдЧ рдореЛрдб рдкрд░ рдЬрд╛рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ USB рд▓рд┐рдЧреЗрд╕реА рд╕рдкреЛрд░реНрдЯ рдХреЛ рдмрдВрдж рдХрд░ рджрд┐рдпрд╛ рдЬрд╛рдПред рд╣рд╛рд▓рд╛рдБрдХрд┐, рд╡рд┐рдВрдбреЛрдЬ рдореЗрдВ, рдкреАрдПрд╕ / 2 рдХреАрдмреЛрд░реНрдб рдорддрджрд╛рди рдкрджреНрдзрддрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдмреВрдЯ рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреЗ рдЪрдпрди рдХреЗ рдЪрд░рдг рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП USB OS рдХреЛ рд▓реЛрдб рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ USB рд▓рд┐рдЧреЗрд╕реА рд╕рдкреЛрд░реНрдЯ рдХреЛ рдлрд┐рд░ рд╕реЗ рд╕рдХреНрд░рд┐рдп рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред

2. рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рдЯрд╛рд╕реНрдХ рд╕реНрд╡рд┐рдЪ

рдЖрдзреБрдирд┐рдХ рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ, рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рд╡рд┐рдзрд┐рдпреЛрдВ рджреНрд╡рд╛рд░рд╛, рдПрдХ рдирд┐рдпрдо рдХреЗ рд░реВрдк рдореЗрдВ, рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рдмреАрдЪ рд╕реНрд╡рд┐рдЪ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рд╡рд┐рдВрдбреЛрдЬ 7 рдореЗрдВ, рдЯреАрдПрд╕рдПрд╕ рдХреА рдУрд░ рдЗрд╢рд╛рд░рд╛ рдХрд░рддреЗ рд╣реБрдП рдЪрдпрдирдХрд░реНрддрд╛рдУрдВ рдХреЛ 2 - рдПрдирдПрдордЖрдИ рдФрд░ 8 - рдбрдмрд▓ рдлреЙрд▓реНрдЯ рдХреЛ рдмрд╛рдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реМрдВрдкрд╛ рдЧрдпрд╛ рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рдЗрд╕ рддрд░рд╣ рдХреЗ рд╡реНрдпрд╡рдзрд╛рди рд╕реЗ рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рд╕рдВрджрд░реНрдн рд╕реНрд╡рд┐рдЪ рд╣реЛ рдЬрд╛рдПрдЧрд╛ред Intel VMX рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рдЯрд╛рд╕реНрдХ рд╕реНрд╡рд┐рдЪ рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдЗрд╕реЗ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рд╡реАрдПрдо рдПрдХреНрдЬрд┐рдЯ рдХреА рдУрд░ рдЬрд╛рддрд╛ рд╣реИред рдРрд╕реЗ рдорд╛рдорд▓реЛрдВ рдХреЗ рд▓рд┐рдП, рдореИрдВрдиреЗ рдЕрдкрдирд╛ рдЯрд╛рд╕реНрдХ рд╕реНрд╡рд┐рдЪ рд╣реИрдВрдбрд▓рд░ (GuestTaskSwitch function) рд▓рд┐рдЦрд╛ред рдПрдХ рдбрдмрд▓ рдлреЙрд▓реНрдЯ рд╡реНрдпрд╡рдзрд╛рди рдХреЗрд╡рд▓ рдПрдХ рдЧрдВрднреАрд░ рд╕рд┐рд╕реНрдЯрдо рд╕рдВрдШрд░реНрд╖ рдХреА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╣реЛрддрд╛ рд╣реИ, рдЬреЛ рдЕрдиреНрдп рд╡реНрдпрд╡рдзрд╛рдиреЛрдВ рдХреЗ рдЕрдиреБрдЪрд┐рдд рд╣реИрдВрдбрд▓рд┐рдВрдЧ рдХреЗ рдХрд╛рд░рдг рд╣реЛрддрд╛ рд╣реИред рдбрд┐рдмрдЧрд┐рдВрдЧ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ, рдореИрдВ рдЗрд╕рдХреЗ рдкрд╛рд░ рдирд╣реАрдВ рдЖрдпрд╛ред рд▓реЗрдХрд┐рди рд╡рд┐рдВрдбреЛрдЬ рдХреЛ рд░рд┐рдмреВрдЯ рдХрд░рдиреЗ рдХреЗ рд╕рдордп рдПрдкреА рдкреНрд░реЛрд╕реЗрд╕рд░ рдкрд░ рдПрдирдПрдордЖрдИ рджрд┐рдЦрд╛рдИ рджреЗрддрд╛ рд╣реИред рдпрд╣ рдЕрднреА рднреА рдореЗрд░реЗ рд╕рдВрджреЗрд╣ рдХреЛ рдмрдврд╝рд╛рддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдпреЗ рдПрдирдПрдордЖрдИ рдПрдХ рдирд┐рдпрдорд┐рдд рд░рд┐рдмреВрдЯ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд╛ рдкрд░рд┐рдгрд╛рдо рд╣реИрдВ рдпрд╛ рдкрд┐рдЫрд▓реЗ рдХреБрдЫ рдЪрд░рдгреЛрдВ рдореЗрдВ рд╣рд╛рдЗрдкрд░рд╡рд┐рдЬрд░ рдХрд╛ рдпрд╣ рдЧрд▓рдд рд╕рдВрдЪрд╛рд▓рди рд╣реИред рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдЗрд╕ рд╡рд┐рд╖рдп рдкрд░ рдХреЛрдИ рдЬрд╛рдирдХрд╛рд░реА рд╣реИ, рддреЛ рдХреГрдкрдпрд╛ рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдореЗрдВ рдмреЛрд▓реЗрдВ рдпрд╛ рдореБрдЭреЗ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд╕рдВрджреЗрд╢ рдореЗрдВ рд▓рд┐рдЦреЗрдВред

рдЕрддрд┐рдерд┐ рдУрдПрд╕ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди

рдИрдорд╛рдирджрд╛рд░реА рд╕реЗ, рдореИрдВ рд▓рдВрдмреЗ рд╕рдордп рддрдХ рдпрд╣ рддрдп рдирд╣реАрдВ рдХрд░ рд╕рдХрд╛ рдХрд┐ рдЕрддрд┐рдерд┐ рдУрдПрд╕ рдХреЗ рдХрд╛рдо рдореЗрдВ рд╣рд╛рдЗрдкрд░рд╡рд┐рдЬрд░ рдХреЛ рдХреНрдпрд╛ рдмрджрд▓рд╛рд╡ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рдПрдХ рддрд░рдл, рдореИрдВ рдХреБрдЫ рджрд┐рд▓рдЪрд╕реНрдк рджрд┐рдЦрд╛рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛, рдЬреИрд╕реЗ рдХрд┐ рдмреБрдирд┐рдпрд╛рджреА рдиреЗрдЯрд╡рд░реНрдХ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдореЗрдВ рд╣рдорд╛рд░реЗ рд╣реИрдВрдбрд▓рд░ рдХрд╛ рдкрд░рд┐рдЪрдп, рд▓реЗрдХрд┐рди рджреВрд╕рд░реА рдУрд░, рдпрд╣ рд╕рднреА рдмрдбрд╝реА рдорд╛рддреНрд░рд╛ рдореЗрдВ рдХреЛрдб рдХреЗ рд▓рд┐рдП рдиреАрдЪреЗ рдЖ рдЬрд╛рдПрдЧрд╛, рдФрд░ рдПрдХ рд╣рд╛рдЗрдкрд░рд╡рд┐рдЬрд░ рдХреЗ рд╡рд┐рд╖рдп рдХреЗ рд╕рд╛рде рдмрд╣реБрдд рдХрдо рдерд╛ред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдореИрдВ рд╣рд╛рдЗрдкрд░рд╡рд┐рдЬрд░ рдХреЛ рд▓реЛрд╣реЗ рдХреЗ рдХрд┐рд╕реА рд╡рд┐рд╢реЗрд╖ рд╕реЗрдЯ рд╕реЗ рдмрд╛рдВрдзрдирд╛ рдирд╣реАрдВ рдЪрд╛рд╣рддрд╛ рдерд╛ред

рдирддреАрдЬрддрди, рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕рдордЭреМрддрд╛ рдкрд╛рдпрд╛ рдЧрдпрд╛: рд╣рд╛рдЗрдкрд░рд╡рд┐рдЬрд░ рдХреЗ рдЗрд╕ рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдореЛрдб рд╕реЗ рд╕рд┐рд╕реНрдЯрдо рдХреЙрд▓ рдкрд░ рдирд┐рдпрдВрддреНрд░рдг рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рджреВрд╕рд░реЗ рд╢рдмреНрджреЛрдВ рдореЗрдВ, рдЕрддрд┐рдерд┐ рдУрдПрд╕ рдореЗрдВ рдЪрд▓ рд░рд╣реЗ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рд╕рдВрдЪрд╛рд▓рди рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реЛрдЧрд╛ред рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдХрд╛ рдирд┐рдпрдВрддреНрд░рдг рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╛рдлреА рд╕рд░рд▓ рд╣реИ рдФрд░ рдЗрд╕рдХреЗ рдЕрддрд┐рд░рд┐рдХреНрдд рдЖрдкрдХреЛ рдХрд╛рдо рдХрд╛ рдПрдХ рджреГрд╢реНрдп рдкрд░рд┐рдгрд╛рдо рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред

рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рд╕рдВрдЪрд╛рд▓рди рдкрд░ рдирд┐рдпрдВрддреНрд░рдг рд╕рд┐рд╕реНрдЯрдо рдХреЙрд▓ рдХреЗ рд╕реНрддрд░ рдкрд░ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдФрд░ рдореБрдЦреНрдп рд▓рдХреНрд╖реНрдп NtQuerySystemInformation рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдкрд░рд┐рдгрд╛рдо рдХреЛ рдмрджрд▓рдирд╛ рд╣реЛрдЧрд╛ рддрд╛рдХрд┐ рдЬрдм рдЖрдк SystemProcessInformation ( 0x05 ) рддрд░реНрдХ рдХреЗ рд╕рд╛рде рдХреЙрд▓ рдХрд░реЗрдВ, рддреЛ рдЖрдк рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреА рдЬрд╛рдирдХрд╛рд░реА рдХреЛ рд░реЛрдХ рд╕рдХрддреЗ рд╣реИрдВред

рд╡рд┐рдВрдбреЛрдЬ 7 рдореЗрдВ, рд╕рд┐рд╕реНрдЯрдо рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХреЙрд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдкреНрд░реЛрдЧреНрд░рд╛рдо рд╕рд┐рд╕реЗрдВрдЯрд░ рдЕрд╕реЗрдВрдмрд▓рд░ рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, рдЬрд┐рд╕рдХреЗ рдмрд╛рдж рдирд┐рдпрдВрддреНрд░рдг рдХреЛ kFastCallEntry рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреЛ рд╕реНрддрд░ r0 рдкрд░ рдХрд░реНрдиреЗрд▓ рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЕрдиреБрдкреНрд░рдпреЛрдЧ рд╕реНрддрд░ r3 рдкрд░ рд╡рд╛рдкрд╕ рд▓реМрдЯрдиреЗ рдХреЗ рд▓рд┐рдП, sysexit рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред
NtQuerySystemInformation рдлрд╝рдВрдХреНрд╢рди рдирд┐рд╖реНрдкрд╛рджрди рдХреЗ рдкрд░рд┐рдгрд╛рдореЛрдВ рддрдХ рдкрд╣реБрдВрдЪ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП , рдкреНрд░рддреНрдпреЗрдХ рдмрд╛рд░ рдЬрдм sysenter рдХрдорд╛рдВрдб рдирд┐рд╖реНрдкрд╛рджрд┐рдд рд╣реЛрддреА рд╣реИ, рддреЛ рдХреЙрд▓ рдХрд┐рдП рдЧрдП рдлрд╝рдВрдХреНрд╢рди рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЛ рд╕рд╣реЗрдЬрдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИред рдлрд┐рд░, рдЬрдм рд╕рд┐рдлрд┐рд╕реЗрдЯ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдлрд╝рдВрдХреНрд╢рди рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЛ рдЗрдВрдЯрд░рд╕реЗрдкреНрдЯ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рд╕рд╛рде рд╕рдВрдЧреНрд░рд╣реАрдд рдорд╛рди рдХреА рддреБрд▓рдирд╛ рдХрд░реЗрдВ рдФрд░, рдпрджрд┐ рдХреЛрдИ рдореИрдЪ рд╣реИ, рддреЛ рдлрд╝рдВрдХреНрд╢рди рджреНрд╡рд╛рд░рд╛ рд▓реМрдЯрд╛рдП рдЧрдП рдбреЗрдЯрд╛ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рдХрд░реЗрдВред
Intel VMX sysenter / sysexit рдХреЗ рдирд┐рд╖реНрдкрд╛рджрди рдХреА рдирд┐рдЧрд░рд╛рдиреА рдХреЗ рдкреНрд░рддреНрдпрдХреНрд╖ рд╕рд╛рдзрди рдкреНрд░рджрд╛рди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рд╣рд╛рд▓рд╛рдБрдХрд┐, рдпрджрд┐ рдЖрдк рдЕрддрд┐рдерд┐ MSR IA32_SYSENTER_CS рдХреЛ рдорд╛рди 0 рд▓рд┐рдЦрддреЗ рд╣реИрдВ , рддреЛ sysenter / sysexit рдХрдорд╛рдВрдб рдПрдХ GP рдЕрдкрд╡рд╛рдж рдмрдврд╝рд╛рдПрдЧрд╛ рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ VM Exit рд╣реИрдВрдбрд▓рд░ рдХреЛ рдХреЙрд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред VM Exit рдХреЛ рдХреЙрд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП GP рдЕрдкрд╡рд╛рдж рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ VMCS рд╕реЗ рдЕрдкрд╡рд╛рдж рдмрд┐рдЯрдореИрдк рдлрд╝реАрд▓реНрдб рдореЗрдВ 13 рдмрд┐рдЯ рд╕реЗрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рдиреАрдЪреЗ рдХреА рд╕рдВрд░рдЪрдирд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рд╕рд┐рд╕реЗрдВрдЯрд░ / рд╕рд┐рд╕реЗрдХреНрд╕рд┐рдЯ рдЬреЛрдбрд╝реА рдХрд╛ рдЕрдиреБрдХрд░рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

typedef struct{ QWORD ServiceNumber; QWORD Guest_Sys_CS; QWORD Guest_Sys_EIP; QWORD Guest_Sys_ESP; } SysEnter_T; 

ServiceNumber рдлрд╝реАрд▓реНрдб рдореЗрдВ рдлрд╝рдВрдХреНрд╢рди рдХреА рд╕рдВрдЦреНрдпрд╛ рд╣реЛрддреА рд╣реИ рдЬрд┐рд╕реЗ рдХреЙрд▓ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдЗрд╕реЗ рд╣рд░ рдХреЙрд▓ рдХреЗ рд╕рд╛рде рдЕрдкрдбреЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдЕрддрд┐рдерд┐ OS_Sys_CS, Guest_Sys_EIP, Guest_Sys_ESP рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬрдм рдЕрддрд┐рдерд┐ OS рд╕рдВрдмрдВрдзрд┐рдд MSR рд░рдЬрд┐рд╕реНрдЯрд░ рдореЗрдВ рд▓рд┐рдЦрдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддрд╛ рд╣реИред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, MSR-Bitmap рдПрдбреНрд░реЗрд╕ рдореЗрдВ рдорд╛рд╕реНрдХ рд╕реЗрдЯ рд╣реИрдВ ред

 // 174H 372 IA32_SYSENTER_CS SYSENTER_CS write mask ptrMSR_BMP[0x100 + (0x174 >> 6)] |= (1UL << (0x174 & 0x3F)); // 175H 373 IA32_SYSENTER_ESP SYSENTER_ESP write mask ptrMSR_BMP[0x100 + (0x175 >> 6)] |= (1UL << (0x175 & 0x3F)); // 176H 374 IA32_SYSENTER_EIP SYSENTER_EIP write mask ptrMSR_BMP[0x100 + (0x176 >> 6)] |= (1UL << (0x176 & 0x3F)); 

рдЕрддрд┐рдерд┐ OS рдХреЛ рд╕рд┐рд╕реНрдЯрдо рдлрд╝рдВрдХреНрд╢рди рдХреЙрд▓ рдХреЗ рд╕рдВрдЪрд╛рд▓рди рдХреЗ рд▓рд┐рдП рд╣рд╛рдЗрдкрд░рд╡рд┐рдЬрд╝рд░ рджреНрд╡рд╛рд░рд╛ рдХрд┐рдП рдЧрдП рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЛ рдирд╣реАрдВ рджреЗрдЦрдирд╛ рдЪрд╛рд╣рд┐рдПред MSR IA32_SYSENTER_CS рдХреЗ рд▓рд┐рдП рд░реАрдбрд┐рдВрдЧ рдорд╛рд╕реНрдХ рд╕реЗрдЯ рдХрд░рдХреЗ , рдЖрдк рдкрдврд╝рддреЗ рд╕рдордп рдЕрддрд┐рдерд┐ OS рдХреЛ рдЙрд╕рдХреЗ рдореВрд▓ рд░рдЬрд┐рд╕реНрдЯрд░ рдорд╛рди рдкрд░ рд▓реМрдЯрд╛ рд╕рдХрддреЗ рд╣реИрдВред

 // 174H 372 IA32_SYSENTER_CS SYSENTER_CS read mask ptrMSR_BMP[0x174 >> 6] |= (1UL << (0x174 & 0x3F)); 

рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдПрдХ sysenter / sysexit рдХрдорд╛рдВрдб рдЗрдореНрдпреВрд▓реЗрд╢рди рд╕реНрдХреАрдо рд╣реИред



рд╕рд╕реЗрдХреНрд╕ рдЗрдореНрдпреВрд▓реЗрд╢рди рд╕реНрдЯреЗрдЬ рдореЗрдВ , рд╕реНрдЯреЛрд░ рдХрд┐рдП рдЧрдП рдлрдВрдХреНрд╢рди рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреА рддреБрд▓рдирд╛ NtQuerySystemInformation рдирдВрдмрд░ (0x105) рд╕реЗ рдХреА рдЬрд╛рддреА рд╣реИред рдПрдХ рдореИрдЪ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдпрд╣ рдЬрд╛рдБрдЪ рдХреА рдЬрд╛рддреА рд╣реИ рдХрд┐ NtQuerySystemInformation рд╕рд┐рд╕реНрдЯрдо рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╕реВрдЪрдирд╛ рддрд░реНрдХ рдХреЗ рд╕рд╛рде рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдпрджрд┐ рдРрд╕рд╛ рд╣реИ, рддреЛ ChangeProcessNames рдлрд╝рдВрдХреНрд╢рди (DWORD SPI_GVA, DWORD SPI_size) рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдпреБрдХреНрдд рд╕рдВрд░рдЪрдирд╛рдУрдВ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рдХрд░рддрд╛ рд╣реИред
SPI_GVA SYSTEM_PROCESS_INFORMATION рд╕рдВрд░рдЪрдирд╛ рдХрд╛ рдЕрддрд┐рдерд┐ рд╡рд░реНрдЪреБрдЕрд▓ рдкрддрд╛ рд╣реИ
SPI_size рдмрд╛рдЗрдЯреНрд╕ рдореЗрдВ рд╕рдВрд░рдЪрдирд╛рдУрдВ рдХрд╛ рдХреБрд▓ рдЖрдХрд╛рд░ рд╣реИред
SYSTEM_PROCESS_INFORMATION рд╕рдВрд░рдЪрдирд╛ рд╕реНрд╡рдпрдВ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рджрд┐рдЦрд╛рдИ рджреЗрддреА рд╣реИ:

 typedef struct _SYSTEM_PROCESS_INFORMATION { ULONG NextEntryOffset; ULONG NumberOfThreads; BYTE Reserved1[48]; UNICODE_STRING ImageName; KPRIORITY BasePriority; HANDLE UniqueProcessId; PVOID Reserved2; ULONG HandleCount; ULONG SessionId; PVOID Reserved3; SIZE_T PeakVirtualSize; SIZE_T VirtualSize; ULONG Reserved4; SIZE_T PeakWorkingSetSize; SIZE_T WorkingSetSize; PVOID Reserved5; SIZE_T QuotaPagedPoolUsage; PVOID Reserved6; SIZE_T QuotaNonPagedPoolUsage; SIZE_T PagefileUsage; SIZE_T PeakPagefileUsage; SIZE_T PrivatePageCount; LARGE_INTEGER Reserved7[6]; } SYSTEM_PROCESS_INFORMATION; 

рдЗрд╕рдХреЗ рдкрд╛рд░реНрд╕рд┐рдВрдЧ рдореЗрдВ рдХреБрдЫ рднреА рдЬрдЯрд┐рд▓ рдирд╣реАрдВ рд╣реИ, рдореБрдЦреНрдп рдмрд╛рдд рдпрд╣ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЕрддрд┐рдерд┐ рд╡рд░реНрдЪреБрдЕрд▓ рдкрддреЗ рдХреЛ рднреМрддрд┐рдХ рдореЗрдВ рдЕрдиреБрд╡рд╛рдж рдХрд░рдирд╛ рди рднреВрд▓реЗрдВ, рдЗрд╕рдХреЗ рд▓рд┐рдП GuestLinAddrToPhysAddr () рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рд╕реНрдкрд╖реНрдЯрддрд╛ рдХреЗ рд▓рд┐рдП, рдореИрдВрдиреЗ рд╕рднреА рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЗ рдирд╛рдореЛрдВ рдореЗрдВ рдкрд╣рд▓реЗ рджреЛ рдкрд╛рддреНрд░реЛрдВ рдХреЛ ' :) ' рдЪрд┐рд╣реНрди рдХреЗ рд╕рд╛рде рдмрджрд▓ рджрд┐рдпрд╛ред рдЗрд╕ рддрд░рд╣ рдХреЗ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рдХрд╛ рдкрд░рд┐рдгрд╛рдо рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ рдореЗрдВ рджрд┐рдЦрд╛рдИ рджреЗ рд░рд╣рд╛ рд╣реИред



рдкрд░рд┐рдгрд╛рдо

рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рд▓реЗрдЦ рдХреА рд╢реБрд░реБрдЖрдд рдореЗрдВ рд╕реЗрдЯ рдХрд┐рдП рдЧрдП рдХрд╛рд░реНрдп рдкреВрд░реЗ рд╣реЛ рдЧрдП рдереЗред рд╣рд╛рдЗрдкрд░рд╡рд┐рдЬрд░ рдЕрддрд┐рдерд┐ рдУрдПрд╕ рдХреЗ рд╕реНрдерд┐рд░ рд╕рдВрдЪрд╛рд▓рди рдХреЛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╕реНрддрд░ рд╕реЗ рд╕рд┐рд╕реНрдЯрдо рдлрд╝рдВрдХреНрд╢рди рдХреА рдХреЙрд▓ рдХреЛ рднреА рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рддрд╛ рд╣реИред рдореИрдВ рдзреНрдпрд╛рди рджреЗрддрд╛ рд╣реВрдВ рдХрд┐ sysenter / sysexit рдХрдорд╛рдВрдб рдПрдореБрд▓реЗрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдореБрдЦреНрдп рджреЛрд╖ рд╡реАрдПрдо рдПрдХреНрдЬрд┐рдЯ рдХреЙрд▓ рдореЗрдВ рдПрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╡реГрджреНрдзрд┐ рд╣реИ, рдЬреЛ рдкреНрд░рджрд░реНрд╢рди рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░рддрд╛ рд╣реИ рдФрд░ рдпрд╣ рддрдм рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рд╣реИ рдЬрдм рдЕрддрд┐рдерд┐ рдУрдПрд╕ рдПрдХрд▓-рдкреНрд░реЛрд╕реЗрд╕рд░ рдореЛрдб рдореЗрдВ рд╣реИред рдпрджрд┐ рдЖрдк рдХреЗрд╡рд▓ рдЪрдпрдирд┐рдд рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ рдХреЙрд▓ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рддреЗ рд╣реИрдВ рддреЛ рдЗрд╕ рдиреБрдХрд╕рд╛рди рдХреЛ рд╕рдорд╛рдкреНрдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдФрд░ рд╡рд╣ рд╕рдм рдЕрдм рдХреЗ рд▓рд┐рдП рд╣реИред рд▓реЗрдЦ рдХреЗ рд▓рд┐рдП рд╕реВрддреНрд░ рдпрд╣рд╛рдВ рд▓рд┐рдП рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВ

рдЖрдкрдХрд╛ рдзреНрдпрд╛рди рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред

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


All Articles