Projekt systemy operacyjne 2 - Systemowe mechanizmy synchr
|
|
- Danuta Szczepańska
- 7 lat temu
- Przeglądów:
Transkrypt
1 systemy operacyjne 2 - Systemowe mechanizmy synchronizacji procesów 19 lutego 2012
2 Wielow tkowo± Mechanizmy synchronizacji Wielow tkowo± Mechanizmy synchronizacji Klasyczne przykªady programów
3 Wielow tkowo± Wprowadzenie Wielow tkowo± Mechanizmy synchronizacji Technicznie rzecz bior c w tek to niezale»ny ci g instrukcji który mo»e by wykonywany równolegle do ci gu instrukcji które go wywoªaªy. W ±rodowisku UNIX ±rodowisko w tku: znajduje si w obr bie procesu i korzysta z jego zasobów, istnieje tak dªugo jak rodzic, mo»e dzieli zasoby z innymi w tkami równolegle "zajmuj c si nimi" Dla wszystkich w tków danego procesu wspólne s : PID, GID, UID, ±rodowisko, katalog bie» cy, dost p do funkcji, rejestry, etc.
4 W tki POSIX Wprowadzenie Wielow tkowo± Mechanizmy synchronizacji Wielu producentów sprz tu stworzyªo wiele implementacji w tków co doprowadziªo do do± du»ego ÿbaªaganu" w tym segmencie programowania. Dzi ki standardowi IEEE POSIX c standard (1995) udaªo si stworzy standardowe API, które doª cza si do dystrybucji. Denicje funkcji zwi zanych z POSIX threads znajduj si w pliku nagªówkowym pthreads.h, a implementacja w jednej z bibliotek systemowych (mo»e by cze±ci libc lub znajdowa si w oddzielnej bibliotece). Warto zwróci uwag na fakt, i» pomi dzy implementacjami Phtreads na ró»nych platformach istniej pewne subtelne ró»nice których nie zawsze mo»emy by ±wiadomi.
5 Semafory Wprowadzenie Wielow tkowo± Mechanizmy synchronizacji Semafory s strukturami danych wspólnie u»ytkowanymi przez kilka procesów. Najcz strze zastosowanie w synchronzowaniu dziaªania kilku procesów korzystaj cych ze wspólnego zasobu, którego wspóªu»ytkowanie nie zostaªo przewidziane. Typy semaforów: binarne { steruj ce dost pem do jednego zasobu (0 - zasób zaj ty, 1 - zasób wolny); licz ce { steruj ce dostepem do wielu zasobów. Z implementacyjnego punktu widzenia semafor jest unieujemn liczb caªkowit przechowywan w j drze systemu. Dost p do semafora jest udzielany za po±rednictwem kilku wywoªa«systemowych.
6 Mechanizmy synchronizacji POSIX Wielow tkowo± Mechanizmy synchronizacji Rodzaje zmiennych synchronizuj cych: zamek umo»liwiaj ca implementacj wzajemnego wykluczania, zmienna warunkowa umo»liwia usypianie i budzenie w tków. Zmienne synchronizuj ce musz by wspóªdzielone przez synchronizowane w tki. Zanim zmienna zostanie wykorzystana do synchronizacji musi zosta zainicjalizowana.
7 Zmienne synchronizuj ce Wielow tkowo± Mechanizmy synchronizacji Zamek (MUTual EXclusion lock - MUTEX) umo»liwia implementacj wzajemnego wykluczania. Operacje: lock - zaj cie (zaryglowanie) zamka (pthread mutex lock), unlock - zwolnienie (odryglowanie) zamka (pthread mutex unlock), trylock - nieblokuj ca próba zaj cia zamka (pthread mutex trylock). Zmienna warunkowa umo»liwia usypianie i budzenie w tków. Operacje: wait u±pienie w tku (pthread cond wait), signal obudzenie jednego z u±pionych w tków (pthread cond signal), broadcast obudzenie wszystkich u±pionych w tków (pthread cond broadcast).
8 Literatura Wprowadzenie Wielow tkowo± Mechanizmy synchronizacji 1 MAN
9 "ksi»kowe" Wprowadzenie Klasyczne przykªady programów Problem producenta i konsumenta problem ograniczonego buforowania w komunikacji mi dzyprocesowej. Problem pi ciu lozofów problem jednoczesnego dost pu do dwóch zasobów (ryzyko gªodzenia i zakleszczenia). Problem ±pi cych fryzjerów problem synchronizacji w interakcji klient-serwer przy ograniczonym kolejkowaniu. Problem czytelników i pisarzy problem synchronizacji dost pu do zasobu w trybie wspóªdzielonym i wyª cznym.
10 Problem pi ciu lozofów Klasyczne przykªady programów Przy okr gªym stole siedzi pi ciu lozofów, którzy na przemian my±l i jedz makaron ze wspólnej miski. eby co± zje±, lozof musi zdoby dwa widelce, z których ka»dy wspóªdzieli ze swoim s siadem. Widelec dost pny jest w trybie wyª cznym mo»e by u»ywany w danej chwili przez jednego lozofa. Nale»y zsynchronizowa lozofów tak, aby ka»dy mógª si w ko«cu naje± przy zachowaniu reguª dost pu do widelców oraz przy mo»liwie du»ej przepustowo±ci w spo»ywaniu posiªków.
11 Problem ±pi cych fryzjerów Klasyczne przykªady programów W salonie fryzjerskim jest poczekalnia z p miejscami oraz n foteli, obsªugiwanych przez fryzjerów. Do salonu przychodzi klient, budzi fryzjera, po czym fryzjer znajduje wolny fotel i obsªuguje klienta. Je±li nie ma wolnego fotela, klient zajmuje jedno z wolnych miejsc w poczekalni. Je±li nie ma miejsca w poczekalni, klient odchodzi. Problem polega na zsynchronizowaniu fryzjerów oraz klientów w taki sposób, aby jeden fryzjer w danej chwili obsªugiwaª jednego klienta i w tym samym czasie klient byª obsªugiwany przez jednego fryzjera.
12 Problem czytelników i pisarzy Klasyczne przykªady programów Dwa rodzaje u»ytkowników czytelnicy i pisarze korzystaj ze wspólnego zasobu czytelni. Czytelnicy korzystaj z czytelni w trybie wspóªdzielonym, tzn. w czytelni mo»e przebywa w tym samym czasie wielu czytelników. Pisarze korzystaj z czytelni w trybie wyª cznym, tzn. w czasie, gdy w czytelni przebywa pisarz, nie mo»e z niej korzysta inny u»ytkownik (ani czytelnik, ani inny pisarz). Synchronizacja polega na blokowaniu u»ytkowników przy wej±ciu do czytelni, gdy wymaga tego tryb dost pu.
13 Problem producenta i konsumenta Klasyczne przykªady programów Producent produkuje jednostki okre±lonego produktu i umieszcza je w buforze o ograniczonym rozmiarze. Konsument pobiera jednostki produktu z bufora i konsumuje je. Z punktu widzenia producenta problem synchronizacji polega na tym,»e nie mo»e on umie±ci kolejnej jednostki, je±li bufor jest peªny. Z punktu widzenia konsumenta problem synchronizacji polega na tym,»e nie powinien on mi dost pu do bufora, je±li nie ma tam»adnego elementu do pobrania.
14 Warunki zaliczenia projektu Programujemy pod Unixem!!
15 Warunki zaliczenia projektu Programujemy pod Unixem!! Nie u»ywamy 'fork'.
16 Warunki zaliczenia projektu Programujemy pod Unixem!! Nie u»ywamy 'fork'. Program musi by tak skonstruowany by wida byªo wielow tkowo± (w tki maj by u»yteczne).
17 Warunki zaliczenia projektu Programujemy pod Unixem!! Nie u»ywamy 'fork'. Program musi by tak skonstruowany by wida byªo wielow tkowo± (w tki maj by u»yteczne). Nie mog by problemy 'ksi»kowe', mog by : gry, symulatory, aplikacje klient-serwer
18 Warunki zaliczenia projektu Programujemy pod Unixem!! Nie u»ywamy 'fork'. Program musi by tak skonstruowany by wida byªo wielow tkowo± (w tki maj by u»yteczne). Nie mog by problemy 'ksi»kowe', mog by : gry, symulatory, aplikacje klient-serwer Piszemy w C lub C++
19 Warunki zaliczenia projektu Programujemy pod Unixem!! Nie u»ywamy 'fork'. Program musi by tak skonstruowany by wida byªo wielow tkowo± (w tki maj by u»yteczne). Nie mog by problemy 'ksi»kowe', mog by : gry, symulatory, aplikacje klient-serwer Piszemy w C lub C++ Praca wªasna!
20 Warunki zaliczenia projektu Programujemy pod Unixem!! Nie u»ywamy 'fork'. Program musi by tak skonstruowany by wida byªo wielow tkowo± (w tki maj by u»yteczne). Nie mog by problemy 'ksi»kowe', mog by : gry, symulatory, aplikacje klient-serwer Piszemy w C lub C++ Praca wªasna! Tylko 1 program
21 Warunki zaliczenia projektu Programujemy pod Unixem!! Nie u»ywamy 'fork'. Program musi by tak skonstruowany by wida byªo wielow tkowo± (w tki maj by u»yteczne). Nie mog by problemy 'ksi»kowe', mog by : gry, symulatory, aplikacje klient-serwer Piszemy w C lub C++ Praca wªasna! Tylko 1 program Nie tworzymy skomplikowanej graki
22 Warunki zaliczenia projektu Programujemy pod Unixem!! Nie u»ywamy 'fork'. Program musi by tak skonstruowany by wida byªo wielow tkowo± (w tki maj by u»yteczne). Nie mog by problemy 'ksi»kowe', mog by : gry, symulatory, aplikacje klient-serwer Piszemy w C lub C++ Praca wªasna! Tylko 1 program Nie tworzymy skomplikowanej graki Nie tworzymy niepotrzebnie skomplikowanego kodu
23 Warunki zaliczenia projektu Programujemy pod Unixem!! Nie u»ywamy 'fork'. Program musi by tak skonstruowany by wida byªo wielow tkowo± (w tki maj by u»yteczne). Nie mog by problemy 'ksi»kowe', mog by : gry, symulatory, aplikacje klient-serwer Piszemy w C lub C++ Praca wªasna! Tylko 1 program Nie tworzymy skomplikowanej graki Nie tworzymy niepotrzebnie skomplikowanego kodu Nie u»ywamy 'printf'! ncurces
24 Biblioteka "ncurces" Wprowadzenie ncurses (ang. new curses) to kontynuacja biblioteki curses. Dostarcza ona funkcji do obsªugi terminala tekstowego niezale»nie od jego typu (korzysta z terminfo lub termcap), z optymalizacj (ekran nie jest odrysowywany w caªo±ci). W ncurses ekran skªada si z nakªadaj cych si na siebie wirtualnych okien, których korzeniem jest okno stdscr, którego nie mo»na przesuwa ani zmienia jego rozmiaru (zawsze ma rozmiar terminala). Ta biblioteka jest dost pna na licencji GNU GPL wraz z peªnym kodem ¹ródªowym.
25 Kompilowanie z bibliotek ncurses ncurces #include <ncurses.h> gcc <program file> -lncurses
26 Sprawozdanie Wprowadzenie wersja wydrukowana JEDNA KARTKA A4 + mail/no±nik z programem opis tre±ci zadania (np. 'gra w formuª 1') opis zaªo»e«(np. 'ka»dy wózek jest oddzielnym w tkiem ') zasady gry/symulacji/itd. tzw. zrzut ekranu z programu - max 2 ilustracje tre± programu (kod) z komentarzami Termin: Ostatnie zaj cia
synchronizacji procesów
Dariusz Wawrzyniak Definicja semafora Klasyfikacja semaforów Implementacja semaforów Zamki Zmienne warunkowe Klasyczne problemy synchronizacji Plan wykładu (2) Semafory Rodzaje semaforów (1) Semafor jest
Bardziej szczegółowosynchronizacji procesów
Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak Plan wykładu Definicja semafora Klasyfikacja semaforów Implementacja semaforów Zamki Zmienne warunkowe Klasyczne problemy synchronizacji (2) Semafory
Bardziej szczegółowo1. Wprowadzenie do C/C++
Podstawy Programowania :: Roman Grundkiewicz :: 014 Zaj cia 1 1 rodowisko Dev-C++ 1. Wprowadzenie do C/C++ Uruchomienie ±rodowiska: Start Programs Developments Dev-C++. Nowy projekt: File New Project lub
Bardziej szczegółowo1. Wprowadzenie do C/C++
Podstawy Programowania - Roman Grundkiewicz - 013Z Zaj cia 1 1 rodowisko Dev-C++ 1. Wprowadzenie do C/C++ Uruchomienie ±rodowiska: Start Programs Developments Dev-C++. Nowy projekt: File New Project lub
Bardziej szczegółowoPodstawy Informatyki i Technologii Informacyjnej
Automatyka i Robotyka, Rok I Wprowadzenie do systemów operacyjnych PWSZ Gªogów, 2009 Denicja System operacyjny (ang. OS, Operating System) oprogramowanie zarz dzaj ce sprz tem komputerowym, tworz ce ±rodowisko
Bardziej szczegółowoPrzetwarzanie wielowątkowe przetwarzanie współbieżne. Krzysztof Banaś Obliczenia równoległe 1
Przetwarzanie wielowątkowe przetwarzanie współbieżne Krzysztof Banaś Obliczenia równoległe 1 Problemy współbieżności wyścig (race condition) synchronizacja realizowana sprzętowo (np. komputery macierzowe)
Bardziej szczegółowoRozwi zania klasycznych problemów w Rendezvous
Cz ± I Rozwi zania klasycznych problemów w Rendezvous 1 Producenci i konsumenci Na pocz tek rozwa»my wersj z jednym producentem i jednym konsumentem, dziaªaj cymi w niesko«czonych p tlach. Mechanizm komunikacji
Bardziej szczegółowoSVN - wprowadzenie. 1 Wprowadzenie do SVN. 2 U»ywanie SVN. Adam Krechowicz. 16 lutego Podstawowe funkcje. 2.1 Windows
SVN - wprowadzenie Adam Krechowicz 16 lutego 2013 1 Wprowadzenie do SVN SVN SubVersion jest systemem kontroli wersji pozwalaj cym wielu u»ytkownikom na swobodne wspóªdzielenie tych samych plików. Pozwala
Bardziej szczegółowoProgramowanie wspóªbie»ne
1 Programowanie wspóªbie»ne wiczenia 5 monitory cz. 1 Zadanie 1: Stolik dwuosobowy raz jeszcze W systemie dziaªa N par procesów. Procesy z pary s nierozró»nialne. Ka»dy proces cyklicznie wykonuje wªasnesprawy,
Bardziej szczegółowoProgramowanie wspóªbie»ne
1 Programowanie wspóªbie»ne wiczenia 2 semafory cz. 1 Zadanie 1: Producent i konsument z buforem cyklicznym type porcja; void produkuj(porcja &p); void konsumuj(porcja p); porcja bufor[n]; / bufor cykliczny
Bardziej szczegółowoLekcja 12 - POMOCNICY
Lekcja 12 - POMOCNICY 1 Pomocnicy Pomocnicy, jak sama nazwa wskazuje, pomagaj Baltiemu w programach wykonuj c cz ± czynno±ci. S oni szczególnie pomocni, gdy chcemy ci g polece«wykona kilka razy w programie.
Bardziej szczegółowoKlasyczne problemy synchronizacji
Klasyczne problemy synchronizacji Systemy Operacyjne 2 laboratorium Mateusz Hołenko 19 grudnia 2011 Plan zajęć 1 Synchronizacja 2 Problem producenta / konsumenta 3 Problem pięciu filozofów 4 Problem czytelników
Bardziej szczegółowoSynchronizacja procesów
Synchronizacja procesów - Współbieżność i synchronizacja procesów - Systemowe mechanizmy synchronizacji procesów Systemy operacyjne Wykład 7 1 Współbieżność i synchronizacja procesów Abstrakcja programowania
Bardziej szczegółowoLekcja 8 - ANIMACJA. 1 Polecenia. 2 Typy animacji. 3 Pierwsza animacja - Mrugaj ca twarz
Lekcja 8 - ANIMACJA 1 Polecenia Za pomoc Baltiego mo»emy tworzy animacj, tzn. sprawia by obraz na ekranie wygl daª jakby si poruszaª. Do animowania przedmiotów i tworzenia animacji posªu» nam polecenia
Bardziej szczegółowoSVN - wprowadzenie. 1 Wprowadzenie do SVN. 2 U»ywanie SVN. Adam Krechowicz 24 czerwca Podstawowe funkcje. 2.1 Windows
SVN - wprowadzenie Adam Krechowicz 24 czerwca 2018 1 Wprowadzenie do SVN SVN SubVersion jest systemem kontroli wersji pozwalaj cym wielu u»ytkownikom na swobodne wspóªdzielenie tych samych plików. Pozwala
Bardziej szczegółowoOd uczestników szkolenia wymagana jest umiejętność programowania w języku C oraz podstawowa znajomość obsługi systemu Linux.
Kod szkolenia: Tytuł szkolenia: PS/LINUX Programowanie systemowe w Linux Dni: 5 Opis: Adresaci szkolenia Szkolenie adresowane jest do programistów tworzących aplikacje w systemie Linux, którzy chcą poznać
Bardziej szczegółowoLekcja 9 - LICZBY LOSOWE, ZMIENNE
Lekcja 9 - LICZBY LOSOWE, ZMIENNE I STAŠE 1 Liczby losowe Czasami spotkamy si z tak sytuacj,»e b dziemy potrzebowa by program za nas wylosowaª jak ± liczb. U»yjemy do tego polecenia: - liczba losowa Sprawd¹my
Bardziej szczegółowoSystemowe mechanizmy synchronizacji procesów
Systemowe mechanizmy synchronizacji procesów Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak Celem wykładu jest przedstawienie mechanizmów synchronizacji, które mogą być implementowane zarówno na
Bardziej szczegółowoInstrukcja obsługi Norton Commander (NC) wersja 4.0. Autor: mgr inż. Tomasz Staniszewski
Instrukcja obsługi Norton Commander (NC) wersja 4.0 Autor: mgr inż. Tomasz Staniszewski ITM Zakład Technologii Maszyn, 15.10.2001 2 1.Uruchomienie programu Aby uruchomić program Norton Commander standardowo
Bardziej szczegółowoSubversion - jak dziaªa
- jak dziaªa Krótka instrukcja obsªugi lstelmach@gmail.com Stelmisoft 12/07/2010 1 1 2 1 2 3 1 2 3 4 1 2 3 4 5 1 2 3 4 5 6 Spis tre±ci Czym jest Czym jest repozytorium 1 Czym jest Czym jest repozytorium
Bardziej szczegółowoProgramowanie równoległe i rozproszone. Monitory i zmienne warunku. Krzysztof Banaś Programowanie równoległe i rozproszone 1
Programowanie równoległe i rozproszone Monitory i zmienne warunku Krzysztof Banaś Programowanie równoległe i rozproszone 1 Problemy współbieżności Problem producentów i konsumentów: jedna grupa procesów
Bardziej szczegółowoMiASI. Modelowanie analityczne. Piotr Fulma«ski. 18 stycznia Wydziaª Matematyki i Informatyki, Uniwersytet Šódzki, Polska
MiASI Modelowanie analityczne Piotr Fulma«ski Wydziaª Matematyki i Informatyki, Uniwersytet Šódzki, Polska 18 stycznia 2010 Spis tre±ci 1 Czym jest modelowanie analityczne? 2 Podstawowe kategorie poj ciowe
Bardziej szczegółowoLekcja 6 Programowanie - Zaawansowane
Lekcja 6 Programowanie - Zaawansowane Akademia im. Jana Dªugosza w Cz stochowie Wst p Wiemy ju»: co to jest program i programowanie, jak wygl da programowanie, jak tworzy programy za pomoc Baltiego. Na
Bardziej szczegółowoProgramowanie współbieżne Wykład 9 Synchronizacja dostępu do współdzielonych zasobów. Iwona Kochańska
Programowanie współbieżne Wykład 9 Synchronizacja dostępu do współdzielonych zasobów Iwona Kochańska Sekcja krytyczna Instrukcje wykonywane na zmiennych współdzielonych tworzą sekcję krytyczną. Instrukcje
Bardziej szczegółowoListy i operacje pytania
Listy i operacje pytania Iwona Polak iwona.polak@us.edu.pl Uniwersytet l ski Instytut Informatyki pa¹dziernika 07 Który atrybut NIE wyst puje jako atrybut elementów listy? klucz elementu (key) wska¹nik
Bardziej szczegółowoJ. Ułasiewicz Programowanie aplikacji współbieżnych 1
J. Ułasiewicz Programowanie aplikacji współbieżnych 1 9. Komunikacja przez pamięć dzieloną Metoda komunikacji przez wspólną pamięć może być użyta gdy procesy wykonywane są na maszynie jednoprocesorowej
Bardziej szczegółowoSzeregowanie zada« Przedmiot fakultatywny 15h wykªadu + 15h wicze« dr Hanna Furma«czyk. 7 pa¹dziernika 2013
Przedmiot fakultatywny 15h wykªadu + 15h wicze«7 pa¹dziernika 2013 Zasady zaliczenia 1 wiczenia (ocena): kolokwium, zadania dodatkowe (implementacje algorytmów), praca na wiczeniach. 2 Wykªad (zal): zaliczone
Bardziej szczegółowoStworzenie klasy nie jest równoznaczne z wykorzystaniem wielowątkowości. Uzyskuje się ją dopiero poprzez inicjalizację wątku.
Laboratorium 7 Wstęp Jednym z podstawowych własności Javy jest wielowątkowość. Wiąże się to z możliwością współbieżnego wykonywania różnych operacji w ramach pojedynczej wirtualnej maszyny Javy (JVM).
Bardziej szczegółowoOd uczestników szkolenia wymagana jest umiejętność programowania w języku C oraz podstawowa znajomość obsługi systemu Windows.
Kod szkolenia: Tytuł szkolenia: PS/WIN Programowanie systemowe w Windows Dni: 5 Opis: Adresaci szkolenia Szkolenie adresowane jest do programistów tworzących aplikacje w systemach z rodziny Microsoft Windows,
Bardziej szczegółowoSystemy Operacyjne 2: Wątki pthreads. dr inż. Arkadiusz Chrobot
Systemy Operacyjne 2: Wątki pthreads dr inż. Arkadiusz Chrobot 18 kwietnia 2013 1. Wprowadzenie Wątki podobnie jak procesy umożliwiają współbieżną realizację czynności w wykonywanym programie. Domyślnie
Bardziej szczegółowoSynchronizacja procesów i wątków
SOE Systemy Operacyjne Wykład 12 Synchronizacja procesów i wątków dr inŝ. Andrzej Wielgus Instytut Mikroelektroniki i Optoelektroniki WEiTI PW Problem sekcji krytycznej Podstawowy problem synchronizacji
Bardziej szczegółowoProgramowanie wspóªbie»ne
1 Zadanie 1: Bar Programowanie wspóªbie»ne wiczenia 6 monitory cz. 2 Napisz monitor Bar synchronizuj cy prac barmana obsªuguj cego klientów przy kolistym barze z N stoªkami. Ka»dy klient realizuje nast
Bardziej szczegółowoMiASI. Modelowanie systemów informatycznych. Piotr Fulma«ski. 18 stycznia Wydziaª Matematyki i Informatyki, Uniwersytet Šódzki, Polska
MiASI Modelowanie systemów informatycznych Piotr Fulma«ski Wydziaª Matematyki i Informatyki, Uniwersytet Šódzki, Polska 18 stycznia 2010 Spis tre±ci 1 Analiza systemu informatycznego Poziomy analizy 2
Bardziej szczegółowoW zadaniach na procenty wyró»niamy trzy typy czynno±ci: obliczanie, jakim procentem jednej liczby jest druga liczba,
2 Procenty W tej lekcji przypomnimy sobie poj cie procentu i zwi zane z nim podstawowe typy zada«. Prosimy o zapoznanie si z regulaminem na ostatniej stronie. 2.1 Poj cie procentu Procent jest to jedna
Bardziej szczegółowoSystemy operacyjne. Zajęcia 11. Monitory
Systemy operacyjne. Zajęcia 11. Monitory 1. Monitor to mechanizm zamykający całą pamięć wspólną i synchronizację w pojedynczym module. 2. Monitor posiada całą pamięć wspólną jako część 'prywatną': dostępu
Bardziej szczegółowoWykład 4. Synchronizacja procesów (i wątków) cześć I. Wojciech Kwedlo, Wykład z Systemów Operacyjnych -1- Wydział Informatyki PB
Wykład 4 Synchronizacja procesów (i wątków) cześć I Wojciech Kwedlo, Wykład z Systemów Operacyjnych -1- Wydział Informatyki PB Potrzeba synchronizacji Procesy wykonują się współbieżnie. Jeżeli w 100% są
Bardziej szczegółowoPodstawy modelowania w j zyku UML
Podstawy modelowania w j zyku UML dr hab. Bo»ena Wo¹na-Szcze±niak Akademia im. Jan Dªugosza bwozna@gmail.com Wykªad 2 Zwi zki mi dzy klasami Asocjacja (ang. Associations) Uogólnienie, dziedziczenie (ang.
Bardziej szczegółowoWYMAGANIA EDUKACYJNE I KRYTERIA OCENIANIA Z PRZEDMIOTU PROGRAMOWANIE APLIKACJI INTERNETOWYCH
WYMAGANIA EDUKACYJNE I KRYTERIA OCENIANIA Z PRZEDMIOTU PROGRAMOWANIE APLIKACJI INTERNETOWYCH Klasa: 3TIR - Technik informatyk Program: 351203 Wymiar: 4 h tygodniowo Podręcznik: Kwalifikacja E.14 Programowanie
Bardziej szczegółowoLekcja 9 Liczby losowe, zmienne, staªe
Lekcja 9 Liczby losowe, zmienne, staªe Akademia im. Jana Dªugosza w Cz stochowie Liczby losowe Czasami potrzebujemy by program za nas wylosowaª liczb. U»yjemy do tego polecenia liczba losowa: Liczby losowe
Bardziej szczegółowo1 Strumienie. 2 Pliki. 2.1 Zapis do pliku tekstowego. Programowanie w j zyku C - Adam Krechowicz, Daniel Kaczmarski
Programowanie w j zyku C - Adam Krechowicz, Daniel Kaczmarski 1 Strumienie W j zyku C++ pliki obsªugiwane s za pomoc strumieni. Strumie«pozwala na sekwencyjny dost p do pliku. Elementy, które jako pierwsze
Bardziej szczegółowoProgramowanie współbieżne Wykład 10 Synchronizacja dostępu do współdzielonych zasobów. Iwona Kochańska
Programowanie współbieżne Wykład 10 Synchronizacja dostępu do współdzielonych zasobów Iwona Kochańska Mechanizm synchronizacji wątków/procesów Wykorzystanie semaforów zapobiega niedozwolonemu wykonaniu
Bardziej szczegółowoPodziaª pracy. Cz ± II. 1 Tablica sortuj ca. Rozwi zanie
Cz ± II Podziaª pracy 1 Tablica sortuj ca Kolejka priorytetowa to struktura danych udost pniaj ca operacje wstawienia warto±ci i pobrania warto±ci minimalnej. Z kolejki liczb caªkowitych, za po±rednictwem
Bardziej szczegółowoAndroid. Podstawy tworzenia aplikacji. Piotr Fulma«ski. March 4, 2015
Android Podstawy tworzenia aplikacji Piotr Fulma«ski Instytut Nauk Ekonomicznych i Informatyki, Pa«stwowa Wy»sza Szkoªa Zawodowa w Pªocku, Polska March 4, 2015 Table of contents Framework Jednym z najwarto±ciowszych
Bardziej szczegółowoProgramowanie i struktury danych
Programowanie i struktury danych Wykªad 3 1 / 37 tekstowe binarne Wyró»niamy dwa rodzaje plików: pliki binarne pliki tekstowe 2 / 37 binarne tekstowe binarne Plik binarny to ci g bajtów zapami tanych w
Bardziej szczegółowoProgramowanie i struktury danych 1 / 44
Programowanie i struktury danych 1 / 44 Lista dwukierunkowa Lista dwukierunkowa to liniowa struktura danych skªadaj ca si z ci gu elementów, z których ka»dy pami ta swojego nast pnika i poprzednika. Operacje
Bardziej szczegółowoWzorce projektowe kreacyjne
Wzorce projektowe kreacyjne Krzysztof Ciebiera 14 pa¹dziernika 2005 1 1 Wst p 1.1 Podstawy Opis Ogólny Podstawowe informacje Wzorce kreacyjne sªu» do uabstrakcyjniania procesu tworzenia obiektów. Znaczenie
Bardziej szczegółowoWykład 4. Synchronizacja procesów (i wątków) cześć I. Wojciech Kwedlo, Wykład z Systemów Operacyjnych -1- Wydział Informatyki PB
Wykład 4 Synchronizacja procesów (i wątków) cześć I Wojciech Kwedlo, Wykład z Systemów Operacyjnych -1- Wydział Informatyki PB Procesy wykonują się współbieżnie Potrzeba synchronizacji Jeżeli w 100% są
Bardziej szczegółowoProgramowanie Równoległe i Rozproszone
Programowanie Równoległe i Rozproszone Lucjan Stapp Wydział Matematyki i Nauk Informacyjnych Politechnika Warszawska (l.stapp@mini.pw.edu.pl) 1/30 PRiR MONITOR klasa z następującymi właściwościami: wszystkie
Bardziej szczegółowoProblemy współbieżności
Problemy współbieżności wyścig (race condition) synchronizacja realizowana sprzętowo (np. komputery macierzowe) realizowana programowo (bariera, sekcja krytyczna, operacje atomowe) wzajemne wykluczanie
Bardziej szczegółowoKompilowanie programów
Rozdziaª 2 Kompilowanie programów 2.1 Wst p 2.2 Kompilatory, IDE Zacznijmy od podania kilku podstawowych informacji: ˆ Program - to ci g polece«(instrukcji) do wykonania dla komputera ˆ Program to algorytm
Bardziej szczegółowoZarządzanie Zasobami by CTI. Instrukcja
Zarządzanie Zasobami by CTI Instrukcja Spis treści 1. Opis programu... 3 2. Konfiguracja... 4 3. Okno główne programu... 5 3.1. Narzędzia do zarządzania zasobami... 5 3.2. Oś czasu... 7 3.3. Wykres Gantta...
Bardziej szczegółowoAplikacje internetowe oparte na kluczowych technologiach Java Enterprise(Servlet,JSP,JDBC, )
Kod szkolenia: Tytuł szkolenia: JEE/JSP Aplikacje internetowe oparte na kluczowych technologiach Java Enterprise(Servlet,JSP,JDBC, ) Dni: 5 Opis: Adresaci szkolenia: Szkolenie adresowane jest do programistów
Bardziej szczegółowoInstrukcja programu PControl Powiadowmienia.
1. Podłączenie zestawu GSM. Instrukcja programu PControl Powiadowmienia. Pierwszym krokiem w celu uruchomienia i poprawnej pracy aplikacji jest podłączenie zestawu GSM. Zestaw należy podłączyć zgodnie
Bardziej szczegółowoTemat zajęć: Tworzenie i obsługa wątków.
Temat zajęć: Tworzenie i obsługa wątków. Czas realizacji zajęć: 180 min. Zakres materiału, jaki zostanie zrealizowany podczas zajęć: Tworzenie wątków, przekazywanie parametrów do funkcji wątków i pobieranie
Bardziej szczegółowoIngerencja w kod systemu operacyjnego (przerwania) Programowanie na niskim poziomie (instrukcje specjalne) Trudności implementacyjne (alg.
Wady mechanizmów niskopoziomowych Ingerencja w kod systemu operacyjnego (przerwania) Programowanie na niskim poziomie (instrukcje specjalne) Trudności implementacyjne (alg. Dekkera zależny od liczby synchronizowanych
Bardziej szczegółowoDziedziczenie : Dziedziczenie to nic innego jak definiowanie nowych klas w oparciu o już istniejące.
Programowanie II prowadzący: Adam Dudek Lista nr 8 Dziedziczenie : Dziedziczenie to nic innego jak definiowanie nowych klas w oparciu o już istniejące. Jest to najważniejsza cecha świadcząca o sile programowania
Bardziej szczegółowoAutomatyzacja procesu publikowania w bibliotece cyfrowej
Automatyzacja procesu publikowania w bibliotece cyfrowej Jakub Bajer Biblioteka Politechniki Poznańskiej Krzysztof Ober Poznańska Fundacja Bibliotek Naukowych Plan prezentacji 1. Cel prezentacji 2. Proces
Bardziej szczegółowoPrzeplot. Synchronizacja procesów. Cel i metody synchronizacji procesów. Wątki współbieżne
Synchronizacja procesów Przeplot Przeplot wątków współbieżnych Cel i metody synchronizacji procesów Problem sekcji krytycznej Semafory Blokady 3.1 3.3 Wątki współbieżne Cel i metody synchronizacji procesów
Bardziej szczegółowoKlasyczne problemy współbieżności. Problem producenta i konsumenta Problem czytelników i pisarzy Problem pięciu filozofów
Klasyczne problemy współbieżności Problem producenta i konsumenta Problem czytelników i pisarzy Problem pięciu filozofów Wzajemne wykluczanie Zsynchronizować N procesów, z których każdy w nieskończonej
Bardziej szczegółowoOpis obsługi systemu Ognivo2 w aplikacji Komornik SQL-VAT
Opis obsługi systemu Ognivo2 w aplikacji Komornik SQL-VAT Spis treści Instrukcja użytkownika systemu Ognivo2... 3 Opis... 3 Konfiguracja programu... 4 Rejestracja bibliotek narzędziowych... 4 Konfiguracja
Bardziej szczegółowoLab. 02: Algorytm Schrage
Lab. 02: Algorytm Schrage Andrzej Gnatowski 5 kwietnia 2015 1 Opis zadania Celem zadania laboratoryjnego jest zapoznanie si z jednym z przybli»onych algorytmów sªu» cych do szukania rozwi za«znanego z
Bardziej szczegółowoWzorce projektowe strukturalne cz. 1
Wzorce projektowe strukturalne cz. 1 Krzysztof Ciebiera 19 pa¹dziernika 2005 1 1 Wst p 1.1 Podstawowe wzorce Podstawowe wzorce Podstawowe informacje Singleton gwarantuje,»e klasa ma jeden egzemplarz. Adapter
Bardziej szczegółowoFirma Informatyczna JazzBIT
Artykuły i obrazy Autor: Stefan Wajda [zwiastun] 10.02.2006. Dodawanie i publikowanie artykułów to najczęstsze zadanie. I chociaż nie jest skomplikowane, może początkujacych wprawiać w zakłopotanie. Trzeba
Bardziej szczegółowoSystem Informatyczny CELAB. Przygotowanie programu do pracy - Ewidencja Czasu Pracy
Instrukcja obsługi programu 2.11. Przygotowanie programu do pracy - ECP Architektura inter/intranetowa System Informatyczny CELAB Przygotowanie programu do pracy - Ewidencja Czasu Pracy Spis treści 1.
Bardziej szczegółowoSYSTEMY CZASU RZECZYWISTEGO - VxWorks
WZAJEMNE WYKLUCZANIE Wiele metod. Np. wyłączanie przerwań: funkcja() //... Int blokada = intlock(); // Obszar krytyczny, któremu nie możemy przerwać intunlock(blokada); wyłączanie wywłaszczania: funkcja()
Bardziej szczegółowoEDUKARIS - O±rodek Ksztaªcenia
- O±rodek Ksztaªcenia Zabrania si kopiowania i rozpowszechniania niniejszego regulaminu przez inne podmioty oraz wykorzystywania go w dziaªalno±ci innych podmiotów. Autor regulaminu zastrzega do niego
Bardziej szczegółowow odróżnieniu od procesów współdzielą przestrzeń adresową mogą komunikować się za pomocą zmiennych globalnych
mechanizmy posix Wątki w odróżnieniu od procesów współdzielą przestrzeń adresową należą do tego samego użytkownika są tańsze od procesów: wystarczy pamiętać tylko wartości rejestrów, nie trzeba czyścić
Bardziej szczegółowo1 Klasy. 1.1 Denicja klasy. 1.2 Skªadniki klasy.
1 Klasy. Klasa to inaczej mówi c typ który podobnie jak struktura skªada si z ró»nych typów danych. Tworz c klas programista tworzy nowy typ danych, który mo»e by modelem rzeczywistego obiektu. 1.1 Denicja
Bardziej szczegółowoINFORMATOR TECHNICZNY WONDERWARE
Informator techniczny nr 95 04-06-2007 INFORMATOR TECHNICZNY WONDERWARE Synchronizacja czasu systemowego na zdalnych komputerach względem czasu systemowego na komputerze z serwerem Wonderware Historian
Bardziej szczegółowo4. Procesy pojęcia podstawowe
4. Procesy pojęcia podstawowe 4.1 Czym jest proces? Proces jest czymś innym niż program. Program jest zapisem algorytmu wraz ze strukturami danych na których algorytm ten operuje. Algorytm zapisany bywa
Bardziej szczegółowoOPIS PRZEDMIOTU ZAMÓWIENIA:
Szkolenia są realizowane w ramach projektów współfinansowanych ze środków Unii Europejskiej w ramach Europejskiego Funduszu Społecznego. Program Operacyjny Kapitał Ludzki 2007-2013 Załącznik nr 1 Do SIWZ
Bardziej szczegółowoSystem kontroli wersji SVN
System kontroli wersji SVN Co to jest system kontroli wersji Wszędzie tam, gdzie nad jednym projektem pracuje wiele osób, zastosowanie znajduje system kontroli wersji. System, zainstalowany na serwerze,
Bardziej szczegółowo1. Warunek ka»dy proces w ko«cu wejdzie do sekcji krytycznej jest
Imi i nazwisko: W ka»dym pytaniu testowym nale»y rozstrzygn prawdziwo± wszystkich podpunktów wpisuj c w kratk T lub N. Punkt b dzie przyznany jedynie w przypadku kompletu poprawnych odpowiedzi. 1. Warunek
Bardziej szczegółowoProgramowanie równoległe i rozproszone. Praca zbiorowa pod redakcją Andrzeja Karbowskiego i Ewy Niewiadomskiej-Szynkiewicz
Programowanie równoległe i rozproszone Praca zbiorowa pod redakcją Andrzeja Karbowskiego i Ewy Niewiadomskiej-Szynkiewicz 23 października 2009 Spis treści Przedmowa...................................................
Bardziej szczegółowoLaboratorium Sieci Komputerowych - 1
Laboratorium Sieci Komputerowych - 1 Konguracja serwerów sieciowych Andrzej Karwacki Paweª Jastrz bski gr. 2 14 maja 2007 Spis tre±ci 1 Cel wiczenia 1 2 Wykonanie wiczenia 2 2.1 Uruchamianie serwera FTP...................
Bardziej szczegółowoProblemy czytelników i pisarzy oraz 5 ucztujących filozofów
Problemy czytelników i pisarzy oraz 5 dr inż. Sławomir Samolej Katedra Informatyki i Automatyki Politechnika Rzeszowska Program przedmiotu oparto w części na materiałach opublikowanych na: http://wazniak.mimuw.edu.pl/
Bardziej szczegółowoZaawansowane programowanie w C++ (PCP)
Wykład 10 - boost Thread. 8 czerwca 2007 Równoległość bardzo wolna reakcja człowieka wolne urządzenia wejścia - wyjścia (np. drukarki) bardzo szybkie procesory można przeprowadzać obliczenia podczas obsługi
Bardziej szczegółowoProces z sekcją krytyczną. Synchronizacja procesów. Synchronizacja procesów, cd. Synchronizacja procesów, cd. Synchronizacja procesów, cd
Synchronizacja procesów Proces producenta - zmodyfikowany (licznik) produkuj jednostka w nast_p while licznik =n do nic_nie_rob; bufor [we] := nast_p; we=we+1 mod n; licznik:=licznik+1; Zmodyfikowany proces
Bardziej szczegółowo4. Procesy pojęcia podstawowe
4. Procesy pojęcia podstawowe 4.1 Czym jest proces? Proces jest czymś innym niż program. Program jest zapisem algorytmu wraz ze strukturami danych na których algorytm ten operuje. Algorytm zapisany bywa
Bardziej szczegółowoProgramowanie równoległe i rozproszone. W1. Wielowątkowość. Krzysztof Banaś Programowanie równoległe i rozproszone 1
Programowanie równoległe i rozproszone W1. Wielowątkowość Krzysztof Banaś Programowanie równoległe i rozproszone 1 Problemy współbieżności wyścig (race condition) synchronizacja realizowana sprzętowo (np.
Bardziej szczegółowoLekcja 3 Banki i nowe przedmioty
Lekcja 3 Banki i nowe przedmioty Akademia im. Jana Dªugosza w Cz stochowie Banki przedmiotów Co ju» wiemy? co to s banki przedmiotów w Baltie potramy korzysta z banków przedmiotów mo»emy tworzy nowe przedmioty
Bardziej szczegółowoProgramowanie wspóªbie»ne
1 Zadanie 1: Programowanie wspóªbie»ne wiczenia 11 Przestrzenie krotek cz. 1 Obliczanie caªki oznaczonej Rozwa»my iteracyjne obliczanie caªki oznaczonej na przedziale [a, b] metod trapezów. Krok iteracji
Bardziej szczegółowoSemafor nie jest mechanizmem strukturalnym. Aplikacje pisane z użyciem semaforów są podatne na błędy. Np. brak operacji sem_post blokuje aplikację.
J. Ułasiewicz Programowanie aplikacji współbieżnych 1 11 11.1 abstrakcyjne Semafor nie jest mechanizmem strukturalnym. Aplikacje pisane z użyciem semaforów są podatne na błędy. Np. brak operacji sem_post
Bardziej szczegółowo4. Procesy pojęcia podstawowe
4. Procesy pojęcia podstawowe 4.1 Czym jest proces? Proces jest czymś innym niż program. Program jest zapisem algorytmu wraz ze strukturami danych na których algorytm ten operuje. Algorytm zapisany bywa
Bardziej szczegółowoINSTRUKCJA KORZYSTANIA Z ELEKTRONICZNEJ ŚCIEŻKI WYKAZÓW
INSTRUKCJA KORZYSTANIA Z ELEKTRONICZNEJ ŚCIEŻKI WYKAZÓW Aby sprawnie korzystać z możliwości wysyłania wykazów z wykorzystaniem elektronicznej skrzynki podawczej należy przede wszystkim założyć sobie skrzynkę
Bardziej szczegółowoEkonometria. wiczenia 13 Metoda ±cie»ki krytycznej. Andrzej Torój. Instytut Ekonometrii Zakªad Ekonometrii Stosowanej
wiczenia 13 Metoda ±cie»ki krytycznej Instytut Ekonometrii Zakªad Ekonometrii Stosowanej Plan wicze«1 Przykªad: ubieranie choinki 2 3 Programowanie liniowe w analizie czasowej i czasowo-kosztowej projektu
Bardziej szczegółowoSemafor nie jest mechanizmem strukturalnym. Aplikacje pisane z użyciem semaforów są podatne na błędy. Np. brak operacji sem_post blokuje aplikację.
J. Ułasiewicz Programowanie aplikacji współbieżnych 1 11 Semafor nie jest mechanizmem strukturalnym. Aplikacje pisane z użyciem semaforów są podatne na błędy. Np. brak operacji sem_post blokuje aplikację.
Bardziej szczegółowoZastosowania matematyki
Zastosowania matematyki Monika Bartkiewicz 1 / 126 ...czy«cie dobrze i po»yczajcie niczego si nie spodziewaj c(šk. 6,34-35) Zagadnienie pobierania procentu jest tak stare jak gospodarka pieni»na. Procent
Bardziej szczegółowoJAO - J zyki, Automaty i Obliczenia - Wykªad 1. JAO - J zyki, Automaty i Obliczenia - Wykªad 1
J zyki formalne i operacje na j zykach J zyki formalne s abstrakcyjnie zbiorami sªów nad alfabetem sko«czonym Σ. J zyk formalny L to opis pewnego problemu decyzyjnego: sªowa to kody instancji (wej±cia)
Bardziej szczegółowoIwona Sójkowska. Dobre praktyki BPŁ w zakresie kreowania wizerunku i budowania dobrych relacji
Iwona Sójkowska Dobre praktyki BPŁ w zakresie kreowania wizerunku i budowania dobrych relacji Plan prezentacji: 1. Biblioteka dla uczelni 2. Biblioteka dla regionu 3. Biblioteka dla środowiska zawodowego
Bardziej szczegółowoMetody numeryczne i statystyka dla in»ynierów
Kierunek: Automatyka i Robotyka, II rok Wprowadzenie PWSZ Gªogów, 2009 Plan wykªadów Wprowadzenie, podanie zagadnie«, poj cie metody numerycznej i algorytmu numerycznego, obszar zainteresowa«i stosowalno±ci
Bardziej szczegółowoRozwi zywanie Ukªadów Równa«Liniowych Ax=B metod dekompozycji LU, za pomoc JAVA RMI
Rozwi zywanie Ukªadów Równa«Liniowych Ax=B metod dekompozycji LU, za pomoc JAVA RMI Marcn Šabudzik AGH-WFiIS, al. Mickiewicza 30, 30-059, Kraków, Polska email: labudzik@ghnet.pl www: http://fatcat.ftj.agh.edu.pl/
Bardziej szczegółowoPlatforma do obsługi zdalnej edukacji
Andrzej Krzyżak. Platforma do obsługi zdalnej edukacji Projekt platformy e-learningowej wykonanej w ramach pracy magisterskiej obejmował stworzenie w pełni funkcjonalnego, a zarazem prostego i intuicyjnego
Bardziej szczegółowoCharakterystyka systemów plików
Charakterystyka systemów plików Systemy plików są rozwijane wraz z systemami operacyjnymi. Windows wspiera systemy FAT oraz system NTFS. Różnią się one sposobem przechowywania informacji o plikach, ale
Bardziej szczegółowo1. Uruchom poniższy program tworzący pojedynczy wątek:
9 Wątki 1. Uruchom poniższy program tworzący pojedynczy wątek: #include #include #include void* worker(void* info) int i; for(i=0; i
Bardziej szczegółowoGEO-SYSTEM Sp. z o.o. GEO-RCiWN Rejestr Cen i Wartości Nieruchomości Podręcznik dla uŝytkowników modułu wyszukiwania danych Warszawa 2007
GEO-SYSTEM Sp. z o.o. 02-732 Warszawa, ul. Podbipięty 34 m. 7, tel./fax 847-35-80, 853-31-15 http:\\www.geo-system.com.pl e-mail:geo-system@geo-system.com.pl GEO-RCiWN Rejestr Cen i Wartości Nieruchomości
Bardziej szczegółowoPraca Dyplomowa Magisterska
Internetowa Platform Edukacyjna w Technologii ZOPE Autor: Promotor: Dr in». Adam Doma«ski Politechnika l ska Wydziaª Automatyki, Elektroniki i Informatyki Kierunek Informatyka 22 wrze±nia 2009 Dlaczego
Bardziej szczegółowotylko poprawne odpowiedzi, ale nie wszystkie 2 pkt poprawne i niepoprawne odpowiedzi lub brak zaznaczenia 0 pkt
Wydziaª Matematyki i Informatyki UJ 14 wrze±nia 2017 TEST NA STUDIA DOKTORANCKIE Z INFORMATYKI Przed Pa«stwem test wielokrotnego wyboru. Po zapoznaniu si z pytaniami prosz zaznaczy w tabeli, na zaª czonej
Bardziej szczegółowoINSTRUKCJA Panel administracyjny
INSTRUKCJA Panel administracyjny Konto trenera Spis treści Instrukcje...2 Opisy...3 Lista modułów głównych...3 Moduł szkoleniowy...4 Dodaj propozycję programu szkolenia...4 Modyfikuj arkusz wykładowcy...6
Bardziej szczegółowo