Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΎΠ½Π»Π°ΠΉΠ½ Π½Π° Bookidrom.ru! БСсплатныС ΠΊΠ½ΠΈΠ³ΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠ»ΠΈΠΊΠ΅

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ Β«ΠŸΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΠ΅ ΠΈ распрСдСлСнноС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° Π‘++Β»

Автор Π₯ьюз ΠšΠ°ΠΌΠ΅Ρ€ΠΎΠ½

Annotation

Π’ ΠΊΠ½ΠΈΠ³Π΅ прСдставлСн Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π½Ρ‹ΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ ΠΊ распрСдСлСнному ΠΈ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΠΌΡƒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ с использованиСм языка Π‘++. Π—Π΄Π΅ΡΡŒ описаны простыС ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ программирования ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹Ρ… Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… машин ΠΈ основы Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ кластСрных ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Π­Ρ‚Π° ΠΊΠ½ΠΈΠ³Π° Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π°ΡƒΡ‡ΠΈΡ‚ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Π΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½Ρ‹Π΅ для совмСстной Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π² сСтСвой срСдС, Π½ΠΎ ΠΈ послуТит Π½Π°Π΄Π΅ΠΆΠ½Ρ‹ΠΌ Β«ΠΏΡƒΡ‚Π΅Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»Π΅ΠΌΒ» ΠΏΠΎ стандартам для программистов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π·Π°Π½ΠΈΠΌΠ°ΡŽΡ‚ΡΡ ΠΌΠ½ΠΎΠ³ΠΎΠ·Π°Π΄Π°Ρ‡Π½Ρ‹ΠΌΠΈ ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΡ‚ΠΎΡ‡Π½Ρ‹ΠΌΠΈ прилоТСниями. ΠœΠ½ΠΎΠ³ΠΎΠ»Π΅Ρ‚Π½ΠΈΠΉ ΠΎΠΏΡ‹Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΈΠ²Π΅Π» Π°Π²Ρ‚ΠΎΡ€ΠΎΠ² ΠΊΠ½ΠΈΠ³ΠΈ ΠΊ использованию Π°Π³Π΅Π½Ρ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΉ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹, Π° для ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ Π·Π°Ρ‚Ρ€Π°Ρ‚ Π½Π° обСспСчСниС связСй ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ систСмы ΠΎΠ½ΠΈ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°ΡŽΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ»ΠΎΠ³ΠΈΡŽ «классной доски».

Π­Ρ‚Π° ΠΊΠ½ΠΈΠ³Π° адрСсована программистам, ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Ρ‰ΠΈΠΊΠ°ΠΌ ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΎΠ², Π° Ρ‚Π°ΠΊΠΆΠ΅ Π½Π°ΡƒΡ‡Π½Ρ‹ΠΌ Ρ€Π°Π±ΠΎΡ‚Π½ΠΈΠΊΠ°ΠΌ, прСподаватСлям ΠΈ студСнтам, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… интСрСсуСт Π²Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΠ΅ ΠΈ распрСдСлСнноС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ с использованиСм языка Π‘++.

ΠŸΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΠ΅ ΠΈ распрСдСлСнноС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° Π‘++

Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅

Π­Ρ‚Π°ΠΏΡ‹ большого ΠΏΡƒΡ‚ΠΈ

ΠŸΠΎΠ΄Ρ…ΠΎΠ΄

ΠŸΠΎΡ‡Π΅ΠΌΡƒ ΠΈΠΌΠ΅Π½Π½ΠΎ Π‘++

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ для ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΈ распрСдСлСнного программирования

Новый Π΅Π΄ΠΈΠ½Ρ‹ΠΉ стандарт спСцификаций UNIX

Для ΠΊΠΎΠ³ΠΎ написана эта ΠΊΠ½ΠΈΠ³Π°

Π‘Ρ€Π΅Π΄Ρ‹ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ

Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»

Π”ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ UML

ΠŸΡ€ΠΎΡ„ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

ΠŸΠ°Ρ€Π°Π³Ρ€Π°Ρ„Ρ‹

ВСстированиС ΠΊΠΎΠ΄Π° ΠΈ Π΅Π³ΠΎ Π½Π°Π΄Π΅ΠΆΠ½ΠΎΡΡ‚ΡŒ

Π–Π΄Π΅ΠΌ Π²Π°ΡˆΠΈΡ… ΠΎΡ‚Π·Ρ‹Π²ΠΎΠ²!

Благодарности

ΠŸΡ€Π΅ΠΈΠΌΡƒΡ‰Π΅ΡΡ‚Π²Π° ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ программирования

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΠΈΠ·ΠΌ

Π”Π²Π° основных ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π° ΠΊ Π΄ΠΎΡΡ‚ΠΈΠΆΠ΅Π½ΠΈΡŽ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ

ΠŸΡ€Π΅ΠΈΠΌΡƒΡ‰Π΅ΡΡ‚Π²Π° ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ программирования

ΠŸΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠ°Ρ модСль ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ программирования (PRAM)

ΠŸΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠ°Ρ классификация схСм ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΠΈΠ·ΠΌΠ°

ΠŸΡ€Π΅ΠΈΠΌΡƒΡ‰Π΅ΡΡ‚Π²Π° распрСдСлСнного программирования

ΠŸΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠΈΠ΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ распрСдСлСнного программирования

ΠœΡƒΠ»ΡŒΡ‚ΠΈΠ°Π³Π΅Π½Ρ‚Π½Ρ‹Π΅ распрСдСлСнныС систСмы

ΠœΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹Π΅ трСбования

ДСкомпозиция

Бвязь

Бинхронизация

Π‘Π°Π·ΠΎΠ²Ρ‹Π΅ ΡƒΡ€ΠΎΠ²Π½ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΠΈΠ·ΠΌΠ°

ΠŸΠ°Ρ€Π°Π»Π»Π΅Π»ΠΈΠ·ΠΌ Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ инструкций

ΠŸΠ°Ρ€Π°Π»Π»Π΅Π»ΠΈΠ·ΠΌ Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ

ΠŸΠ°Ρ€Π°Π»Π»Π΅Π»ΠΈΠ·ΠΌ Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ²

ΠŸΠ°Ρ€Π°Π»Π»Π΅Π»ΠΈΠ·ΠΌ Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ

ΠžΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΠΈΠ΅ языковой ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΠΈΠ·ΠΌΠ° Π² Π‘++

Π’Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΠΈΠ·ΠΌΠ° с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π‘++

Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚ MPI

PVM: стандарт для кластСрного программирования

Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚ CORBA

Π Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ Π½Π° основС стандартов

Π‘Ρ€Π΅Π΄Ρ‹ для ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΈ распрСдСлСнного программирования

РСзюмС

ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΈ распрСдСлСнного программирования

ΠšΠ°Ρ€Π΄ΠΈΠ½Π°Π»ΡŒΠ½ΠΎΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΏΠ°Ρ€Π°Π΄ΠΈΠ³ΠΌΡ‹

ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ†ΠΈΠΈ

ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΠ° β„– 1 : Β«Π³ΠΎΠ½ΠΊΠ°Β» Π΄Π°Π½Π½Ρ‹Ρ…

ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΠ° β„– 2: бСсконСчная отсрочка

ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΠ° β„–3: Π²Π·Π°ΠΈΠΌΠΎΠ±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ°

ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΠ° β„–4: трудности ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ связи

ΠžΡ‚ΠΊΠ°Π·Ρ‹ оборудования ΠΈ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ПО

НСгативныС послСдствия излишнСго ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΠΈΠ·ΠΌΠ° ΠΈ распрСдСлСния

Π’Ρ‹Π±ΠΎΡ€ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹

Π Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ тСстирования ΠΈ ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ

Бвязь ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹ΠΌ ΠΈ распрСдСлСнным ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°ΠΌΠΈ

РСзюмС

Π Π°Π·Π±ΠΈΠ΅Π½ΠΈΠ΅ Π‘++ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π½Π° мноТСство Π·Π°Π΄Π°Ρ‡

ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ процСсса

Π”Π²Π° Π²ΠΈΠ΄Π° процСссов

Π‘Π»ΠΎΠΊ управлСния процСссами

Анатомия процСсса

Бостояния процСссов

ΠŸΠ»Π°Π½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ процСссов

БтратСгия планирования

ИспользованиС ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹ ps

Установка ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚Π° процСсса

ΠŸΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ контСкста

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ процСсса

ΠžΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΈΠΌΠΈ ΠΈ сыновними процСссами

Π£Ρ‚ΠΈΠ»ΠΈΡ‚Π° pstree

ИспользованиС систСмной Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ fork()

ИспользованиС сСмСйства систСмных Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ exec

Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ execl ()

Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ execv ()

ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠΉ для Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ exec ()

Π§Ρ‚Π΅Π½ΠΈΠ΅ ΠΈ установка ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… срСды

ИспользованиС POSIX-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ для пороТдСния процСссов

Π˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΈΡ… ΠΈ сыновних процСссов с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ управлСния процСссами

Π—Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠ΅ процСсса

Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ exit (), kill () ΠΈ abort ()

РСсурсы процСссов

Π’ΠΈΠΏΡ‹ рСсурсов

POSIX-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ для установки ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠΉ доступа ΠΊ рСсурсам

АсинхронныС ΠΈ синхронныС процСссы

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ синхронных ΠΈ асинхронных процСссов с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ fork (), exec (), system () ΠΈ posix_spawn()

Ѐункция wait ()

Π Π°Π·Π±ΠΈΠ΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° Π·Π°Π΄Π°Ρ‡ΠΈ

Π›ΠΈΠ½ΠΈΠΈ Π²ΠΈΠ΄ΠΈΠΌΠΎΠ³ΠΎ ΠΊΠΎΠ½Ρ‚ΡƒΡ€Π°

РСзюмС

Π Π°Π·Π±ΠΈΠ΅Π½ΠΈΠ΅ C++ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π½Π° мноТСство ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ²

ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΏΠΎΡ‚ΠΎΠΊΠ°

ΠšΠΎΠ½Ρ‚Π΅ΠΊΡΡ‚Π½Ρ‹Π΅ трСбования ΠΏΠΎΡ‚ΠΎΠΊΠ°

Π‘Ρ€Π°Π²Π½Π΅Π½ΠΈΠ΅ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² ΠΈ процСссов

Различия ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΏΠΎΡ‚ΠΎΠΊΠ°ΠΌΠΈ ΠΈ процСссами

ΠŸΠΎΡ‚ΠΎΠΊΠΈ, ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΠΈΠ΅ Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ ΠΏΠΎΡ‚ΠΎΠΊΠ°ΠΌΠΈ

ΠŸΡ€Π΅ΠΈΠΌΡƒΡ‰Π΅ΡΡ‚Π²Π° использования ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ²

ΠŸΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ контСкста ΠΏΡ€ΠΈ Π½ΠΈΠ·ΠΊΠΎΠΉ (ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½ΠΎΠΉ) доступности процСссора

ВозмоТности ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΡ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ прилоТСния

ΠŸΡ€ΠΎΡΡ‚Π°Ρ схСма взаимодСйствия ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‰ΠΈΠΌΠΈΡΡ ΠΏΠΎΡ‚ΠΎΠΊΠ°ΠΌΠΈ

Π£ΠΏΡ€ΠΎΡ‰Π΅Π½ΠΈΠ΅ структуры ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

НСдостатки использования ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ²

ΠŸΠΎΡ‚ΠΎΠΊΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π»Π΅Π³ΠΊΠΎ Ρ€Π°Π·Ρ€ΡƒΡˆΠΈΡ‚ΡŒ адрСсноС пространство процСсса

Один ΠΏΠΎΡ‚ΠΎΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ Π»ΠΈΠΊΠ²ΠΈΠ΄ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ†Π΅Π»ΡƒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ

ΠŸΠΎΡ‚ΠΎΠΊΠΈ Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΌΠ½ΠΎΠ³ΠΎΠΊΡ€Π°Ρ‚Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°ΠΌΠΈ

Анатомия ΠΏΠΎΡ‚ΠΎΠΊΠ°

Атрибуты ΠΏΠΎΡ‚ΠΎΠΊΠ°

ΠŸΠ»Π°Π½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ²

Бостояния ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ²

ΠŸΠ»Π°Π½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² ΠΈ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ ΠΊΠΎΠ½ΠΊΡƒΡ€Π΅Π½Ρ†ΠΈΠΈ

БтратСгия планирования ΠΈ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚

ИзмСнСниС ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚Π° ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ²

РСсурсы ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ²

МодСли создания ΠΈ функционирования ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ²

МодСль дСлСгирования

МодСль с Ρ€Π°Π²Π½ΠΎΠΏΡ€Π°Π²Π½Ρ‹ΠΌΠΈ ΡƒΠ·Π»Π°ΠΌΠΈ

МодСль ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅Ρ€Π°

МодСль Β«ΠΈΠ·Π³ΠΎΡ‚ΠΎΠ²ΠΈΡ‚Π΅Π»ΡŒ-ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΡŒΒ»

МодСли SPMD ΠΈ МРМD для ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ²

Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ Pthread

Анатомия простой ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΡ‚ΠΎΡ‡Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

ΠšΠΎΠΌΠΏΠΈΠ»ΡΡ†ΠΈΡ ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠ° ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΡ‚ΠΎΡ‡Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ²

ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π° ΠΏΠΎΡ‚ΠΎΠΊΠ°

ΠŸΡ€ΠΈΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ²

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΎΡ‚ΠΊΡ€Π΅ΠΏΠ»Π΅Π½Π½Ρ‹Ρ… ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ²

ИспользованиС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΎΠ²

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΎΡ‚ΠΊΡ€Π΅ΠΏΠ»Π΅Π½Π½Ρ‹Ρ… ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΎΠ²

Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠΎΡ‚ΠΎΠΊΠ°ΠΌΠΈ

Π—Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠ΅ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ²

Π’ΠΎΡ‡ΠΊΠΈ аннулирования ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ²

ΠžΡ‡ΠΈΡΡ‚ΠΊΠ° ΠΏΠ΅Ρ€Π΅Π΄ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠ΅ΠΌ

Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ стСком ΠΏΠΎΡ‚ΠΎΠΊΠ°

Установка Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΎΠ² планирования ΠΈ свойств ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ²

Установка области ΠΊΠΎΠ½ΠΊΡƒΡ€Π΅Π½Ρ†ΠΈΠΈ ΠΏΠΎΡ‚ΠΎΠΊΠ°

ИспользованиС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ sysconf ()

Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ критичСскими Ρ€Π°Π·Π΄Π΅Π»Π°ΠΌΠΈ

Π‘Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ использования ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ

Π Π°Π·Π±ΠΈΠ΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° нСсколько ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ²

ИспользованиС ΠΌΠΎΠ΄Π΅Π»ΠΈ дСлСгирования

ИспользованиС ΠΌΠΎΠ΄Π΅Π»ΠΈ сСти с Ρ€Π°Π²Π½ΠΎΠΏΡ€Π°Π²Π½Ρ‹ΠΌΠΈ ΡƒΠ·Π»Π°ΠΌΠΈ

ИспользованиС ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅Ρ€Π°

ИспользованиС ΠΌΠΎΠ΄Π΅Π»ΠΈ Β«ΠΈΠ·Π³ΠΎΡ‚ΠΎΠ²ΠΈΡ‚Π΅Π»ΡŒ-ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΡŒΒ»

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΡ‚ΠΎΡ‡Π½Ρ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ²

РСзюмС

Бинхронизация ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎ выполняСмых Π·Π°Π΄Π°Ρ‡

ΠšΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ†ΠΈΡ порядка выполнСния ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ²

Π’Π·Π°ΠΈΠΌΠΎΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρƒ синхронизируСмыми Π·Π°Π΄Π°Ρ‡Π°ΠΌΠΈ

ΠžΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ Ρ‚ΠΈΠΏΠ° старт-старт (CC)

ΠžΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ Ρ‚ΠΈΠΏΠ° Ρ„ΠΈΠ½ΠΈΡˆ-старт (Π€Π‘)

ΠžΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ Ρ‚ΠΈΠΏΠ° старт-Ρ„ΠΈΠ½ΠΈΡˆ (Π‘Π€)

ΠžΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ Ρ‚ΠΈΠΏΠ° Ρ„ΠΈΠ½ΠΈΡˆ-Ρ„ΠΈΠ½ΠΈΡˆ (Π€Π€)

Бинхронизация доступа ΠΊ Π΄Π°Π½Π½Ρ‹ΠΌ

МодСль РРАМ

ΠŸΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΈ ΠΈΡΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰ΠΈΠΉ доступ ΠΊ памяти

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ сСмафоры

ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΠΏΠΎ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΡŽ сСмафором

ΠœΡŒΡŽΡ‚Π΅ΠΊΡΠ½Ρ‹Π΅ сСмафоры

ИспользованиС ΠΌΡŒΡŽΡ‚Π΅ΠΊΡΠ½ΠΎΠ³ΠΎ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°

ИспользованиС ΠΌΡŒΡŽΡ‚Π΅ΠΊΡΠ½Ρ‹Ρ… сСмафоров для управлСния критичСскими Ρ€Π°Π·Π΄Π΅Π»Π°ΠΌΠΈ

Π‘Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ для чтСния ΠΈ записи

ИспользованиС Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΎΠΊ чтСния-записи для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ стратСгии доступа

УсловныС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅

ИспользованиС условных ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… для управлСния ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡΠΌΠΈ синхронизации

ΠžΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ ΠΊ синхронизации

РСзюмС

ОбъСдинСниС возмоТностСй ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ программирования ΠΈ C++ срСдств Π½Π° основС PVM

ΠšΠ»Π°ΡΡΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΠΈΠ·ΠΌΠ°, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Π΅ систСмой PVM

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° PVM для языка Π‘++

ΠšΠΎΠΌΠΏΠΈΠ»ΡΡ†ΠΈΡ ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠ° C++/PVM-npoΠ³paΠΌΠΌ

Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ PVM-ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π² Π²ΠΈΠ΄Π΅ Π΄Π²ΠΎΠΈΡ‡Π½ΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»Π°

Запуск PVM-ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ c ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ PVM-консоли

Запуск PVM-ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ c ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ XPVM

ВрСбования ΠΊ PVM-ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°ΠΌ

ОбъСдинСниС динамичСской Π‘++-Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ c Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΎΠΉ PVM