Π—Π°ΠΊΠ°Π·Π°Ρ‚ΡŒ курсовыС, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Π΅, Ρ€Π΅Ρ„Π΅Ρ€Π°Ρ‚Ρ‹...
ΠžΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π½Π° Π·Π°ΠΊΠ°Π·. НСдорого!

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ понятия. 
АрхитСктура ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы Windows

Π Π΅Ρ„Π΅Ρ€Π°Ρ‚ΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈΠ£Π·Π½Π°Ρ‚ΡŒ ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒΠΌΠΎΠ΅ΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹

Windows прСдоставляСт Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ для ΠΌΠΎΠ΄Π΅Π»ΠΈ процСссов — задания (jobs). Они ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Ρ‹ Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π³Ρ€ΡƒΠΏΠΏΠ°ΠΌΠΈ процСссов ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ ΠΎΠΏΠ΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ΠΊΠ°ΠΊ Π΅Π΄ΠΈΠ½Ρ‹ΠΌ Ρ†Π΅Π»Ρ‹ΠΌ. ΠžΠ±ΡŠΠ΅ΠΊΡ‚-Π·Π°Π΄Π°Π½ΠΈΠ΅ позволяСт ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Ρ‹ ΠΈ Π½Π°ΠΊΠ»Π°Π΄Ρ‹Π²Π°Ρ‚ΡŒ ограничСния Π½Π° ΠΏΡ€ΠΎΡ†Π΅ΡΡ ΠΈΠ»ΠΈ процСссы, сопоставлСнныС с Π·Π°Π΄Π°Π½ΠΈΠ΅ΠΌ. Π’ ΡΡ‚ΠΎΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π΅ Ρ‚Π°ΠΊΠΆΠ΅ хранится информация ΠΎΠ±ΠΎ всСх процСссах, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅… Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΅Ρ‰Ρ‘ >

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ понятия. АрхитСктура ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы Windows (Ρ€Π΅Ρ„Π΅Ρ€Π°Ρ‚, курсовая, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Π°Ρ)

ΠŸΡ€ΠΎΡ†Π΅ΡΡΡ‹; ΠΏΠΎΡ‚ΠΎΠΊΠΈ ΠΈ Π·Π°Π΄Π°Π½ΠΈΡ.

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° прСдставляСт собой статичСский Π½Π°Π±ΠΎΡ€ ΠΊΠΎΠΌΠ°Π½Π΄, Π° ΠΏΡ€ΠΎΡ†Π΅ΡΡ — это ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ для Π½Π°Π±ΠΎΡ€Π° рСсурсов, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ экзСмпляра ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. На ΡΠ°ΠΌΠΎΠΌ высоком ΡƒΡ€ΠΎΠ²Π½Π΅ абстракции процСсс Π² Windows Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅:

  • β€’ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΎΠ΅ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠ΅ адрСсноС пространство — Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ адрСсов Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ памяти, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ процСсс;
  • β€’ ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡƒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ — исполняСмый ΠΊΠΎΠ΄ ΠΈ Π΄Π°Π½Π½Ρ‹Π΅, ΠΏΡ€ΠΎΠ΅Ρ†ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Π΅ Π½Π° Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠ΅ адрСсноС пространство процСсса;
  • β€’ список ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹Ρ… описатСлСй (handles) Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… систСмных рСсурсов — сСмафоров, ΠΊΠΎΠΌΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… ΠΏΠΎΡ€Ρ‚ΠΎΠ², Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², доступных всСм ΠΏΠΎΡ‚ΠΎΠΊΠ°ΠΌ Π² Π΄Π°Π½Π½ΠΎΠΌ процСссС;
  • β€’ контСкст Π·Π°Ρ‰ΠΈΡ‚Ρ‹ (security context), Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹ΠΉ ΠΌΠ°Ρ€ΠΊΠ΅Ρ€ΠΎΠΌ доступа (асcess token) ΠΈ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΉ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, Π³Ρ€ΡƒΠΏΠΏΡ‹ бСзопасности ΠΈ ΠΏΡ€ΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΈ, сопоставлСнныС с ΠΏΡ€ΠΎΡ†Π΅ΡΡΠΎΠΌ;
  • β€’ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ процСсса (Π²ΠΎ Π²Π½ΡƒΡ‚рисистСмной Ρ‚Π΅Ρ€ΠΌΠΈΠ½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹ΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠΌ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°);
  • β€’ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ ΠΎΠ΄ΠΈΠ½ ΠΏΠΎΡ‚ΠΎΠΊ.

ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ процСсс Ρ‚Π°ΠΊΠΆΠ΅ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π½Π° ΡΠ²ΠΎΠΉ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ процСсс (процСсс-ΡΠΎΠ·Π΄Π°Ρ‚Π΅Π»ΡŒ). Однако, Ссли Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒ сущСствуСт, эта информация Π½Π΅ ΠΎΠ±Π½ΠΎΠ²Π»ΡΠ΅Ρ‚ся. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π΅ΡΡ‚ΡŒ Π²Π΅Ρ€ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π½Π΅ΠΊΠΈΠΉ процСсс ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π½Π° ΡƒΠΆΠ΅ Π½Π΅ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ родитСля. Π­Ρ‚ΠΎ Π½Π΅ ΡΠΎΠ·Π΄Π°Π΅Ρ‚ Π½ΠΈΠΊΠ°ΠΊΠΎΠΉ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π½ΠΈΠΊΡ‚ΠΎ Π½Π΅ ΠΏΠΎΠ»Π°Π³Π°Π΅Ρ‚ся Π½Π° Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ Ρ‚Π°ΠΊΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ. Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ экспСримСнт ΠΈΠ»Π»ΡŽΡΡ‚Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚ Π΄Π°Π½Π½Ρ‹ΠΉ случай.

Для просмотра (ΠΈ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ) процСссов ΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ, связанной с Π½ΠΈΠΌΠΈ, сущСствуСт Ρ†Π΅Π»Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ΡΡ:

  • β€’ Π² ΡΠ°ΠΌΡƒ Windows;
  • β€’ Π² Windows Support Tools;
  • β€’ Windows Debugging Tools;
  • β€’ рСсурсы Windows;
  • β€’ Platform SDK;

МногиС ΠΈΠ· ΡΡ‚ΠΈΡ… ΡƒΡ‚ΠΈΠ»ΠΈΡ‚ выводят ΠΏΠ΅Ρ€Π΅ΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠ΅ΡΡ подмноТСства ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ Π±Π°Π·ΠΎΠ²Ρ‹Ρ… процСссах ΠΈ ΠΏΠΎΡ‚ΠΎΠΊΠ°Ρ…, ΠΈΠ½ΠΎΠ³Π΄Π° ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Π΅ ΠΏΠΎ Ρ€Π°Π·Π½Ρ‹ΠΌ ΠΈΠΌΠ΅Π½Π°ΠΌ.

ΠŸΠΎΡ‚ΠΎΠΊ (thread) — нСкая ΡΡƒΡ‰Π½ΠΎΡΡ‚ΡŒ Π²Π½ΡƒΡ‚Ρ€ΠΈ процСсса, ΠΏΠΎΠ»ΡƒΡ‡Π°ΡŽΡ‰Π°Ρ врСмя CPU для выполнСния. Π‘Π΅Π· ΠΏΠΎΡ‚ΠΎΠΊΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° процСсса Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ. ΠŸΠΎΡ‚ΠΎΠΊ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π²Π°ΠΆΠ½Ρ‹Π΅ элСмСнты:

  • β€’ содСрТимоС Π½Π°Π±ΠΎΡ€Π° рСгистров CPU, ΠΎΡ‚Ρ€Π°ΠΆΠ°ΡŽΡ‰ΠΈΡ… состояниС CPU;
  • β€’ Π΄Π²Π° стСка, ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠΌ ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ ядра, Π° Π΄Ρ€ΡƒΠ³ΠΎΠΉ — Π² ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅;
  • β€’ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΡƒΡŽ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ памяти, Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡƒΡŽ локальной ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ ΠΏΠΎΡ‚ΠΎΠΊΠ° (thread-local storage, TLS) ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡƒΡŽ подсистСмами, Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°ΠΌΠΈ ΠΈΡΠΏΠΎΠ»Π½ΡΡŽΡ‰ΠΈΡ… систСм (run-time libraries) ΠΈ DLL;
  • β€’ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΠΏΠΎΡ‚ΠΎΠΊΠ° (Π²ΠΎ Π²Π½ΡƒΡ‚рисистСмной Ρ‚Π΅Ρ€ΠΌΠΈΠ½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Ρ‚Π°ΠΊΠΆΠ΅ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹ΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠΌ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°: ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ процСссов ΠΈ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΡŽΡ‚ΡΡ ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ пространства ΠΈΠΌΠ΅Π½ ΠΈ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΠΏΠ΅Ρ€Π΅ΠΊΡ€Ρ‹Π²Π°ΡŽΡ‚ся);
  • β€’ ΠΈΠ½ΠΎΠ³Π΄Π° ΠΏΠΎΡ‚ΠΎΠΊΠΈ ΠΎΠ±Π»Π°Π΄Π°ΡŽΡ‚ своим контСкстом Π·Π°Ρ‰ΠΈΡ‚Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΡ‚ΠΎΡ‡Π½Ρ‹ΠΌΠΈ сСрвСрными прилоТСниями, ΠΏΠΎΠ΄ΠΌΠ΅Π½ΡΡŽΡ‰ΠΈΠΌΠΈ контСкст Π·Π°Ρ‰ΠΈΡ‚Ρ‹ обслуТиваСмых ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ².

ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ рСгистры, стСки ΠΈ Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ области памяти Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ контСкстом ΠΏΠΎΡ‚ΠΎΠΊΠ°. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ эта информация Ρ€Π°Π·Π»ΠΈΡ‡Π½Π° Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎΠΉ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Windows, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π°Ρ структура Π΄Π°Π½Π½Ρ‹Ρ… спСцифична для ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹. Windows-функция GetThreadContext прСдоставляСт доступ ΠΊ ΡΡ‚ΠΎΠΉ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎ-зависимой ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ (Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΠΎΠΉ Π±Π»ΠΎΠΊΠΎΠΌ CONTEXT).

Π₯отя Ρƒ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² свой контСкст выполнСния, ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΏΠΎΡ‚ΠΎΠΊ Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΎΠ΄Π½ΠΎΠ³ΠΎ процСсса Π΄Π΅Π»ΠΈΡ‚ Π΅Π³ΠΎ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠ΅ адрСсноС пространство (Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ рСсурсы, ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°Ρ‰ΠΈΠ΅ процСссу). Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ всС ΠΏΠΎΡ‚ΠΎΠΊΠΈ Π² ΠΏΡ€ΠΎΡ†Π΅ΡΡΠ΅ ΠΌΠΎΠ³ΡƒΡ‚ Π·Π°ΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ ΠΈ ΡΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ содСрТимоС памяти любого ΠΈΠ· ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² Π΄Π°Π½Π½ΠΎΠ³ΠΎ процСсса. Однако ΠΏΠΎΡ‚ΠΎΠΊΠΈ Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ случайно ΡΠΎΡΠ»Π°Ρ‚ΡŒΡΡ Π½Π° Π°Π΄Ρ€Π΅ΡΠ½ΠΎΠ΅ пространство Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ процСсса. Π˜ΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π² ΡΠΈΡ‚ΡƒΠ°Ρ†ΠΈΠΈ, ΠΊΠΎΠ³Π΄Π° Ρ‚ΠΎΡ‚ прСдоставляСт Ρ‡Π°ΡΡ‚ΡŒ своСго адрСсного пространства, ΠΊΠ°ΠΊ Ρ€Π°Π·Π΄Π΅Π» ΠΎΠ±Ρ‰Π΅ΠΉ памяти (shared memory section), Π² Windows API Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ «ΠΏΡ€ΠΎΠ΅ΠΊΡ†ΠΈΡ Ρ„Π°ΠΉΠ»Π°» (file mapping object), ΠΈΠ»ΠΈ ΠΊΠΎΠ³Π΄Π° ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΠΏΡ€ΠΎΡ†Π΅ΡΡΠΎΠ² ΠΈΠΌΠ΅Π΅Ρ‚ ΠΏΡ€Π°Π²ΠΎ Π½Π° ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ процСсса ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ доступа ΠΊ ΠΏΠ°ΠΌΡΡ‚ΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ процСссами, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ReadProcessMemory ΠΈ WriteProcessMemory.

ΠšΡ€ΠΎΠΌΠ΅ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΎΠ³ΠΎ адрСсного пространства ΠΈ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² Ρƒ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ процСсса ΠΈΠΌΠ΅ΡŽΡ‚ΡΡ идСнтификация Π·Π°Ρ‰ΠΈΡ‚Ρ‹ ΠΈ ΡΠΏΠΈΡΠΎΠΊ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹Ρ… описатСлСй Ρ‚Π°ΠΊΠΈΡ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², ΠΊΠ°ΠΊ Ρ„Π°ΠΉΠ»Ρ‹ ΠΈ Ρ€Π°Π·Π΄Π΅Π»Ρ‹ ΠΎΠ±Ρ‰Π΅ΠΉ памяти, ΠΈΠ»ΠΈ ΡΠΈΠ½Ρ…Ρ€ΠΎΠ½ΠΈΠ·ΠΈΡ€ΡƒΡŽΡ‰ΠΈΡ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π²Ρ€ΠΎΠ΄Π΅ ΠΌΡŒΡŽΡ‚Π΅ΠΊΡΠΎΠ², событий ΠΈ ΡΠ΅ΠΌΠ°Ρ„ΠΎΡ€ΠΎΠ².

ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ процСсс ΠΎΠ±Π»Π°Π΄Π°Π΅Ρ‚ контСкстом Π·Π°Ρ‰ΠΈΡ‚Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ хранится Π² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π΅ — ΠΌΠ°Ρ€ΠΊΠ΅Ρ€Π΅ доступа. ΠœΠ°Ρ€ΠΊΠ΅Ρ€ доступа содСрТит ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡŽ Π·Π°Ρ‰ΠΈΡ‚Ρ‹ ΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅Ρ‚ полномочия Π΄Π°Π½Π½ΠΎΠ³ΠΎ процСсса. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Ρƒ ΠΏΠΎΡ‚ΠΎΠΊΠ° Π½Π΅Ρ‚ собствСнного ΠΌΠ°Ρ€ΠΊΠ΅Ρ€Π° доступа, Π½ΠΎ ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π΅Π³ΠΎ, ΠΈ ΡΡ‚ΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ Π΅ΠΌΡƒ ΠΏΠΎΠ΄ΠΌΠ΅Π½ΡΡ‚ΡŒ контСкст Π·Π°Ρ‰ΠΈΡ‚Ρ‹ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ процСсса (Π² Ρ‚ΠΎΠΌ числС выполняСмого Π½Π° ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠΉ систСмС Windows).

ДСскрипторы Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… адрСсов (virtual address descriptors, VAD) — это структуры Π΄Π°Π½Π½Ρ‹Ρ…, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ диспСтчСром памяти для ΡƒΡ‡Π΅Ρ‚Π° Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… адрСсов, задСйствованных процСссом.

Windows прСдоставляСт Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ для ΠΌΠΎΠ΄Π΅Π»ΠΈ процСссов — задания (jobs). Они ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Ρ‹ Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π³Ρ€ΡƒΠΏΠΏΠ°ΠΌΠΈ процСссов ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ ΠΎΠΏΠ΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ΠΊΠ°ΠΊ Π΅Π΄ΠΈΠ½Ρ‹ΠΌ Ρ†Π΅Π»Ρ‹ΠΌ. ΠžΠ±ΡŠΠ΅ΠΊΡ‚-Π·Π°Π΄Π°Π½ΠΈΠ΅ позволяСт ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Ρ‹ ΠΈ Π½Π°ΠΊΠ»Π°Π΄Ρ‹Π²Π°Ρ‚ΡŒ ограничСния Π½Π° ΠΏΡ€ΠΎΡ†Π΅ΡΡ ΠΈΠ»ΠΈ процСссы, сопоставлСнныС с Π·Π°Π΄Π°Π½ΠΈΠ΅ΠΌ. Π’ ΡΡ‚ΠΎΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π΅ Ρ‚Π°ΠΊΠΆΠ΅ хранится информация ΠΎΠ±ΠΎ всСх процСссах, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±Ρ‹Π»ΠΈ сопоставлСны с Π·Π°Π΄Π°Π½ΠΈΠ΅ΠΌ, Π½ΠΎ ΠΊ Π½Π°ΡΡ‚оящСму Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΡƒΠΆΠ΅ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½Ρ‹. Π’ ΠΊΠ°ΠΊΠΈΡ…-Ρ‚ΠΎ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡΡ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚-Π·Π°Π΄Π°Π½ΠΈΠ΅ компСнсируСт отсутствиС иСрархичСского Π΄Π΅Ρ€Π΅Π²Π° процСссов Π² Windows, Π° Π² ΠΊΠ°ΠΊΠΈΡ…-Ρ‚ΠΎ — Π΄Π°ΠΆΠ΅ прСвосходит ΠΏΠΎ ΡΠ²ΠΎΠΈΠΌ возмоТностям Π΄Π΅Ρ€Π΅Π²ΠΎ процСссов UNIX.

ΠŸΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ вСсь тСкст
Π—Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Ρ„ΠΎΡ€ΠΌΡƒ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Ρ€Π°Π±ΠΎΡ‚ΠΎΠΉ