Zagadnienia zaawansowane. Lech Kruś,
|
|
- Aniela Woźniak
- 6 lat temu
- Przeglądów:
Transkrypt
1 WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WYDZIAŁ INFORMATYKI WIELODOSTĘPNE SYSTEMY OPERACYJNE II (SO2) Zagadnienia zaawansowane CZĘŚĆ 1 KONSPEKT WYKŁADÓW INFORMACJA O SPECJALIZACJI SIECI KOMPUTEROWE KOORDYNACJA PROCESÓW Semestr 4, studia zaoczne Lech Kruś,
2 KONSPEKT Cel przedmiotu: Wprowadzenie słuchaczy do zaawansowanych zagadnień systemów operacyjnych. Ułatwienie rozumienia podstawowych zagadnień związanych z synchronizacją procesów współbieżnych, komunikacją między procesami, blokowaniem (zakleszczaniem) procesów. Wprowadzenie do systemów rozproszonych i sieci komputerowych. Uzupełnieniem wykładu są zajęcia laboratoryjne poświęcone pracy w systemie MS Windows Server 2012R2. Wymagane przygotowanie słuchaczy: podstawy informatyki technicznej (cyfrowej reprezentacji informacji, podstaw arytmetyki komputerów, podstaw teorii układów logicznych: A. Skorupski, Podstawy budowy i działania komputerów, WKŁ 1996), organizacja i architektura komputerów (P. Metzger, Anatomia PC, Helion 1996), wielodostępne systemy operacyjne I (wykłady i laboratorium na Wydz. Informatyki, WSISiZ) Zaliczenie przedmiotu: zaliczenie laboratorium (kolokwia), oraz egzamin z tematyki wykładów
3 Zakres tematyczny Koordynacja procesów Problem sekcji krytycznej. Rozwiązania programowe. Sprzętowe środki synchronizacji. Semafory. Przykłady rozwiązań wybranych problemów synchronizacji: problem ograniczonego buforowania, problem czytelników i pisarzy, problem posilających się filozofów. Konstrukcje synchronizacji w językach wysokiego poziomu. Komunikacja między procesami Wprowadzenie - podstawowe schematy komunikacji. Określenie nadawców i odbiorców. Komunikacja bezpośrednia. Komunikacja pośrednia. Zagadnienia buforowania. Przykłady działań w sytuacjach wyjątkowych.
4 Blokady (zakleszczenia) procesów Definicja blokady (zakleszczenia). Warunki konieczne wystąpienia blokady. Graf przydziału zasobów. Zapobieganie wystąpieniu blokady - eliminacja jednego z warunków koniecznych. Unikanie blokad. Pojęcie stanu bezpiecznego, stanu zagrożenia i blokady. Algorytm bankiera. Wykrywanie blokad. Wychodzenie z blokady.
5 Wprowadzenie do systemów rozproszonych Co to jest system rozproszony, zalety i wady systemów rozproszonych Zagadnienia sprzętowe: wieloprocesory szynowe, wieloprocesory przełączane, multikomputery szynowe, multikomputery przełączane. Klasyfikacja systemów operacyjnych: systemy sieciowe, prawdziwe systemy rozproszone, systemy wieloprocesorowe z podziałem czasu Wybrane pojęcia związane z projektowaniem: przezroczystość, elastyczność, niezawodność, wydajność, skalowalność. Wprowadzenie do sieci komputerowych Pojęcia podstawowe: sieci z wymiana pakietów, sieci LAN i WAN, stos protokołów ISO, kapsułkowanie i demultipleksacja, interakcja klientserwer. Standardy w Internecie. Sieci LAN: topologie sieci LAN, pojecie ramki i adresu sieciowego. Intersieć i protokół TCP/IP: schemat adresowania IP, protokół ARP, protokół IP, protokół ICMP, protokół TCP, protokół UDP.
6 Literatura podstawowa: Abraham Silberschatz, James.L. Peterson, Peter.B. Galvin; Podstawy systemów operacyjnych, WNT, Warszawa (2000) Berny Goodheart, James Cox; Sekrety magicznego ogrodu. Unix System V, wersja 4 od środka. WNT, Warszawa Berny Goodheart, James Cox; Sekrety magicznego ogrodu. Unix System V, wersja 4 od środka. Klucz do zadań. WNT, Warszawa Maurice. J. Bach; Budowa systemu operacyjnego UNIX, WNT, Warszawa, Andrew S. Tanenbaum: Rozproszone systemy operacyjne. PWN. Warszawa Douglas E. Comer: Sieci komputerowe TCP/IP. (Tom 1) Zasady, protokoły i architektura. WNT, Warszawa W. Richard Stevens: Biblia TCP/IP, tom1 protokoły. Oficyna Wyd. READ ME, Literatura uzupełniająca: Craig Hunt: TCP/IP Administracja Sieci. O Reilly&Associates Inc., Oficyna Wyd. READ ME, Warszawa, Andrew. S. Tanenbaum; Modern Operating Systems, Prentice-Hall, Inc. London, Abraham Silberschatz, Peter.B. Galvin; Operating System Concepts. Addison Wesley, New York, 1994.
7 KOORDYNACJA PROCESÓW Zagadnienie współbieżności problemy uporządkowania wykonywania procesów mechanizmy synchronizacji i komunikowania Wprowadzenie Rozpatrywany jest zbiór procesów sekwencyjnych, wykonywanych asynchronicznie, ew. współdzielących dane. Model: proces producent, proces konsument. Jak zapewnić współbieżne działanie? założyć pulę buforów, producent zapełnia bufory, konsument opróżnia bufory. Synchronizacja: konsument musi czekać na wyprodukowanie tego, co chce skonsumować.
8 Przykład algorytmu koordynacji z ograniczonym buforem Zmienne dzielone: var n; type jednostka =...; var bufor array[0..n-1] of jednostka; we, wy: 0..n-1; licznik: integer; Wartości początkowe: we,wy: 0, licznik: 0. Dzielona pula buforów realizowana jest jako tablica cykliczna z dwoma wskaźnikami logicznymi: we - wskazuje następny pusty bufor, wy - wskazuje pierwszy zajęty bufor. Kod producenta repeat produkuj jednostkę w nastp while licznik = n do nic; bufor[we] := nastp; we := we + 1 mod n; licznik := licznik + 1; until false; Kod konsumenta repeat while licznik = 0 do nic; nastk:= bufor[wy]; wy := wy + 1 mod n; licznik := licznik - 1; konsumuj jednostkę w nastk until false;
9 Oba kody poprawne, gdy rozpatrywane oddzielnie. Czy działają poprawnie przy wykonywaniu współbieżnym? Przykład aktualna wartość zm. licznik 5, współbieżne wykonywanie: producent: licznik := licznik + 1; konsument: licznik := licznik - 1; Wykonywanie instrukcji w kodzie maszynowym: licznik := licznik + 1; licznik := licznik - 1; jako rozkazów: jako rozkazów: rej1 := licznik; rej2 := licznik; rej1:= rej1 + 1; rej2:= rej2-1; licznik := rej1; licznik := rej2; W przypadku współbieżnego wykonywania instrukcji ze zmienną licznik rozkazy maszynowe mogą się przeplatać w dowolnym porządku, np.: T0: producent wykonuje rej1:= licznik ; (rej1=5) T1: producent rej1:= rej1 +1 ; (rej1=6) T2: konsument rej2:= licznik; (rej2=5) T3: konsument rej2:= rej2-1; (rej2=4) T4: producent licznik := rej1; (licznik=6) T5: konsument licznik := rej2: (licznik=4) Ostatnia wartość zm. licznik wskazuje na istnienie 4 pełnych buforów, a naprawdę jest 5. Gdy zmieni się kolejność T4 i T5 to wynik jest 6. Jak zapewnić prawidłowy wynik? Tylko jeden proces może wykonywać operacje na zmiennej licznik w czasie wykonywania instrukcji. WNIOSEK: Konieczność synchronizacji.
10 Problem sekcji krytycznej n współbieżnych procesów {P 0, P 1,..., P n-1 }, sekcja krytyczna - segment kodu (może wystąpić w każdym z tych procesów), w którym proces przetwarza wspólne zmienne, zasada wzajemnego wyłączania w czasie wykonania sekcji krytycznych procesów, Problem: skonstruować protokół służący organizacji współpracy procesów. Kod procesu zawiera sekwencję: sekcja wejściowa (prośba o zezwolenie na wejście do sekcji krytycznej) sekcja krytyczna sekcja wyjściowa (sygnalizacja wyjścia z sekcji krytycznej) reszta.
11 Wymagane warunki rozwiązania problemu: Wzajemne wyłączanie Postęp Ograniczone czekanie Założenia dot. konstrukcji algorytmów: niezerowa prędkość wykonywania procesów podstawowe rozkazy maszynowe wykonywane niepodzielnie ogólna struktura rozpatrywanego procesu ma postać: repeat sekcja wejściowa sekcja krytyczna sekcja wyjściowa reszta until false;
12 Rozwiązania problemu sekcji krytycznej? Dwa współbieżne procesy P 0, P 1 (dla wygody ozn. P i, P j, i=0,1; j=1-i). Algorytm 1 wspólna zmienna całkowita numer o wartościach 0 lub 1 repeat while numer i do nic; sekcja krytyczna numer := j; reszta until false; Algorytm 2 wspólna tablica flaga var flaga: array[0..1] of boolean; repeat flaga[i] := true; while flaga[j] do nic; sekcja krytyczna flaga[i] := false; reszta until false;
13 Algorytm 3 Wspólne zmienne procesów: var flaga: array[0..1] of boolean; numer: 0..1; wartości początkowe: flaga[0]=flaga[1]=false struktura procesu P i : repeat flaga[i] := true; numer := j; while (flaga[j] and numer = j) do nic; flaga[i] := false; sekcja krytyczna until false; reszta
14 Sprzętowe środki synchronizacji Rozkazy sprzętowe pozwalające na sprawdzenie i zmianę zawartości słowa (słów), wykonywane jako niepodzielne jednostki. Przykład rozkazu sprzętowego: instrukcja Testuj_i_Ustal function Testuj_i_Ustal(var cel: boolean): boolean; begin Testuj_i_Ustal:=cel; cel:=true; end; Realizacja wzajemnego wyłączania: wspólna zmienna var zamek: boolean; wartość początkowa: zamek:= false; Proces Pi (i=1,2): repeat while Testuj_i_Ustal(zamek) do nic; sekcja krytyczna zamek:=false; reszta until false;
15 Semafory Semafor S - zmienna całkowita dostępna tylko za pomocą standardowych niepodzielnych operacji: czekaj (ang. wait), sygnalizuj (ang. signal). Definicje operacji: czekaj(s): while S 0 do nic; S := S - 1; sygnalizuj(s): S := S + 1; Niepodzielność: gdy jeden proces zmienia wartość S, żaden inny nie może; podczas sprawdzanie i zmieniania wartości S nie może nastąpić przerwanie.
16 Przykłady zastosowań 1. Problem sekcji krytycznej przy n procesach: wspólny semafor wzajwy (wzajemne wyłączanie), początkowa wartość wzajwy=1, każdy proces Pi jest zorganizowany: repeat czekaj(wzajwy); sekcja krytyczna sygnalizuj(wzajwy); reszta until false;
17 2. Synchronizacja wykonywania procesów np. zapewnienie wymaganej kolejności wykonania instrukcji w różnych procesach: współbieżne procesy P1 z instrukcją S1, oraz P2 z instr. S2 wymagane wykonanie S2 po wykonaniu S1. Rozwiązanie: Inicjacja wspólnej zmiennej semafor: synch, wartość początkowa synch = 0, dołączenie instrukcji w procesie P1:. S1; sygnalizuj(synch);. w procesie P2:. czekaj(synch); S2;
18 Problem aktywnego czekania, wirującej blokady Procesy stojące pod semaforem wykonują pętle instrukcji - aktywne czekanie. Sposób rozwiązania: Definicja semafora nie wymagająca konieczności aktywnego czekania: (idea - wznowienie zablokowanego pod semaforem procesu przez inny proces) type semafor = record wart: integer; L: list of proces; end; czekaj(s): S.wart := S.wart - 1; if S.wart < 0 then begin dołącz dany proces do S.L; block; end; sygnalizuj(s): S.wart := S.wart + 1; if S.wart 0 then begin usuń jakiś proces P z S.L; wakeup(p); end;
19 Problem blokowania Zbiór procesów jest w stanie blokady, gdy każdy proces w tym zbiorze czeka na zdarzenie spowodowane przez inny proces z tego zbioru.
20 WYBRANE PROBLEMY SYNCHRONIZACJI Problem ograniczonego buforowania Proces producent przekazuje informacje za pośrednictwem n buforów do procesu konsument. Każdy bufor mieści jedną jednostkę. Semafory: wzajwy, wartość pocz. 1, pusty, wartość pocz. n, pełny, wartość pocz. 0. Struktura kodu producenta: repeat produkowanie jednostki w nastp czekaj(pusty); czekaj(wzajwy); dodanie jednostki nastp do bufora bufor sygnalizuj( wzajwy); sygnalizuj(pełny); until false; Struktura kodu konsumenta: repeat czekaj(pełny); czekaj(wzajwy); wyjmowanie jednostki z buforu bufor do nastk sygnalizuj( wzajwy); sygnalizuj(pusty); konsumowanie jednostki z nastk until false;
21 Problem czytelników i pisarzy Dzielenie obiektu danych (pliku, rekordu) między kilka współbieżnych procesów. Niektóre procesy będą tylko czytać (czytelnicy), inne mogą uaktualniać (czytać i pisać - pisarze). Problem zagwarantowania wyłączności dostępu pisarzy do obiektu. Najprostszy wariant: żaden czytelnik nie powinien czekać, chyba, że pisarz uzyskał dostęp.
22 Próba rozwiązania: procesy czytelników dzielą zmienne: var wzjawy, pis: semafor; liczp: integer; wartości początkowe: wzajwy, pis 1, liczp 0. Struktura procesu pisarza: czekaj(pis); pisanie sygnalizuj(pis); Struktura procesu czytelnika: czekaj(wzajwy); liczp:=liczp + 1; if liczp = 1 then czekaj(pis); sygnalizuj(wzajwy); czytanie czekaj(wzajwy); liczp:= liczp - 1; if liczp = 0 then sygnalizuj(pis); sygnalizuj(wzajwy);
23 Problem posilających się filozofów Dane dzielone: var pałeczka: array[0..4] of semafor; wartości początkowe = 1. Przykład prostego rozwiązania: pałeczka semafor próba podniesienia pałeczki - operacja czekaj odłożenie pałeczki - operacja sygnalizuj i Struktura procesu filozofa nr i: repeat czekaj(pałeczka[i]); czekaj(pałeczka[i+1 mod 5]); jedzenie synalizuj(pałeczka[i]); sygnalizuj(pałeczka[i +1 mod 5]); myślenie until false;
24 Implementacja semafora zliczającego S przy pomocy semaforów binarnych Deklaracje: semafor_binarny S1, S2; int C; Wartości początkowe: S1 = 1, S2 = O, zmiennej całkowita C = wartość początkowa semafora zliczającego S Implementacja operacji wait semafora zliczającego S: wait(s1); C--; if (C < O) { signal(s1); wait(s2); } signal(s1); Operacja signal semafora zliczającego S: wait(s1); C++; if (C <= O) signal(s2); else signal(s1);
25 Konstrukcje synchronizacji w językach wysokiego poziomu Regiony krytyczne Specjalna deklaracja zmiennej v typu T dzielonej przez wiele procesów: var v: shared T; zmienna v dostępna jest tylko w obrębie specjalnej instrukcji region: region v do S; Przykład: dwa procesy współbieżne P 0, P 1, zawierające instrukcje: P 0 : region v do S 1 ; P 1 : region v do S 2 ; wynik odpowiada sekwencyjnemu wykonaniu S 1, S 2 lub S 2, S 1.
26 Implementacja Regionu krytycznego 1. Kompilator generuje zmienną dzieloną: var v_wzajwy: semafor; warunek początkowy: v_wzajwy:=1; 2. Dla każdej instrukcji: region v do S; kompilator generuje kod zestawu instrukcji: czekaj(v_wzajwy); S; sygnalizuj(v_wzajwy);
27 Warunkowy region krytyczny deklaracja: var v: shared T zmienna v dostępna jest w instrukcji: region v when B do S; gdzie B jest wyrażeniem boolowskim. Przykład ograniczonego buforowania Deklaracje: var bufor: shared record pula: array[0..n-1] of jednostka; licznik, we, wy: integer; end; Wartości początkowe: licznik:=we:=wy:=0; Kod producenta region bufor when licznik < n do begin pula[we]:=nastp; we:= we+1 mod n; licznik:= licznik+1; end; Kod konsumenta region bufor when licznik > 0 do begin nastk:= pula[wy]; wy:= wy+1 mod n; licznik:= licznik-1; end;
28 Monitory Monitor jest scharakteryzowany przez zbiór operacji zdefiniowanych przez programistę. Reprezentacja typu monitor zawiera deklaracje zmiennych (ich wartości określają stan monitora), oraz procedury lub funkcje realizujące działania na monitorze. Konstrukcja monitora gwarantuje, że w jego wnętrzu może być wykonywany tylko jeden proces. Inne czekają w kolejce. Literatura: A. Silberschatz, J.L. Peterson, P.B. Galvin; Podstawy systemów operacyjnych. WNT, W-wa, A. Silberschatz, P.B. Galvin, G. Gagne; Podstawy systemów operacyjnych. WNT, W-wa, Uwaga Monitor jest określony jako typ w rozumieniu programowania obiektowego: zarówno struktura danych i zbiór określonych na niej działań.
29 KOMUNIKACJA MIĘDZY PROCESAMI Wprowadzenie Dwa uzupełniające się schematy komunikacji: pamięć dzielona - procesy współużytkują pewne zmienne system komunikatów - wymiana komunikatów między procesami bez użycia zmiennych dzielonych. Podstawowe operacje komunikacji między procesami: nadaj(komunikat) odbierz(komunikat) Zagadnienia dotyczące ustanowienia łącza Zagadnienia logicznej implementacji łącza
30 OKREŚLENIE NADAWCÓW I ODBIORCÓW Komunikacja bezpośrednia proces nadający (lub odbierający) komunikat jawnie określa odbiorcę (lub nadawcę) Cechy łącza: ustanawiane automatycznie między dwoma procesami na podstawie ich identyfikatorów dotyczy dokładnie dwóch procesów, jest dla każej pary procesów tylko jedno, jest dwukierunkowe
31 (Komunikacja bezpośrednia - kontynuacja) Definicja podstawowych operacji: nadaj(p, komunikat), gdzie P jest odbiorcą odbierz(q, komunikat), gdzie Q jest nadawcą Przykład rozwiązania problemu producenta i konsumenta Proces producenta: repeat wytwarzaj jednostkę w nastp nadaj(konsument, nastp); until false; Proces konsumenta: repeat odbierz(producent, nastk); konsumuj jednostkę z nastk until false;
32 Komunikacja pośrednia wykorzystanie skrzynek pocztowych (portów) o jednoznacznej identyfikacji Definicja podstawowych operacji nadaj(a, komunikat), odbierz(a, komunikat), gdzie A jest identyfikatorem skrzynki pocztowej. Cechy łącza: ustanawiane między procesami, gdy dzielą skrzynkę pocztową, może dotyczyć więcej niż dwóch procesów, każda para procesów może mieć kilka różnych łączy, może być jedno lub dwukierunkowe
33 Różne rozwiązania systemowe dotyczące: własności skrzynki (procesu lub systemu operacyjnego), tworzenia skrzynki, nadawania i odbierania komunikatów, usuwania skrzynki. Zagadnienia buforowania Pojemność łącza tylko określona liczba komunikatów może w nim przebywać, kolejka komunikatów przyporządkowanych do łącza. Sposoby implementacji kolejki pojemność łącza pojemność zerowa pojemność ograniczona pojemność nieograniczona
34 Przykłady działań w sytuacjach wyjątkowych Zakończenie procesu biorącego udział w komunikacji Utrata komunikatów Zniekształcenie komunikatów
Zagadnienia zaawansowane. Lech Kruś,
WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WYDZIAŁ INFORMATYKI WIELODOSTĘPNE SYSTEMY OPERACYJNE II Zagadnienia zaawansowane CZĘŚĆ 2 BLOKADY ZAKLESZCZENIA PROCESÓW Semestr 4 Lech Kruś, BLOKADY -
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ółowoWIELODOSTĘPNE SYSTEMY OPERACYJNE 1 (SO1)
WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA WYDZIAŁ INFORMATYKI WIELODOSTĘPNE SYSTEMY OPERACYJNE 1 (SO1) oraz UŻYTKOWANIE SYSTEMU UNIX WYKŁADY I LABORATORIUM KOMPUTEROWE (konspekt) Prowadzący wykłady:
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ół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ółowoProces y i y w i ąt ą ki
Procesy i wątki Proces Proces jest wykonywanym programem. Wykonanie procesu musi przebiegać w sposób sekwencyjny ( w dowolnej chwili na zamówienie naszego procesu może być wykonany co najwyżej jeden rozkaz
Bardziej szczegółowoProcesy i wątki. Blok kontrolny procesu. Proces. Proces - elementy. Stan procesu
Proces Procesy i wątki Proces jest wykonywanym programem. Wykonanie procesu musi przebiegać w sposób sekwencyjny ( w dowolnej chwili na zamówienie naszego procesu może być wykonany co najwyżej jeden rozkaz
Bardziej szczegółowoSynchronizacja procesów
Synchronizacja procesów Proces producenta - zmodyfikowany (licznik) repeat... produkuj jednostka w nast_p... while licznik =n do nic_nie_rob; bufor [we] := nast_p; we=we+1 mod n; licznik:=licznik+1; until
Bardziej szczegółowoprocesów Współbieżność i synchronizacja procesów Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak
Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak Plan wykładu Abstrakcja programowania współbieżnego Instrukcje atomowe i ich przeplot Istota synchronizacji Kryteria poprawności programów współbieżnych
Bardziej szczegółowoNazwa Wydziału Nazwa jednostki prowadzącej moduł Nazwa modułu kształcenia Kod modułu Język kształcenia Efekty kształcenia dla modułu kształcenia
Nazwa Wydziału Nazwa jednostki prowadzącej moduł Nazwa modułu kształcenia Kod modułu Język kształcenia Efekty kształcenia dla modułu kształcenia Wydział Matematyki i Informatyki Instytut Informatyki i
Bardziej szczegółowoZał nr 4 do ZW. Dla grupy kursów zaznaczyć kurs końcowy. Liczba punktów ECTS charakterze praktycznym (P)
Zał nr 4 do ZW WYDZIAŁ PODSTAWOWYCH PROBLEMÓW TECHNIKI KARTA PRZEDMIOTU Nazwa w języku polskim : Architektura Komputerów i Systemy Operacyjne Nazwa w języku angielskim : Computer Architecture and Operating
Bardziej szczegółowoProces z sekcją krytyczną. Synchronizacja procesów. Synchronizacja procesów, cd. Synchronizacja procesów, cd. Synchronizacja procesów, cd
Synchronizacja procesów Synchronizacja procesów, cd 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;
Bardziej szczegółowoProcesy i wątki. Blok kontrolny procesu. Proces. Proces - elementy. Stan procesu. Blok kontrolny procesu
Proces Procesy i wątki Proces jest wykonywanym programem. Wykonanie procesu musi przebiegać w sposób sekwencyjny ( w dowolnej chwili na zamówienie naszego procesu może być wykonany co najwyżej jeden rozkaz
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ółowoWYKŁAD. Jednostka prowadząca: Wydział Techniczny. Kierunek studiów: Elektronika i telekomunikacja
Jednostka prowadząca: Wydział Techniczny Kierunek studiów: Elektronika i telekomunikacja Nazwa przedmiotu: Systemy operacyjne i architektura komputerów Charakter przedmiotu: kierunkowy, obowiązkowy Typ
Bardziej szczegółowoStan procesu. gotowy - czeka na przydział procesora, zakończony - zakończył działanie.
Procesy i wątki Proces Proces jest wykonywanym programem. Wykonanie procesu musi przebiegać w sposób sekwencyjny ( w dowolnej chwili na zamówienie naszego procesu może być wykonany co najwyżej jeden rozkaz
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ółowoSystemy Operacyjne synchronizacja i komunikacja procesów
Katedra Informatyki, Politechnika Świętokrzyska w Kielcach Kielce, 1 grudnia 2006 1 1 Sytuacje hazardowe 2 Problem sekcji krytycznej 3 Warunki poprawności rozwiązania 4 Rozwiązanie programowe dla dwóch
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ółowoWprowadzenie do programowania współbieżnego
Wprowadzenie do programowania współbieżnego Marcin Engel Instytut Informatyki Uniwersytet Warszawski Zamiast wstępu... Zamiast wstępu... Możliwość wykonywania wielu akcji jednocześnie może ułatwić tworzenie
Bardziej szczegółowoPRZEWODNIK PO PRZEDMIOCIE
Nazwa przedmiotu: Kierunek: Informatyka Rodzaj przedmiotu: obowiązkowy w ramach treści kierunkowych, moduł kierunkowy ogólny Rodzaj zajęć: wykład, laboratorium I KARTA PRZEDMIOTU CEL PRZEDMIOTU PRZEWODNIK
Bardziej szczegółowoPRZEWODNIK PO PRZEDMIOCIE
Nazwa przedmiotu: Kierunek: Inżynieria Biomedyczna Rodzaj przedmiotu: obowiązkowy moduł specjalności informatyka medyczna Rodzaj zajęć: wykład, laboratorium I KARTA PRZEDMIOTU CEL PRZEDMIOTU PRZEWODNIK
Bardziej szczegółowoJęzyk programowania PASCAL
Język programowania PASCAL (wersja podstawowa - standard) Literatura: dowolny podręcznik do języka PASCAL (na laboratoriach Borland) Iglewski, Madey, Matwin PASCAL STANDARD, PASCAL 360 Marciniak TURBO
Bardziej szczegółowoSemafory. // G - globalna dla wszystkich. // Wada - aktywne oczekiwanie Test_and_Set(Li); exit when Li = 0; end loop sekcja_krytyczna(i); G := 0;
Semafory Rozwiązanie problemu wzajemnego wykluczania Bez dodatkowego wsparcia sprzętowego i programowego Zakładamy jedynie, że zapis do i odczyt z pamięci wspólnej są operacjami atomowymi (czyli istnieje
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ółowoOpis efektów kształcenia dla modułu zajęć
Nazwa modułu: Projektowanie i użytkowanie systemów operacyjnych Rok akademicki: 2013/2014 Kod: EAR-2-324-n Punkty ECTS: 5 Wydział: Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej Kierunek:
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ół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ółowoSystemy operacyjne. Program przedmiotu. Forma zaliczenia przedmiotu. Dariusz Wawrzyniak 1
Systemy operacyjne Dariusz Wawrzyniak Politechnika Poznańska Instytut Informatyki ul. Piotrowo 3a, CW p. 5 60-965 Poznań Dariusz.Wawrzyniak@cs.put.poznan.pl www.cs.put.poznan.pl/dwawrzyniak www.cs.put.poznan.pl/sop
Bardziej szczegółowoSystemy operacyjne. Program przedmiotu
Systemy operacyjne Dariusz Wawrzyniak Politechnika Poznańska Instytut Informatyki ul. Piotrowo 3a, CW p. 5 60-965 Poznań Dariusz.Wawrzyniak@cs.put.poznan.pl www.cs.put.poznan.pl/dwawrzyniak www.cs.put.poznan.pl/sop
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ół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ółowosynchronizacji 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ółowoMechanizmy pracy równoległej. Jarosław Kuchta
Mechanizmy pracy równoległej Jarosław Kuchta Zagadnienia Algorytmy wzajemnego wykluczania algorytm Dekkera Mechanizmy niskopoziomowe przerwania mechanizmy ochrony pamięci instrukcje specjalne Mechanizmy
Bardziej szczegółowoE-I-0006-s3. Informatyka I stopień (I stopień / II stopień) ogólnoakademicki (ogólno akademicki / praktyczny)
KARTA MODUŁU / KARTA PRZEDMIOTU Załącznik nr 7 do Zarządzenia Rektora nr 10/12 z dnia 21 lutego 2012r. Kod modułu E-I-0006-s3 Nazwa modułu Systemy operacyjne 1 Nazwa modułu w języku angielskim Operating
Bardziej szczegółowo5. Model komunikujących się procesów, komunikaty
Jędrzej Ułasiewicz str. 1 5. Model komunikujących się procesów, komunikaty Obecnie stosuje się następujące modele przetwarzania: Model procesów i komunikatów Model procesów komunikujących się poprzez pamięć
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ółowoUniwersytet w Białymstoku Wydział Ekonomiczno-Informatyczny w Wilnie SYLLABUS na rok akademicki 2010/2011 http://www.wilno.uwb.edu.
SYLLABUS na rok akademicki 010/011 Tryb studiów Studia stacjonarne Kierunek studiów Informatyka Poziom studiów Pierwszego stopnia Rok studiów/ semestr 1(rok)/1(sem) Specjalność Bez specjalności Kod katedry/zakładu
Bardziej szczegółowoMonitory. Jarosław Kuchta
Monitory Jarosław Kuchta Co to jest monitor Monitor to zebrane w jednej konstrukcji programowej zmienne i operacje na tych zmiennych. Część tych operacji jest udostępnianych na zewnątrz monitora. Tylko
Bardziej szczegółowoKlient-Serwer Komunikacja przy pomocy gniazd
II Klient-Serwer Komunikacja przy pomocy gniazd Gniazda pozwalają na efektywną wymianę danych pomiędzy procesami w systemie rozproszonym. Proces klienta Proces serwera gniazdko gniazdko protokół transportu
Bardziej szczegółowoZagadnienia zaawansowane. Lech Kru, (SO2) WIELODOSTPNE SYSTEMY OPERACYJNE II INFORMACJA O SPECJALIZACJI SIECI KOMPUTEROWE KOORDYNACJA PROCESÓW
WYSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZDZANIA WYDZIAŁ INFORMATYKI WIELODOSTPNE SYSTEMY OPERACYJNE II (SO2) Zagadnienia zaawansowane CZ 1 KONSPEKT WYKŁADÓW INFORMACJA O SPECJALIZACJI SIECI KOMPUTEROWE
Bardziej szczegółowoSystemy operacyjne. Literatura do zagadnień wykładowych (1) Literatura do zagadnień wykładowych (2) Program przedmiotu. Forma zaliczenia przedmiotu
Systemy operacyjne Dariusz Wawrzyniak Politechnika Poznańska Instytut Informatyki ul. Piotrowo 3a, CW p. 5 60-965 Poznań Dariusz.Wawrzyniak@cs.put.poznan.pl www.cs.put.poznan.pl/dwawrzyniak www.cs.put.poznan.pl/sop
Bardziej szczegółowoMechanizmy komunikacji. spotkania symetryczne (język CSP) spotkania asymetryczne (Ada) przestrzenie krotek (Linda) potoki, komunikaty i kanały (Unix)
Mechanizmy komunikacji spotkania symetryczne (język CSP) spotkania asymetryczne (Ada) przestrzenie krotek (Linda) potoki, komunikaty i kanały (Unix) Język CSP Hoare (1978r.) Communicating Sequential Processes
Bardziej szczegółowoSynchronizacja procesów
Synchronizacja procesów Proces producenta - zmodyfikowany (licznik) repeat... produkuj jednostka w nast_p... while licznik =n do nic_nie_rob; bufor [we] := nast_p; we=we+1 mod n; licznik:=licznik+1; until
Bardziej szczegółowoE-1IZ2-06-s4. Informatyka I stopień (I stopień / II stopień) ogólnoakademicki (ogólno akademicki / praktyczny)
KARTA MODUŁU / KARTA PRZEDMIOTU Załącznik nr 7 do Zarządzenia Rektora nr 10/12 z dnia 21 lutego 2012r. Kod modułu E-1IZ2-06-s4 Nazwa modułu Systemy operacyjne 1 Nazwa modułu w języku angielskim Operating
Bardziej szczegółowoInformatyka I stopień (I stopień / II stopień) Ogólnoakademicki (ogólno akademicki / praktyczny) Niestacjonarne (stacjonarne / niestacjonarne)
Załącznik nr 7 do Zarządzenia Rektora nr 10/12 z dnia 21 lutego 2012r. KARTA MODUŁU / KARTA PRZEDMIOTU Kod modułu Nazwa modułu Systemy operacyjne 1 Nazwa modułu w języku angielskim Operating systems 1
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ółowoSYLABUS DOTYCZY CYKLU KSZTAŁCENIA realizacja w roku akademickim 2016/2017
Załącznik nr 4 do Uchwały Senatu nr 430/01/2015 SYLABUS DOTYCZY CYKLU KSZTAŁCENIA 2014-2018 realizacja w roku akademickim 2016/2017 1.1. PODSTAWOWE INFORMACJE O PRZEDMIOCIE/MODULE Nazwa przedmiotu/ modułu
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ółowoPrzerwania. Przerwania. Budowa systemu komputerowego. Zdarzenia powodujące przerwanie: Wektor przerwań
Budowa systemu komputerowego Przerwania Jednostka centralna Sterownik dysku Szyna systemowa (magistrala danych) Sterownik drukarki Sterownik pamięci operacyjnej Pamięć operacyjna Sterownik sieci Przerwanie
Bardziej szczegółowoSystemy operacyjne. wykład dr Marcin Czarnota laboratorium mgr Radosław Maj
Systemy operacyjne wykład dr Marcin Czarnota laboratorium mgr Radosław Maj Plan wykładów 1. Wprowadzenie, 2. Procesy, wątki i zasoby, 3. Planowanie przydziału procesora, 4. Zarządzanie pamięcią operacyjną,
Bardziej szczegółowoPodstawy Informatyki Systemy operacyjne
Podstawy Informatyki alina.momot@polsl.pl http://zti.polsl.pl/amomot/pi Plan wykładu 1 Definicje systemu operacyjnego Zadania systemu operacyjnego Klasyfikacja systemów operacyjnych 2 Zasoby systemu komputerowego
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ółowoAkademia Techniczno-Humanistyczna w Bielsku-Białej
Akademia Techniczno-Humanistyczna w Bielsku-Białej Wydział Budowy Maszyn i Informatyki Laboratorium z sieci komputerowych Ćwiczenie numer: 9 Temat ćwiczenia: Aplikacje klient-serwer. 1. Wstęp teoretyczny.
Bardziej szczegółowoPrzerwania. Przerwania. Budowa systemu komputerowego. Zdarzenia powodujące przerwanie: Wektor przerwań
Budowa systemu komputerowego Przerwania Jednostka centralna Sterownik dysku Szyna systemowa (magistrala danych) Sterownik drukarki Sterownik pamięci operacyjnej Pamięć operacyjna I NIC Sterownik sieci
Bardziej szczegółowoSOP2 - semafory. grudzień
SOP2 - semafory grudzień 2010 1 Plan prezentacji Problem producent-konsument Problem czytelników i pisarzy Problem jedzących filozofów grudzień 2010 2 Producent-konsument var bufor: array [0..n-1] of produkt;
Bardziej szczegółowodr inż. Konrad Sobolewski Politechnika Warszawska Informatyka 1
dr inż. Konrad Sobolewski Politechnika Warszawska Informatyka 1 Cel wykładu Definicja, miejsce, rola i zadania systemu operacyjnego Klasyfikacja systemów operacyjnych Zasada działanie systemu operacyjnego
Bardziej szczegółowoWprowadzenie. Dariusz Wawrzyniak. Miejsce, rola i zadania systemu operacyjnego w oprogramowaniu komputera
Dariusz Wawrzyniak Plan wykładu Definicja, miejsce, rola i zadania systemu operacyjnego Klasyfikacja systemów operacyjnych Zasada działania systemu operacyjnego (2) Definicja systemu operacyjnego (1) Miejsce,
Bardziej szczegółowoMonitory. Wady semafora
Wady semafora Monitory Niestrukturalny mechanizm synchronizacji Nie ułatwia wykrywania błędów synchronizacyjnych w czasie kompilacji programu Idea Jądro systemu operacyjnego jako monolityczny monitor -
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ółowoWprowadzenie. Dariusz Wawrzyniak. Miejsce, rola i zadania systemu operacyjnego w oprogramowaniu komputera
Dariusz Wawrzyniak Plan wykładu Definicja, miejsce, rola i zadania systemu operacyjnego Klasyfikacja systemów operacyjnych Zasada działania systemu operacyjnego (2) Miejsce, rola i zadania systemu operacyjnego
Bardziej szczegółowoSystemy operacyjne III
Systemy operacyjne III WYKŁAD 3 Jan Kazimirski 1 Współbieżność 2 Współbieżność Wielozadaniowość - zarządzanie wieloma procesami w ramach jednego CPU Wieloprocesorowość - zarządzanie wieloma zadaniami w
Bardziej szczegółowo3URJUDPRZDQLHZVSyáELH*QHZVWS
3URJUDPRZDQLHZVSyáELH*QHZVWS Problem sortowania N liczb Algorytm sekwencyjny sortuj(1, N); NRV]WVRUWRZDQLDSU]H]SURVW]DPLDQN 2 SRUyZQD $OJRU\WPUyZQROHJá\ cobegin {wykonaj równolegle} VRUWXMSyáB1 VRUWXMSyáB11
Bardziej szczegółowoSystemy operacyjne. Wprowadzenie. Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak
Wprowadzenie Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak Plan wykładu Definicja, miejsce, rola i zadania systemu operacyjnego Klasyfikacja systemów operacyjnych Zasada działania systemu operacyjnego
Bardziej szczegółowoModelowanie procesów współbieżnych
Modelowanie procesów współbieżnych dr inż. Maciej Piotrowicz Katedra Mikroelektroniki i Technik Informatycznych PŁ piotrowi@dmcs.p.lodz.pl http://fiona.dmcs.pl/~piotrowi -> Modelowanie... Literatura M.
Bardziej szczegółowoSYSTEMY OPERACYJNE SYLABUS A. Informacje ogólne
SYSTEMY OPERACYJNE SYLABUS A. Informacje ogólne Elementy składowe sylabusu Nazwa jednostki prowadzącej kierunek Nazwa kierunku studiów Poziom kształcenia Profil studiów Forma studiów Rodzaj przedmiotu
Bardziej szczegółowoKARTA KURSU. Systemy operacyjne
KARTA KURSU Nazwa Nazwa w j. ang. Systemy operacyjne Operating systems Kod Punktacja ECTS* 5 Koordynator dr inż. Grzegorz Sokal Zespół dydaktyczny: prof. dr hab. Bartłomiej Pokrzywka dr inż. Muchacki Mateusz
Bardziej szczegółowoSYSTEMY OPERACYJNE. kik.pcz.czest.pl/so. (C) KIK PCz 2009. Materiały pomocnicze 1 PROWADZI: PODSTAWOWA LITERATURA: ZAJĘCIA: STRONA
SYSTEMY OPERACYJNE PROWADZI: dr inż. Jarosław Bilski Katedra Inżynierii Komputerowej Politechnika Częstochowska Wykład dla kierunku Informatyka 2 ZAJĘCIA: Obowiązkowe Wykład Laboratorium 2 godziny tygodniowo
Bardziej szczegółowoPolitechnika Krakowska im. Tadeusza Kościuszki. Karta przedmiotu. obowiązuje studentów rozpoczynających studia w roku akademickim 2013/2014
Politechnika Krakowska im. Tadeusza Kościuszki Karta przedmiotu Wydział Mechaniczny obowiązuje studentów rozpoczynających studia w roku akademickim 2013/2014 Kierunek studiów: Informatyka Stosowana Forma
Bardziej szczegółowoWstęp do programowania 2
Wstęp do programowania 2 wykład 10 Zadania Agata Półrola Wydział Matematyki UŁ 2005/2006 http://www.math.uni.lodz.pl/~polrola Współbieżność dotychczasowe programy wykonywały akcje sekwencyjnie Ada umożliwia
Bardziej szczegółowoSystemy Wbudowane. Założenia i cele przedmiotu: Określenie przedmiotów wprowadzających wraz z wymaganiami wstępnymi: Opis form zajęć
Systemy Wbudowane Kod przedmiotu: SW Rodzaj przedmiotu: kierunkowy ; obowiązkowy Wydział: Informatyki Kierunek: Informatyka Specjalność (specjalizacja): - Poziom studiów: pierwszego stopnia Profil studiów:
Bardziej szczegółowoPodstawy informatyki. Izabela Szczęch. Politechnika Poznańska
Podstawy informatyki Izabela Szczęch Politechnika Poznańska SYSTEMY OPERACYJNE 2 Plan wykładu Definicja, miejsce, rola i zadania systemu operacyjnego w oprogramowaniu komputera Klasyfikacja systemów operacyjnych
Bardziej szczegółowoElektronika i Telekomunikacja I stopień (I stopień / II stopień) ogólnoakademicki (ogólno akademicki / praktyczny)
Załącznik nr 7 do Zarządzenia Rektora nr /2 z dnia 2 lutego 22r. KARTA MODUŁU / KARTA PRZEDMIOTU Kod modułu Nazwa modułu Nazwa modułu w języku angielskim Obowiązuje od roku akademickiego 22/23 EiT_S_I_AiSOK
Bardziej szczegółowoOPERACJE NA PLIKACH. Podstawowe pojęcia:
OPERACJE NA PLIKACH Podstawowe pojęcia: plik fizyczny, zbiór informacji w pamięci zewnętrznej wykorzystywany do trwałego przechowywania danych lub jako przedłużenie pamięci operacyjnej w przypadku przetwarzania
Bardziej szczegółowoSYSTEMY OPERACYJNE WYKLAD 6 - procesy
Wrocław 2007 SYSTEMY OPERACYJNE WYKLAD 6 - procesy Paweł Skrobanek C-3, pok. 323 e-mail: pawel.skrobanek@pwr.wroc.pl www.equus.wroc.pl/studia.html 1 Zasoby: PROCES wykonujący się program ; instancja programu
Bardziej szczegółowoWykład 5. Synchronizacja (część II) Wojciech Kwedlo, Wykład z Systemów Operacyjnych -1- Wydział Informatyki PB
Wykład 5 Synchronizacja (część II) Wojciech Kwedlo, Wykład z Systemów Operacyjnych -1- Wydział Informatyki PB Wady semaforów Jeden z pierwszych mechanizmów synchronizacji Generalnie jest to mechanizm bardzo
Bardziej szczegółowoArchitektura komputerów II - opis przedmiotu
Architektura komputerów II - opis przedmiotu Informacje ogólne Nazwa przedmiotu Architektura komputerów II Kod przedmiotu 11.3-WI-INFP-AK-II Wydział Kierunek Wydział Informatyki, Elektrotechniki i Automatyki
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ół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ółowoSemafory. - aktywne oczekiwanie =GRGDWNRZ\PZVSDUFLHPVSU]WRZ\P 6SHFMDOQDLQVWUXNFMDPDV]\QRZDUHDOL]XMFDDWRPRZ\]DSLVL odczyt, np.
Semafory 5R]ZL]DQLHSUREOHPXZ]DMHPQHJRZ\NOXF]DQLD %H]GRGDWNRZHJRZVSDUFLDVSU]WRZHJRLSURJUDPRZHJR =DNáDGDP\MHG\QLH*H]DSLVGRLRGF]\W]SDPLFLZVSyOQHMV RSHUDFMDPLDWRPRZ\PLF]\OLLVWQLHMHDUELWHUZVSyOQHMSDPLFL :UD]LHMHGQRF]HVQHJR]DSLVXLRGF]\WXUH]XOWDWHPEG]LH
Bardziej szczegółowoSieci komputerowe - opis przedmiotu
Sieci komputerowe - opis przedmiotu Informacje ogólne Nazwa przedmiotu Sieci komputerowe Kod przedmiotu 11.3-WK-IiED-SK-L-S14_pNadGenWRNH5 Wydział Kierunek Wydział Matematyki, Informatyki i Ekonometrii
Bardziej szczegółowoElżbieta Kula - wprowadzenie do Turbo Pascala i algorytmiki
Elżbieta Kula - wprowadzenie do Turbo Pascala i algorytmiki Turbo Pascal jest językiem wysokiego poziomu, czyli nie jest rozumiany bezpośrednio dla komputera, ale jednocześnie jest wygodny dla programisty,
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ółowoSystemy operacyjne. Informatyka Stosowana, I rok. Krzysztof Wilk. Katedra Informatyki Stosowanej i Modelowania
Systemy operacyjne Informatyka Stosowana, I rok Krzysztof Wilk Katedra Informatyki Stosowanej i Modelowania wilk@metal.agh.edu.pl Konsultacje: poniedziałek, 11.30-13; B-4, pok. 207 Systemy operacyjne Wykłady:
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ółowoWSTĘP DO INFORMATYKI. SYLABUS A. Informacje ogólne
Elementy składowe sylabusu Nazwa jednostki prowadzącej kierunek Nazwa kierunku studiów Poziom kształcenia Profil studiów Forma studiów Kod przedmiotu Język przedmiotu WSTĘP DO INFORMATYKI. SYLABUS A. Informacje
Bardziej szczegółowoProtokoły sieciowe - TCP/IP
Protokoły sieciowe Protokoły sieciowe - TCP/IP TCP/IP TCP/IP (Transmission Control Protocol / Internet Protocol) działa na sprzęcie rożnych producentów może współpracować z rożnymi protokołami warstwy
Bardziej szczegółowoMateriały do laboratorium MS ACCESS BASIC
Materiały do laboratorium MS ACCESS BASIC Opracowała: Katarzyna Harężlak Access Basic jest językiem programowania wykorzystywanym w celu powiązania obiektów aplikacji w jeden spójny system. PROCEDURY I
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ółowoProgramowanie komputerów
Programowanie komputerów Wykład 1-2. Podstawowe pojęcia Plan wykładu Omówienie programu wykładów, laboratoriów oraz egzaminu Etapy rozwiązywania problemów dr Helena Dudycz Katedra Technologii Informacyjnych
Bardziej szczegółowo2013-04-25. Czujniki obiektowe Sterowniki przemysłowe
Ogólne informacje o systemach komputerowych stosowanych w sterowaniu ruchem funkcje, właściwości Sieci komputerowe w sterowaniu informacje ogólne, model TCP/IP, protokoły warstwy internetowej i transportowej
Bardziej szczegółowoProgramowanie strukturalne. Opis ogólny programu w Turbo Pascalu
Programowanie strukturalne Opis ogólny programu w Turbo Pascalu STRUKTURA PROGRAMU W TURBO PASCALU Program nazwa; } nagłówek programu uses nazwy modułów; } blok deklaracji modułów const } blok deklaracji
Bardziej szczegółowoAlgorytm. a programowanie -
Algorytm a programowanie - Program komputerowy: Program komputerowy można rozumieć jako: kod źródłowy - program komputerowy zapisany w pewnym języku programowania, zestaw poszczególnych instrukcji, plik
Bardziej szczegółowoPodstawy programowania.
Kod przedmiotu: PPR Podstawy programowania. Rodzaj przedmiotu: kierunkowy; obowiązkowy Wydział: Informatyki Kierunek: Informatyka Specjalność (specjalizacja): - Poziom studiów: pierwszego stopnia Profil
Bardziej szczegółowoUniwersytet w Białymstoku Wydział Ekonomiczno-Informatyczny w Wilnie SYLLABUS na rok akademicki 2009/2010
Tryb studiów Studia stacjonarne Kierunek studiów Informatyka Poziom studiów Pierwszego stopnia Rok studiów/semestr 2(rok)/(sem) Specjalność Bez specjalności Kod katedry/zakładu w systemie USOS 10000000
Bardziej szczegółowoProgramowanie współbieżne Wykład 2. Iwona Kochańska
Programowanie współbieżne Wykład 2 Iwona Kochańska Miary skalowalności algorytmu równoległego Przyspieszenie Stały rozmiar danych N T(1) - czas obliczeń dla najlepszego algorytmu sekwencyjnego T(p) - czas
Bardziej szczegółowoWstęp do programowania. Różne różności
Wstęp do programowania Różne różności Typy danych Typ danych określa dwie rzeczy: Jak wartości danego typu są określane w pamięci Jakie operacje są dozwolone na obiektach danego typu 2 Rodzaje typów Proste
Bardziej szczegółowoSynchronizacja procesów
Synchronizacja procesów Problem sekcji krytycznej. Sprzętowe środki synchronizacji. Semafory. Klasyczne problemy synchronizacji. Monitory. Bariery. Przykłady synchronizacji procesów: Solaris, Windows XP/Vista/7/8/10,
Bardziej szczegółowoWstęp do programowania. Procedury i funkcje. Piotr Chrząstowski-Wachtel
Wstęp do programowania Procedury i funkcje Piotr Chrząstowski-Wachtel Po co procedury i funkcje? Gdyby jakis tyran zabronił korzystać z procedur lub funkcji, to informatyka by upadła! Procedury i funkcje
Bardziej szczegółowoRok akademicki: 2016/2017 Kod: IIN s Punkty ECTS: 5. Poziom studiów: Studia I stopnia Forma i tryb studiów: -
Nazwa modułu: Systemy operacyjne Rok akademicki: 2016/2017 Kod: IIN-1-403-s Punkty ECTS: 5 Wydział: Informatyki, Elektroniki i Telekomunikacji Kierunek: Informatyka Specjalność: - Poziom studiów: Studia
Bardziej szczegółowo