🗊 Презентация Архитектура вычислительных систем. Синхронизация процессов

Нажмите для полного просмотра!
Архитектура вычислительных систем. Синхронизация процессов, слайд №1 Архитектура вычислительных систем. Синхронизация процессов, слайд №2 Архитектура вычислительных систем. Синхронизация процессов, слайд №3 Архитектура вычислительных систем. Синхронизация процессов, слайд №4 Архитектура вычислительных систем. Синхронизация процессов, слайд №5 Архитектура вычислительных систем. Синхронизация процессов, слайд №6 Архитектура вычислительных систем. Синхронизация процессов, слайд №7 Архитектура вычислительных систем. Синхронизация процессов, слайд №8 Архитектура вычислительных систем. Синхронизация процессов, слайд №9 Архитектура вычислительных систем. Синхронизация процессов, слайд №10 Архитектура вычислительных систем. Синхронизация процессов, слайд №11 Архитектура вычислительных систем. Синхронизация процессов, слайд №12 Архитектура вычислительных систем. Синхронизация процессов, слайд №13 Архитектура вычислительных систем. Синхронизация процессов, слайд №14 Архитектура вычислительных систем. Синхронизация процессов, слайд №15 Архитектура вычислительных систем. Синхронизация процессов, слайд №16 Архитектура вычислительных систем. Синхронизация процессов, слайд №17 Архитектура вычислительных систем. Синхронизация процессов, слайд №18 Архитектура вычислительных систем. Синхронизация процессов, слайд №19 Архитектура вычислительных систем. Синхронизация процессов, слайд №20 Архитектура вычислительных систем. Синхронизация процессов, слайд №21 Архитектура вычислительных систем. Синхронизация процессов, слайд №22 Архитектура вычислительных систем. Синхронизация процессов, слайд №23 Архитектура вычислительных систем. Синхронизация процессов, слайд №24 Архитектура вычислительных систем. Синхронизация процессов, слайд №25 Архитектура вычислительных систем. Синхронизация процессов, слайд №26 Архитектура вычислительных систем. Синхронизация процессов, слайд №27 Архитектура вычислительных систем. Синхронизация процессов, слайд №28 Архитектура вычислительных систем. Синхронизация процессов, слайд №29 Архитектура вычислительных систем. Синхронизация процессов, слайд №30 Архитектура вычислительных систем. Синхронизация процессов, слайд №31 Архитектура вычислительных систем. Синхронизация процессов, слайд №32 Архитектура вычислительных систем. Синхронизация процессов, слайд №33 Архитектура вычислительных систем. Синхронизация процессов, слайд №34

Вы можете ознакомиться и скачать презентацию на тему Архитектура вычислительных систем. Синхронизация процессов. Доклад-сообщение содержит 34 слайдов. Презентации для любого класса можно скачать бесплатно. Если материал и наш сайт презентаций Mypresentation Вам понравились – поделитесь им с друзьями с помощью социальных кнопок и добавьте в закладки в своем браузере.

Слайды и текст этой презентации


Слайд 1


АРХИТЕКТУРА ВЫЧИСЛИТЕЛЬНЫХ СИСТЕМ РАЗДЕЛ 3.1 СИНХРОНИЗАЦИЯ ПРОЦЕССОВ
Описание слайда:
АРХИТЕКТУРА ВЫЧИСЛИТЕЛЬНЫХ СИСТЕМ РАЗДЕЛ 3.1 СИНХРОНИЗАЦИЯ ПРОЦЕССОВ

Слайд 2


Архитектура вычислительных систем. Синхронизация процессов, слайд №2
Описание слайда:

Слайд 3


Архитектура вычислительных систем. Синхронизация процессов, слайд №3
Описание слайда:

Слайд 4


Архитектура вычислительных систем. Синхронизация процессов, слайд №4
Описание слайда:

Слайд 5


Архитектура вычислительных систем. Синхронизация процессов, слайд №5
Описание слайда:

Слайд 6


Архитектура вычислительных систем. Синхронизация процессов, слайд №6
Описание слайда:

Слайд 7


Архитектура вычислительных систем. Синхронизация процессов, слайд №7
Описание слайда:

Слайд 8


Архитектура вычислительных систем. Синхронизация процессов, слайд №8
Описание слайда:

Слайд 9


Архитектура вычислительных систем. Синхронизация процессов, слайд №9
Описание слайда:

Слайд 10


Архитектура вычислительных систем. Синхронизация процессов, слайд №10
Описание слайда:

Слайд 11


Архитектура вычислительных систем. Синхронизация процессов, слайд №11
Описание слайда:

Слайд 12


Архитектура вычислительных систем. Синхронизация процессов, слайд №12
Описание слайда:

Слайд 13


Архитектура вычислительных систем. Синхронизация процессов, слайд №13
Описание слайда:

Слайд 14


Архитектура вычислительных систем. Синхронизация процессов, слайд №14
Описание слайда:

Слайд 15


Архитектура вычислительных систем. Синхронизация процессов, слайд №15
Описание слайда:

Слайд 16


Пример для C++(1): Пример для C++(1): // Библиотека потоков POSIX #include typedef pthread_mutex_t CRIT_SECTION; .... // Функции для работы со...
Описание слайда:
Пример для C++(1): Пример для C++(1): // Библиотека потоков POSIX #include typedef pthread_mutex_t CRIT_SECTION; .... // Функции для работы со стандартными типами void WTF_InitCritSect(CRIT_SECTION * cs) {pthread_mutex_init(cs, NULL); } void WTF_EnterCritSect(CRIT_SECTION * cs) {pthread_mutex_lock(cs); } void WTF_LeaveCritSect(CRIT_SECTION * cs) {pthread_mutex_unlock(cs); } void WTF_DestroyCritSect(CRIT_SECTION * cs) {pthread_mutex_destroy(cs); } ...

Слайд 17


void main (void) { Пример для C++(2): void main (void) { Пример для C++(2): pthread_t task1, task2, task3; ... // Создпние потоков, которые будут...
Описание слайда:
void main (void) { Пример для C++(2): void main (void) { Пример для C++(2): pthread_t task1, task2, task3; ... // Создпние потоков, которые будут бороться за ресурс pthread_create (&task1, NULL, TaskThread, (void*) &thread1Info); pthread_create (&task2, NULL, TaskThread, (void*) &thread2Info); pthread_create (&task3, NULL, TaskThread, (void*) &thread3Info); pthread_detach (task1); //независимое исполн потоков pthread_detach (task2); pthread_detach (task3); … }

Слайд 18


void * TaskThread (void* threadInfo) { Пример для C++(3): void * TaskThread (void* threadInfo) { Пример для C++(3): // Код, конфигурирующий работу...
Описание слайда:
void * TaskThread (void* threadInfo) { Пример для C++(3): void * TaskThread (void* threadInfo) { Пример для C++(3): // Код, конфигурирующий работу потока согласно // параметрам, переданным через threadInfo. // Например, N – объём ресурса, необходимый потоку ... // Основной цикл работы, в котором // происходит обращение к ресурсу while (1) { ... PrinterMonitor::instance().acquirePages (N); // Блокирующий запрос ресурса // Процесс что-то печатает на страницах PrinterMonitor::instance().addPaperToTray (N); // Процесс освобождения ресурса ... } ...}

Слайд 19


// Паттерн Singleton Пример для C++(4): // Паттерн Singleton Пример для C++(4): const int gPagesTotal = 10; // Общий объём ресурса class...
Описание слайда:
// Паттерн Singleton Пример для C++(4): // Паттерн Singleton Пример для C++(4): const int gPagesTotal = 10; // Общий объём ресурса class PrinterMonitor {// Монитор ресурса int pagesLeft; CRIT_SECTION lock; // объект для синхронизации … public: static PrinterMonitor instance () {…} // Получение объекта монитора void addPaperToTray (int N) { // Освобождение ресурса pagesLeft += N; // Освободить N страниц }

Слайд 20


// Блокирующий захват ресурсов Пример для C++(5): // Блокирующий захват ресурсов Пример для C++(5): void acquirePages (int N) { WTF_EnterCritSect (&...
Описание слайда:
// Блокирующий захват ресурсов Пример для C++(5): // Блокирующий захват ресурсов Пример для C++(5): void acquirePages (int N) { WTF_EnterCritSect (& lock); // Ждать, пока освободится N страниц while (pagesLeft < N) {} // Захватить нужный объём ресурса pagesLeft -= N; WTF_LeaveCritSect (& lock); } }

Слайд 21


static class WTF_Lock extends Object {} Пример для Java(1): static class WTF_Lock extends Object {} Пример для Java(1): static public WTF_Lock...
Описание слайда:
static class WTF_Lock extends Object {} Пример для Java(1): static class WTF_Lock extends Object {} Пример для Java(1): static public WTF_Lock lockObject = new WTF_Lock(); … package chapt14; // Класс монитора ресурсов, также Singleton public class PrinterMonitor { int pagesLeft = 10; WTF_Lock lock = new WTF_Lock(); ... public static PrinterMonitor instance () {…} public void addPaperToTray (int N) { // Освободить ресурс – аналогично добавлению //N страниц в лоток принтера pagesLeft += N; }

Слайд 22


// Блокирующий захват ресурса Пример для Java(2): // Блокирующий захват ресурса Пример для Java(2): public void acquirePages (int N) { synchronized...
Описание слайда:
// Блокирующий захват ресурса Пример для Java(2): // Блокирующий захват ресурса Пример для Java(2): public void acquirePages (int N) { synchronized (WTF_Lock) { // Ждать, пока освободится N страниц while (pagesLeft < N) {} // Захватить нужный объём ресурса pagesLeft -= N; } } }

Слайд 23


public class SomeThreads { Пример для Java(3): public class SomeThreads { Пример для Java(3): public static void main(String args[]) { final...
Описание слайда:
public class SomeThreads { Пример для Java(3): public class SomeThreads { Пример для Java(3): public static void main(String args[]) { final StringBuffer s = new StringBuffer(); // Запуск потоков, использующих ресурс new Thread() { public void run() { // Блокирующий запрос ресурса PrinterMonitor::instance().acquirePages (N); // Использование ресурса // Процесс освобождения ресурса PrinterMonitor::instance().addPaperToTray (N); } }

Слайд 24


.start(); Пример для Java(4): .start(); Пример для Java(4): // Ещё один аналогичный поток new Thread() { public void run() { ......
Описание слайда:
.start(); Пример для Java(4): .start(); Пример для Java(4): // Ещё один аналогичный поток new Thread() { public void run() { ... PrinterMonitor.instance().acquirePages (N); // Process doing some printing PrinterMonitor.instance().addPaperToTray (N); ... } } .start(); ... }

Слайд 25


Архитектура вычислительных систем. Синхронизация процессов, слайд №25
Описание слайда:

Слайд 26


Реализация синхронизации в Java static Semaphore mutex = new Semaphore(1); … //consumer thread void run() { … //critical section mutex.acquire(); …...
Описание слайда:
Реализация синхронизации в Java static Semaphore mutex = new Semaphore(1); … //consumer thread void run() { … //critical section mutex.acquire(); … mutex.release(); … }

Слайд 27


Архитектура вычислительных систем. Синхронизация процессов, слайд №27
Описание слайда:

Слайд 28


Архитектура вычислительных систем. Синхронизация процессов, слайд №28
Описание слайда:

Слайд 29


Архитектура вычислительных систем. Синхронизация процессов, слайд №29
Описание слайда:

Слайд 30


Архитектура вычислительных систем. Синхронизация процессов, слайд №30
Описание слайда:

Слайд 31


Архитектура вычислительных систем. Синхронизация процессов, слайд №31
Описание слайда:

Слайд 32


Архитектура вычислительных систем. Синхронизация процессов, слайд №32
Описание слайда:

Слайд 33


Архитектура вычислительных систем. Синхронизация процессов, слайд №33
Описание слайда:

Слайд 34


Архитектура вычислительных систем. Синхронизация процессов, слайд №34
Описание слайда:



Похожие презентации
Mypresentation.ru
Загрузить презентацию