ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° — ΡΠΎΠ²ΠΎΠΊΡΠΏΠ½ΠΎΡΡΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ
ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ ΠΈΠ· ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² ΠΡΠ, Ρ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΡΠΌΠΈ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ°ΠΌΠΈ, Π²Π·Π°ΠΈΠΌΠΎΡΠ²ΡΠ·Π°Π½Π½ΡΠΌΠΈ Ρ ΡΡΠ½ΠΊΡΠΈΡΠΌΠΈ Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΡΠ Π² Π·Π°Π΄Π°Π½Π½ΠΎΠΉ ΡΡΠ΅Π΄Π΅. ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ, ΠΈΡΡ
ΠΎΠ΄Ρ ΠΈΠ· ΠΎΠ±ΡΠ΅ΠΉ ΡΠΎΡΠΊΠΈ Π·ΡΠ΅Π½ΠΈΡ — ΡΠ³ΠΎ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΡΠΉ ΠΏΡΠΎΠ΄ΡΠΊΠ³ (ΠΊΠΎΠ΄) ΠΌΠ΅ΡΠΎΠ΄Π° ΠΈΠ»ΠΈ ΡΡΠ½ΠΊΡΠΈΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠ½ΡΡ ΠΌΠΎΠ΄Π΅Π»Ρ, ΡΠ΅Π°Π»ΠΈΠ·ΡΠ΅Ρ ΡΠ°ΡΡΡ ΠΈΠ»ΠΈ Π²ΡΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ ΠΏΡΠ΅Π΄ΠΌΠ΅ΡΠ½ΡΡ ΠΎΠ±Π»Π°ΡΡΡ ΠΈ ΡΠΌΠ΅Π΅Ρ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°ΡΡ Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ°ΠΌΠΈ ΡΠΈΡΡΠ΅ΠΌΡ ΡΠ΅ΡΠ΅Π· ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΡ [89, 109].
ΠΠΎΠ΄Π΅Π»Ρ ΠΠ‘ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΠΌ ΡΠ°ΠΊ:
Π³Π΄Π΅ L = (LI, L2 Lk) — ΡΠ·ΡΠΊ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΉ ΠΡΠ ΠΈ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ·ΡΠΊ Π²ΠΊΠ»ΡΡΠ°Π΅Ρ Π² ΡΠ΅Π±Ρ Π½Π°Π±ΠΎΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Π°Π»Π³Π΅Π±ΡΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ (actions) ΠΏΠΎ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΡ
ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ²; Mf- ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΡΡΠ½ΠΊΡΠΈΠΉ ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΡΠ, ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΠΎ ΡΡΡΠ½ΠΎΡΡΠΈ ΠΌΠΎΠ΄Π΅Π»ΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² ΠΡΠ Mf = (ΠΠΈ 02., ΠΠΏ), ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ ΠΊΠΎΡΠΎΡΠΎΠΉ ΡΡΠ°Π½ΡΡΠΎΡΠΌΠΈΡΡΠ΅ΡΡΡ ΠΊ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ½ΠΎΠΌΡ ΠΊΠΎΠ΄Ρ; Ms = (Msin, Msoul, Msinout) — ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΡΠ΅ΡΠ²ΠΈΡΠΎΠ², ΠΊΠΎΡΠΎΡΠΎΠ΅ Π±Π°Π·ΠΈΡΡΠ΅ΡΡΡ Π½Π° ΠΌΠΎΠ΄Π΅Π»ΠΈ ΡΠ²ΡΠ·ΠΈ ΠΈ Π²ΠΊΠ»ΡΡΠ°Π΅Ρ Π² ΡΠ΅Π±Ρ ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ Π²Ρ
ΠΎΠ΄Π½ΡΡ
Π΄Π°Π½Π½ΡΡ
Msm, Π²ΡΡ
ΠΎΠ΄Π½ΡΡ
Π΄Π°Π½Π½ΡΡ
ΠΠΆΠΈ1 ΠΈ ΡΠ΅ΡΠ²Π΅ΡΠ½ΡΡ
Π΄Π°Π½Π½ΡΡ
Msmout ΠΠ‘ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠ΅ Application, Π±Π°Π·ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ
Π½Π° ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π΅ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΡ
ΡΠ΅ΡΠ²ΠΈΡΠ°Ρ
(Common Facility Services) ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΡΠ΅Π΄Ρ, ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠ΅Π°Π»ΠΈΠ·ΡΠ΅ΡΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠΌ Π±ΡΠΎΠΊΠ΅ΡΠΎΠΌ ΠΈΠ»ΠΈ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΎΠΌ ΡΠ΅ΡΠ²ΠΈΡΠΎΠ² ΠΈ Π΄Ρ.; Π/, — ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ² Π² ΡΠ·ΡΠΊΠ΅ IDL Ρ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ΠΌ Π²Ρ
ΠΎΠ΄Π½ΡΡ
in ΠΈ Π²ΡΡ
ΠΎΠ΄Π½ΡΡ
ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² out ΠΈ inout ΠΠΠ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠΈΠΏΠ° Π΄Π»Ρ ΠΏΠ°ΡΡ ΡΠ²ΡΠ·Π°Π½Π½ΡΡ
ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² Π² ΡΡΡΡΠΊΡΡΡΠ΅ ΠΠ‘. Π‘ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΎΠΉ ΡΠΎΡΠΊΠΈ Π·ΡΠ΅Π½ΠΈΡ Π²ΡΠ΅ ΠΎΠ±ΡΠΈΠ΅ Π’Π ΡΠΏΠ΅ΡΠΈΡΠΈΡΠΈΡΡΡΡΡΡ ΠΊΠ°ΠΊ Π²Π½Π΅ΡΠ½ΠΈΠ΅ Π΄Π°Π½Π½ΡΠ΅ Π² ΠΏΠ°ΡΠΏΠΎΡΡΠ΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΠ‘ ΠΈΠ· ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² ΠΡΠ; Md — ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ Π΄Π°Π½Π½ΡΡ
ΠΈ ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΡΡ
ΠΏΡΠ΅Π΄ΠΌΠ΅ΡΠ½ΠΎΠΉ ΠΎΠ±Π»Π°ΡΡΠΈ ΠΠ‘, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΏΠ΅ΡΠΈΡΠΈΡΠΈΡΠΎΠ²Π°Π½Ρ Π² ΠΠΠ, ΠΊΠ°ΠΊ ΠΏΡΠΈΠΌΠΈΡΠΈΠ²Π½ΡΠ΅ ΠΈΠ»ΠΈ ΡΠ»ΠΎΠΆΠ½ΡΠ΅ ΡΡΠ½Π΄Π°ΠΌΠ΅Π½ΡΠ°Π»ΡΠ½ΡΠ΅ Π’Π ΡΠ·ΡΠΊΠΎΠ² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ, Π° ΡΠ°ΠΊΠΆΠ΅ Π² ΠΌΠΎΠ΄ΡΠ»ΡΡ
-ΠΏΠΎΡΡΠ΅Π΄Π½ΠΈΠΊΠ°Ρ
(stub, skeleton) Π² ΡΠ·ΡΠΊΠ΅ IDL.
ΠΠ½ΠΎΠΆΠ΅ΡΡΠ²Π° MinC) Ms ΠΈ Π, ΡΠ²ΡΠ·Π°Π½Ρ Ρ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ½ΡΠΌΠΈ ΠΈ ΠΎΠ±ΡΠΈΠΌ Π΄Π°Π½Π½ΡΠΌΠΈ ΠΈ ΠΈΠΌΠ΅ΡΡ ΠΏΠ΅ΡΠ΅ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎ Π΄Π°Π½Π½ΡΠΌ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΡΠ½Π΅ΡΠ΅Π½Ρ ΠΊ in, out, inout ΠΈ Π²Ρ
ΠΎΠ΄ΡΡ Π² ΡΠΎΡΡΠ°Π² Π²Π½Π΅ΡΠ½ΠΈΡ
ΡΠΈΠΏΠΎΠ² Π΄Π°Π½Π½ΡΡ
, ΠΊΠΎΡΠΎΡΡΠΌΠΈ ΠΎΠ±ΠΌΠ΅Π½ΠΈΠ²Π°ΡΡΡΡ ΠΏΠΎ ΡΠ΅ΡΠΈ ΠΎΠ΄ΠΈΠ½ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ Ρ Π΄ΡΡΠ³ΠΈΠΌ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠ΅ Application. ΠΠΎ ΠΏΠ΅ΡΠ΅Π΄Π°Π½Π½ΡΠΌ Π΄Π°Π½Π½ΡΠΌ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ ΠΈ ΠΎΡΠΏΡΠ°Π²Π»ΡΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ°, ΠΊΠΎΡΠΎΡΡΠΉ ΠΎΠ±ΡΠ°ΡΠΈΠ»ΡΡ Ρ Π·Π°ΠΏΡΠΎΡΠΎΠΌ ΠΈΠ»ΠΈ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΎΠΌ ΠΊ ΡΠ΅ΡΠ²Π΅ΡΠ½ΠΎΠΌΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ.