Projektowanie oprogramowania systemów PROCESY I ZARZĄDZANIE PROCESAMI
|
|
- Józef Chrzanowski
- 8 lat temu
- Przeglądów:
Transkrypt
1 Projektowanie oprogramowania systemów PROCESY I ZARZĄDZANIE PROCESAMI
2 plan Cechy, właściwości procesów Multitasking Scheduling Fork
3 czym jest proces? Działającą instancją programu Program jest kolekcją instrukcji, a proces aktualnym wykonaniem tych instrukcji Może być wiele instancji procesów dla tego samego programu, każda wykonująca inną ścieżkę kodu
4 zasoby procesu Każdy proces jest właścicielem określonych zasobów: Identyfikator procesu(process id, PID) Obraz maszynowego kodu wykonalnego (może być współdzielony z innymi instancjami programu, ale w przypadkach gdy obraz jest nadpisywalny, jest on kopiowany), zawarty wewnątrz Izolowanego obszaru pamięci wirtualnej (przestrzeń adresowa) Zasoby systemu operacyjnego (np. uchwyty/deskryptory plików, zegary, obiekty synchronizacji, dojścia urządzeń ) Atrybuty bezpieczeństwa (id właściciela procesu, zestaw uprawnień) Bieżący stan procesora (kontekst wykonania) zawartość rejestrów, mapowanie pamięci wirtualnej do adresów fizycznych
5 pamięć procesu Każdy proces działa wewnątrz przestrzeni adresowej izolowanej od innych procesów (AKA sandbox) Przestrzeń adresowa procesu zawiera specyficzne dla danego procesu struktury danych systemu operacyjnego stosy wywołań wszystkich wątków procesu stertę Stos jest fragmentem pamięci przechowującym informacje o aktywnych procedurach, specyficznych dla każdego wątku Sterta ( pamięć wolna ) jest regionem pamięci dzielonym pomiędzy wątkami i używanym dla potrzeb dynamicznej alokacji pamięci
6 wielowątkowość Nowoczesne systemy operacyjne wspierają pojęcie wielowątkowości - wielu jednoczesnych ścieżek wykonania w ramach jednego procesu Wątki współdzielą zasoby procesu-rodzica (pamięć, deskryptory/uchwyty), ale każdy wątek posiada własny stos wywołań (i czasami również atrybuty bezpieczeństwa) Ponieważ wątki dzielą wspólną przestrzeń adresową, mogą z łatwością komunikować się między sobą za pomocą "zwykłych" konstrukcji języka programowania Procesy z drugiej strony są na ogół izolowane, więc wymagają pewnych specjalnych zabiegów do komunikacji: interprocess communication (IPC)
7 wiele wątków vs wiele procesów Wątki Wątki są uważane za lekkie procesy ilość informacji niezbędna do przetworzenia podczas tworzenia wątku wewnątrz istniejącego procesu jest dużo mniejsza niż podczas tworzenia nowego procesu Ponieważ operują na tych samych, współdzielonych danych, są generalnie tańsze pod względem zasobów systemowych niż procesy Komunikacja międzywątkowa jest łatwiejsza niż międzyprocesowa Procesy Wadliwy wątek może wywalić cały proces, zewnętrzny proces generalnie nie jest w stanie uszkodzić innego Istnieją techniki współdzielenia regionu pamięci pomiędzy procesami, co ułatwia wymianę danych (ale nie jest równie naturalne jak z wątkami) Istnieją techniki umożliwiające tworzenie nowych procesów równie tanio jak wątki (fork, copyon-write)
8 wielozadaniowość (multitasking) Większość współczesnych systemów operacyjnych sprawia wrażenie że uruchamia wiele procesów (zadań) równocześnie, nawet na jednordzeniowym (jednowątkowym) procesorze Odbywa się to poprzez podział czasu każde zadanie otrzymuje mały przedział czasu procesora, po czym zostaje wywłaszczone i następuje przełączenie kontekstu do innego zadania Szybkie przełączenia kontekstu i niewielkie sloty czasowe zadań powodują, że zadania zdają się działać równolegle Dokładny sposób przełączania zadań zależy od modelu wielowątkowości
9 modele wielowątkowości Multiprogramming Przestarzały, nie używany już Program jest wykonywany tak długo, jak długo nie wymaga dostępu do urządzeń I/O Podczas dostępu do I/O aktywny program jest przełączany na ten, który ma już przygotowane dane wielozadaniowość bez wywłaszczania (cooperative) Program ochotniczo oddaje kontrolę nad CPU po wykonaniu części zadania Wadliwie zaprojektowane programy mogą zająć cały czas procesora dla siebie, OS nie ma możliwości przerwać ich wykonanie 16-bitowy Windows, Mac OS przed X wielozadaniowość z wywłaszczaniem (preemptive) OS (scheduler) wywłaszcza (przerywa) wykonanie zadań aby zagwarantować sprawiedliwy dostęp do slotów czasowych, za pomocą przerwań sprzętowych Przydział slotów czasowych zależy od priorytetów zadań i polityki szeregowania
10 szeregowanie zadań (task scheduling) Każde zadanie (proces i wątek) ma określony priorytet Zadania o wyższym priorytecie generalnie mają możliwość uzyskać większy przydział czasu niż te o niższym Priorytet procesu można ustawić programowo, z wewnątrz lub z zewnątrz Podnoszenie priorytetu powyżej określonego pułapu zwykle wymaga podwyższonych uprawnień Intensywne zadania o wysokim priorytecie mogą zagłodzić inne zadania ostrożnie! ;)
11 ustawianie priorytetu zadań Windows Unix/POSIX patrz man 7 sched ;)
12 scheduler (algorytm szeregowania zadań) Część jądra systemu operacyjnego Algorytm, który decyduje które zadanie zostanie uruchomionę w oparciu o priorytety, historię wykonania, stan wejścia/wyjścia i wiele innych czynników Scheduler może być optymalizowany pod kątem Maks. przepływności Min. opóźnień Sprawiedliwości Gwarancji wykonania w określonym czasie (systemy realtime)
13 tworzenie nowego procesu Windows Linux/Unix/POSIX patrz man 3 exec ;) Właściwie, exec() zastępuje aktualny proces (jego przestrzeń adresową innym), więc Będzie najpierw potrzebny fork()
14 fork Wywłanie systemowe fork() jest unikatową cechą systemów Unix/POSIX patrz man 2 fork ;) fork() tworzy nowy proces poprzez skopiowanie procesu wywołującego Proces potomny jest identyczny z rodzicem, włączając w to używane (otwarte) zasoby systemowe, których dojścia są dziedziczone Dziedziczenie zasobów i zawartości pamięci sprawia, że komunikacja IPC pomiędzy rodzicem i procesem potomnym jest wyjątkowo prosta, co historycznie było powodem dla którego systemy Unix nie obsługiwały wielowątkowości, tylko używały forków do zapewnienia współbieżności programów Właśnie dlatego logiem BSD Unixa jest trzymający trójząb diabeł ;)
15 implementacja fork wywołanie systemowe fork() jest zaimplementowane za pomocą bardzo wydajnej techniki copy-on-write Proces potomny początkowo używa dokładnie tych samych stron pamięci co rodzić (nie są one kopiowane), ale są one dla niego zabezpieczane przed zapisem Próba zapisu do takiej strony pamięci powoduje page fault (rodzaj przerwania sprzętowego), które jest przechwytywane przez OS i dopiero wtedy, w sposób niewidoczny dla procesu strona jest kopiowana i zastępowana zapisywalną dla nowego procesu To sprawia, że fork() jest wyjątkowo tani w odniesieniu do zasobów systemowych (i szybki!)
16 jak to działa?
17 IPC po forku Proces rodzic i potomny współdzielą dostęp do deskryptorów plików, które były otwarte przed forkiem Można więc utworzyć potok (pipe parę połączonych gniazd Unix-owych) przed forkiem, a następnie użyć tego potoku, aby połączyć obydwa sforkowane procesy Dzięki temu IPC na Uniksie jest bardzo proste wystarczy przesyłać polecenia i/lub dane za pomocą potoku
Systemy operacyjne III
Systemy operacyjne III WYKŁAD 2 Jan Kazimirski 1 Procesy w systemie operacyjnym 2 Proces Współczesne SO w większości są systemami wielozadaniowymi. W tym samym czasie SO obsługuje pewną liczbę zadań procesów
Bardziej szczegółowo1.1 Definicja procesu
1 Procesy pojęcia podstawowe 1 1.1 Definicja procesu 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ół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ółowoJądro systemu operacyjnego
Jądro systemu operacyjnego Jądro (ang. kernel) jest to podstawowa część systemu operacyjnego, która jest odpowiedzialna za wszystkie jego zadania. Zapewnia ono usługi systemowe takie jak: komunikacja między
Bardziej szczegółowoSYSTEMY OPERACYJNE WYKLAD 6 - wątki
Wrocław 2007 SYSTEMY OPERACYJNE WYKLAD 6 - wątki Paweł Skrobanek C-3, pok. 323 e-mail: pawel.skrobanek@pwr.wroc.pl www.equus.wroc.pl/studia.html 1 PLAN: 1. Wątki 2. Planowanie przydziału procesora (szeregowanie
Bardziej szczegółowoprojektowanie systemu
projektowanie systemu cel użytkownika: system operacyjny powinien być wygodny, łatwy w użyciu, prosty do nauczenia, niezawodny, bezpieczny i szybki cel producenta: system operacyjny powinien być łatwy
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 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ół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ółowoKomputery przemysłowe i systemy wbudowane
Komputery przemysłowe i systemy wbudowane Systemy operacyjne w systemach wbudowanych 2 KSEM WETI PG October 7, 2015 System operacyjny System operacyjny (OS) - opcjonalny w systemach wbudowanych. zbiór
Bardziej szczegółowoPodstawy informatyki. System operacyjny. dr inż. Adam Klimowicz
Podstawy informatyki System operacyjny dr inż. Adam Klimowicz System operacyjny OS (ang. Operating System) Program komputerowy bądź zbiór programów, który zarządza udostępnianiem zasobów komputera aplikacjom.
Bardziej szczegółowoZarządzanie procesami i wątkami
SOE - Systemy Operacyjne Wykład 4 Zarządzanie procesami i wątkami dr inŝ. Andrzej Wielgus Instytut Mikroelektroniki i Optoelektroniki WEiTI PW Pojęcie procesu (1) Program zbiór instrukcji dla procesora
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: STRUKTURY I FUNKCJE (opracowano na podstawie skryptu PP: Królikowski Z., Sajkowski M. 1992: Użytkowanie systemu operacyjnego UNIX)
(opracowano na podstawie skryptu PP: Królikowski Z., Sajkowski M. 1992: Użytkowanie systemu operacyjnego UNIX) W informatyce występują ściśle obok siebie dwa pojęcia: sprzęt (ang. hardware) i oprogramowanie
Bardziej szczegółowoPodstawowe zagadnienia
SWB - Systemy operacyjne w systemach wbudowanych - wykład 14 asz 1 Podstawowe zagadnienia System operacyjny System czasu rzeczywistego Systemy wbudowane a system operacyjny Przykłady systemów operacyjnych
Bardziej szczegółowoInstrukcja do laboratorium Systemów Operacyjnych. (semestr drugi)
Instrukcja do laboratorium Systemów Operacyjnych (semestr drugi) Ćwiczenie drugie (jedne zajęcia) Temat: Procesy i sygnały w Linuksie. Opracowanie: mgr in ż. Arkadiusz Chrobot Wprowadzenie 1. Budowa procesu
Bardziej szczegółowoPrezentacja systemu RTLinux
Prezentacja systemu RTLinux Podstawowe założenia RTLinux jest system o twardych ograniczeniach czasowych (hard real-time). Inspiracją dla twórców RTLinux a była architektura systemu MERT. W zamierzeniach
Bardziej szczegółowoJadro monolityczne vs. mikrojadro. Mikrojadro. Olga Kowalczuk. 9 grudnia 2008
Jadro monolityczne vs. mikrojadro 9 grudnia 2008 Jadro monolityczne vs. mikrojadro Jadro monolityczne vs. mikrojadro Jadro monolityczne vs. mikrojadro Jadro monolityczne Aplikacje użytownika wywołania
Bardziej szczegółowoSieciowe Systemy Operacyjne
1 Sieciowe Systemy Operacyjne 1. Etapy rozwoju systemów komputerowych System scentralizowany System sieciowy System rozproszony 1.1 System scentralizowany Zastosowane duże komputery (mainframes ) Użytkownicy
Bardziej szczegółowoSystemy operacyjne. Paweł Pełczyński
Systemy operacyjne Paweł Pełczyński ppelczynski@swspiz.pl 1 Program przedmiotu Wprowadzenie Struktura systemów operacyjnych Procesy i Wątki Komunikacja międzyprocesowa Szeregowanie procesów Zarządzanie
Bardziej szczegółowoProcesy, wątki i zasoby
Procesy, wątki i zasoby Koncepcja procesu i zasobu, Obsługa procesów i zasobów, Cykl zmian stanów procesu i kolejkowanie, Klasyfikacja zasobów, Wątki, Procesy i wątki we współczesnych systemach operacyjnych.
Bardziej szczegółowoSystem komputerowy. System komputerowy
System komputerowy System komputerowy System komputerowy układ współdziałających ze sobą (według pewnych zasad) dwóch składowych: sprzętu komputerowego (hardware) oraz oprogramowania (software) po to,
Bardziej szczegółowoZarządzanie pamięcią operacyjną
SOE Systemy Operacyjne Wykład 7 Zarządzanie pamięcią operacyjną dr inż. Andrzej Wielgus Instytut Mikroelektroniki i Optoelektroniki WEiTI PW Hierarchia pamięci czas dostępu Rejestry Pamięć podręczna koszt
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ółowoWprowadzenie do systemów operacyjnych
SOE - Systemy Operacyjne Wykład 1 Wprowadzenie do systemów operacyjnych dr inż. Andrzej Wielgus Instytut Mikroelektroniki i Optoelektroniki WEiTI PW System komputerowy Podstawowe pojęcia System operacyjny
Bardziej szczegółowoSystem operacyjny MACH
Emulacja w systemie MCH System operacyjny MCH 4. SD Systemu V HP/UX MS-DOS VMS inne Mikrojądro Zbigniew Suski Zbigniew Suski Podstawowe cele projektu MCH! Dostarczenie podstawy do budowy innych systemów
Bardziej szczegółowoDziałanie systemu operacyjnego
Budowa systemu komputerowego Działanie systemu operacyjnego Jednostka centralna dysku Szyna systemowa (magistrala danych) drukarki pamięci operacyjnej I NIC sieci Pamięć operacyjna Przerwania Przerwania
Bardziej szczegółowoU M L. System operacyjny Linux zagnieżdżony w zewnętrznym systemie operacyjnym (Linux)
http://user-mode-linux.sourceforge.net/ System operacyjny Linux zagnieżdżony w zewnętrznym systemie operacyjnym (Linux) Autor: Jeff Dike Koncepcja powstała w 1999 r. Początkowo jako patch do jądra 2.0
Bardziej szczegółowoWykład 3. Procesy i wątki. Wojciech Kwedlo, Wykład z Systemów Operacyjnych -1- Wydział Informatyki PB
Wykład 3 Procesy i wątki Wojciech Kwedlo, Wykład z Systemów Operacyjnych -1- Wydział Informatyki PB Pojęcie procesu Program = plik wykonywalny na dysku Proces = uruchomiony i wykonywany program w pamięci
Bardziej szczegółowoDziałanie systemu operacyjnego
Działanie systemu operacyjnego Budowa systemu komputerowego I NIC Jednostka centralna Sterownik dysku Sterownik drukarki Sterownik sieci Szyna systemowa (magistrala danych) Sterownik pamięci operacyjnej
Bardziej szczegółowoProcesy pojęcia podstawowe. 1.1 Jak kod źródłowy przekształca się w proces
Procesy pojęcia podstawowe 1 1.1 Jak kod źródłowy przekształca się w proces W języku wysokiego poziomu tworzy się tak zwany kod źródłowy który po zapisaniu będzie plikiem z programem źródłowym. Plik źródłowy
Bardziej szczegółowoStruktury systemów operacyjnych
Struktury systemów operacyjnych Jan Tuziemski Część slajdów to zmodyfiowane slajdy ze strony os-booi.com copyright Silberschatz, Galvin and Gagne, 2013 Cele wykładu 1. Opis usług dostarczanych przez OS
Bardziej szczegółowoMariusz Rudnicki PROGRAMOWANIE SYSTEMÓW CZASU RZECZYWISTEGO CZ.1
Mariusz Rudnicki mariusz.rudnicki@eti.pg.gda.pl PROGRAMOWANIE SYSTEMÓW CZASU RZECZYWISTEGO CZ.1 Przedmiot PSCR Przedmiot PSCR Wykład do połowy semestru Laboratorium od połowy semestru Projekt Zaliczenie
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ółowoDziałanie systemu operacyjnego
Działanie systemu operacyjnego Budowa systemu komputerowego Jednostka centralna Sterownik dysku Sterownik drukarki Sterownik sieci Szyna systemowa (magistrala danych) Sterownik pamięci operacyjnej Pamięć
Bardziej szczegółowo3 Literatura. c Dr inż. Ignacy Pardyka (Inf.UJK) ASK SP.06 Rok akad. 2011/2012 2 / 22
ARCHITEKTURA SYSTEMÓW KOMPUTEROWYCH struktury procesorów ASK SP.06 c Dr inż. Ignacy Pardyka UNIWERSYTET JANA KOCHANOWSKIEGO w Kielcach Rok akad. 2011/2012 1 Maszyny wirtualne 2 3 Literatura c Dr inż. Ignacy
Bardziej szczegółowoInformatyka, systemy, sieci komputerowe
Informatyka, systemy, sieci komputerowe Systemy operacyjne wykład 2 Procesy i wątki issk 1 SO koncepcja procesu i zasobu Proces jest elementarną jednostką pracy zarządzaną przez system operacyjny, wykonującym
Bardziej szczegółowoWielozadaniowość w systemie Microsoft Windows
Wielozadaniowość w systemie Microsoft Windows mgr inż. Tomasz Jaworski tjaworski@kis.p.lodz.pl http://tjaworski.kis.p.lodz.pl/ Idea wielozadaniowości Proces główny Wątki Algorytm szeregowania ustala kolejność
Bardziej szczegółowoSystemy czasu rzeczywistego. Systemy czasu rzeczywistego. Systemy czasu rzeczywistego. Systemy czasu rzeczywistego - przykłady
Systemy czasu rzeczywistego Definicja IEEE: System czasu rzeczywistego (real time) to system, którego poprawność działania zależy nie tylko od poprawności logicznych rezultatów, lecz również od czasu,
Bardziej szczegółowoSystemy operacyjne Procesy i wątki
Systemy operacyjne Procesy i wątki [2] Proces w systemie operacyjnym Procesem nazywamy wykonujący się program wraz z jego środowiskiem obliczeniowym. Proces stanowi podstawowy obiekt dynamiczny w systemie
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ółowoCelem wykładu jest wprowadzenie fundamentalnych pojęć, integralnie związanych z systemem operacyjnym, na których opiera się przetwarzanie we
Celem wykładu jest wprowadzenie fundamentalnych pojęć, integralnie związanych z systemem operacyjnym, na których opiera się przetwarzanie we współczesnych systemach komputerowych pojęcia procesu i pojęcia
Bardziej szczegółowoBudowa systemów komputerowych
Budowa systemów komputerowych Krzysztof Patan Instytut Sterowania i Systemów Informatycznych Uniwersytet Zielonogórski k.patan@issi.uz.zgora.pl Współczesny system komputerowy System komputerowy składa
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ółowoDziałanie systemu operacyjnego
Budowa systemu komputerowego Działanie systemu operacyjnego Jednostka centralna dysku Szyna systemowa (magistrala danych) drukarki pamięci operacyjnej sieci Pamięć operacyjna Przerwania Przerwania Przerwanie
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ół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ół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ółowoProcesor budowa, schemat, tryby pracy
1 Procesor budowa, schemat, tryby pracy Procesor (ang. processor), także CPU (ang. Central Processing Unit) to główny element komputera, urządzenie cyfrowe sekwencyjne, którego zadaniem jest wykonywanie
Bardziej szczegółowoMogą pracować w środowisku: Scentralizowanym -mikrokontroler Rozproszonym sieć sterująca, systemy hierarchiczne. Komunikacja z syst.
J. Ułasiewicz Programowanie aplikacji współbieżnych 1 1 Podstawowe definicje i pojęcia współbieżności Współczesne aplikacje sterowania i akwizycji danych są zbiorem komunikujących się wątków lub procesów
Bardziej szczegółowoWspółczesne aplikacje sterowania i akwizycji danych są zbiorem komunikujących się wątków lub procesów współbieżnych.
J. Ułasiewicz Programowanie aplikacji współbieżnych 1 1 Podstawowe definicje i pojęcia współbieżności Współczesne aplikacje sterowania i akwizycji danych są zbiorem komunikujących się wątków lub procesów
Bardziej szczegółowoWieloprogramowanie. Systemy operacyjne / Procesy i wątki str.4/32. Proces w systemie operacyjnym. Tworzenie i kończenie procesów
Wieloprogramowanie Systemy Operacyjne Procesy i wątki dr inż. Tomasz Jordan Kruk T.Kruk@ia.pw.edu.pl Instytut utomatyki i Informatyki Stosowanej Politechnika Warszawska One program counter B C D switch
Bardziej szczegółowoPlanowanie przydziału procesora
Planowanie przydziału procesora Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak Plan wykładu Komponenty jądra związane z szeregowaniem Ogólna koncepcja planowania Kryteria oceny uszeregowania Algorytmy
Bardziej szczegółowo2.1 Pojęcie wątku... 13 2.2 Modele wielowątkowości... 15 2.3 Wybrane zagadnienia wielowątkowości... 16 2.4 Wątki POSIX... 18
Spis treści Spis treści 1 Procesy 1 1.1 Definicja procesu............................................. 1 1.2 Operacje na procesach.......................................... 3 1.3 Planowanie procesów...........................................
Bardziej szczegółowoWYKŁAD 3 Jądro systemu i procesy. Marcin Tomana Wyższa Szkoła Informatyki i Zarządzania
SYSTEMY OPERACYJNE WYKŁAD 3 Jądro systemu i procesy Marcin Tomana Wyższa Szkoła Informatyki i Zarządzania Program wykładu 2 Jądro systemu Możliwości procesorów Działanie procesów i wątków Zarządzanie procesami
Bardziej szczegółowoSystemy czasu rzeczywistego. Systemy czasu rzeczywistego. Systemy czasu rzeczywistego. Systemy czasu rzeczywistego - przykłady
Systemy czasu rzeczywistego Definicja IEEE: System czasu rzeczywistego (real time) to system, którego poprawność działania zależy nie tylko od poprawności logicznych rezultatów, lecz również od czasu,
Bardziej szczegółowoLEKCJA TEMAT: Zasada działania komputera.
LEKCJA TEMAT: Zasada działania komputera. 1. Ogólna budowa komputera Rys. Ogólna budowa komputera. 2. Komputer składa się z czterech głównych składników: procesor (jednostka centralna, CPU) steruje działaniem
Bardziej szczegółowoKsięgarnia PWN: Włodzimierz Stanisławski, Damian Raczyński - Programowanie systemowe mikroprocesorów rodziny x86
Księgarnia PWN: Włodzimierz Stanisławski, Damian Raczyński - Programowanie systemowe mikroprocesorów rodziny x86 Spis treści Wprowadzenie... 11 1. Architektura procesorów rodziny x86... 17 1.1. Model procesorów
Bardziej szczegółowoPlanowanie przydziału procesora
Dariusz Wawrzyniak Plan wykładu Komponenty jądra związane z szeregowaniem Ogólna koncepcja planowania Kryteria oceny algorytmów planowania Algorytmy planowania (2) 1 Komponenty jądra w planowaniu Planista
Bardziej szczegółowoSystemy operacyjne oparte na mikrojądrze na przykładzie Minix3. Maciej Łaszcz, Wojciech Łowiec, Patryk Spanily 2 XII 2008
Systemy operacyjne oparte na mikrojądrze na przykładzie Minix3. Maciej Łaszcz, Wojciech Łowiec, Patryk Spanily 2 XII 2008 Systemy oparte na mikrojądrze Jądro systemu jest bardzo małe Architektura mocno
Bardziej szczegółowo1. Etapy rozwoju systemów komputerowych
1 Sieciowe Systemy Operacyjne Wprowadzenie do wykładu, podstawowe definicje, rola 1 systemu operacyjnego Procesy POSIX, zarządzanie procesami 2 Pliki, komunikacja przez pliki, blokowanie 1 Łącza nazwane
Bardziej szczegółowoSystemy operacyjne. Systemy operacyjne. Systemy operacyjne. Zadania systemu operacyjnego. Abstrakcyjne składniki systemu. System komputerowy
Systemy operacyjne Systemy operacyjne Dr inż. Ignacy Pardyka Literatura Siberschatz A. i inn. Podstawy systemów operacyjnych, WNT, Warszawa Skorupski A. Podstawy budowy i działania komputerów, WKiŁ, Warszawa
Bardziej szczegółowoSystemy wbudowane. Systemy operacyjne czasu rzeczywistego
Systemy wbudowane Systemy operacyjne czasu rzeczywistego Definicje System czasu rzeczywistego to taki, w którym wynik przetwarzania nie zależy tylko i wyłącznie od jego logicznej poprawności, ale również
Bardziej szczegółowoModel procesu w systemie Linux. Tomasz Borzyszkowski
Model procesu w systemie Linux Tomasz Borzyszkowski Definicja procesu klasyka Definicja [M.Bach WNT95] Proces jest wykonaniem programu i składa się ze zbiorowości bajtów, które CPU interpretuje jako instrukcje
Bardziej szczegółowo2009-03-21. Paweł Skrobanek. C-3, pok. 321 e-mail: pawel.skrobanek@pwr.wroc.pl pawel.skrobanek.staff.iiar.pwr.wroc.pl
Wrocław 2007-09 SYSTEMY OPERACYJNE WPROWADZENIE Paweł Skrobanek C-3, pok. 321 e-mail: pawel.skrobanek@pwr.wroc.pl pawel.skrobanek.staff.iiar.pwr.wroc.pl 1 PLAN: 1. Komputer (przypomnienie) 2. System operacyjny
Bardziej szczegółowoPOSIX ang. Portable Operating System Interface for Unix
POSIX ang. Portable Operating System Interface for Unix POSIX: próba standaryzacji różnych dystrybucji systemu operacyjnego UNIX, Początek prac 1985 r. pod auspicjami IEEE. POSIX IEEE 1003, Obecnie rozwojem
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ółowoProcesy, zasoby i wątki
Dariusz Wawrzyniak Koncepcja procesu i zasobu Obsługa procesów i zasobów Cykl zmian stanów procesu i kolejkowanie Klasyfikacja zasobów Wątki Procesy i wątki we współczesnych systemach operacyjnych Plan
Bardziej szczegółowoProcesy, zasoby i wątki
Procesy, zasoby i wątki Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak Plan wykładu Koncepcja procesu i zasobu Obsługa procesów i zasobów Cykl zmian stanów procesu i kolejkowanie Klasyfikacja zasobów
Bardziej szczegółowoProcesy, zasoby i wątki
Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak Plan wykładu Koncepcja procesu i zasobu Obsługa procesów i zasobów Cykl zmian stanów procesu i kolejkowanie Klasyfikacja zasobów Wątki Procesy i wątki
Bardziej szczegółowoMariusz Rudnicki PROGRAMOWANIE SYSTEMÓW CZASU RZECZYWISTEGO CZ.3
Mariusz Rudnicki mariusz.rudnicki@eti.pg.gda.pl PROGRAMOWANIE SYSTEMÓW CZASU RZECZYWISTEGO CZ.3 Szeregowanie Omawiane zagadnienia Czym jest szeregowanie? W jakim celu stosuje się mechanizmy szeregowania?
Bardziej szczegółowoWprowadzenie do systemu Minix
Opis powstał na podstawie pracy dyplomowej Adama Pogorzelskiego Opracowanie laboratoryjnej wersji systemu Minix 2.0 wykonanej w 1998 roku w IAiIS PW. 1. Wprowadzenie System operacyjny (SO) to program lub
Bardziej szczegółowoSystemy Czasu Rzeczywistego (SCR)
Systemy Czasu Rzeczywistego (SCR) Wykład 12: Elementy systemów operacyjnych czasu rzeczywistego (1/2) SKiTI2017 WYDZIAŁ ELEKTROTECHNIKI I AUTOMATYKI KATEDRA INŻYNIERII SYSTEMÓW STEROWANIA Kierunek: Automatyka
Bardziej szczegółowoSystemy Operacyjne. wykład 1. Adam Kolany. Październik, Instytut Techniczny Państwowa Wyższa Szkoła Zawodowa w Nowym Sączu
Systemy Operacyjne wykład 1. Adam Kolany Instytut Techniczny Państwowa Wyższa Szkoła Zawodowa w Nowym Sączu dr.a.kolany@wp.pl Październik, 2007 Literatura DrAK (PWSZ) Systemy Operacyjne 11 Październik,
Bardziej szczegółowoSystemy Operacyjne 1 Laboratorium 2 Procesy i sygnały w Linuksie (jeden tydzień) dr inż. Arkadiusz Chrobot
Systemy Operacyjne 1 Laboratorium 2 Procesy i sygnały w Linuksie (jeden tydzień) dr inż. Arkadiusz Chrobot października 2018 Wstęp W tej instrukcji zawarte są informacje na temat tworzenia i obsługiwania
Bardziej szczegółowoPlanowanie przydziału procesora
Planowanie przydziału procesora Ogólna koncepcja planowania Tryb decyzji określa moment czasu, w którym oceniane i porównywane są priorytety procesów i dokonywany jest wybór procesu do wykonania. Funkcja
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ół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ół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ółowoOgólna koncepcja planowania. Planowanie przydziału procesora. Komponenty jądra w planowaniu. Tryb decyzji. Podejmowanie decyzji o wywłaszczeniu
Planowanie przydziału procesora Ogólna koncepcja planowania Tryb decyzji określa moment czasu, w którym oceniane i porównywane są priorytety procesów i dokonywany jest wybór procesu do wykonania. Funkcja
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ółowoIdyllaOS. Prosty, alternatywny system operacyjny. www.idyllaos.org. Autor: Grzegorz Gliński. Kontakt: milyges@gmail.com
IdyllaOS www.idyllaos.org Prosty, alternatywny system operacyjny Autor: Grzegorz Gliński Kontakt: milyges@gmail.com Co to jest IdyllaOS? IdyllaOS jest to mały, prosty, uniksopodobny, wielozadaniowy oraz
Bardziej szczegółowoREAL-TIME LINUX. ZGODNOŚĆ Z POSIX ( PSE51 (minimal realtime system profile)
KRÓTKO O HISTORII RT-LINUX STAN PRAWNY - NIEFORTUNNY PATENT INNE ROZWIĄZANIA ZGODNOŚĆ Z POSIX (1003.13 PSE51 (minimal realtime system profile) KLUCZOWE ELEMENTY KONCEPCJI RTL WIRTUALNY SYSTEM PRZERWAŃ
Bardziej szczegółowoPrzykłady implementacji planowania przydziału procesora
Przykłady implementacji planowania przydziału procesora Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak Plan wykładu Tradycyjne szeregowanie w systemie UNIX Szeregowanie w systemie Linux z jądrem
Bardziej szczegółowoMariusz Rudnicki PROGRAMOWANIE WSPÓŁBIEŻNE I SYSTEMY CZASU RZECZYWISTEGO CZ.3
Mariusz Rudnicki mariusz.rudnicki@eti.pg.edu.pl PROGRAMOWANIE WSPÓŁBIEŻNE I SYSTEMY CZASU RZECZYWISTEGO CZ.3 Szeregowanie Omawiane zagadnienia Czym jest szeregowanie? W jakim celu stosuje się mechanizmy
Bardziej szczegółowoProgramowanie Niskopoziomowe
Programowanie Niskopoziomowe Wykład 3: Architektura procesorów x86 Dr inż. Marek Mika Państwowa Wyższa Szkoła Zawodowa im. Jana Amosa Komeńskiego W Lesznie Plan Pojęcia ogólne Budowa mikrokomputera Cykl
Bardziej szczegółowoZarządzanie procesami (omawiane zagadnienia)
Zarządzanie procesami (omawiane zagadnienia) Pojęcie procesu Stany procesu Blok kontrolny procesu Tworzenie procesu Sygnały Kończenie wykonania procesu Działanie interpretatora poleceń (shell-a) Koncepcja
Bardziej szczegółowoProgram jest więc strukturą statyczną zapisaną na jakimś nośniku. Natomiast proces jest wykonującym się programem.
J. Ułasiewicz Programowanie aplikacji współbieżnych 1 1 Podstawowe definicje i pojęcia współbieżności 1.1 Motywacja Przewiduje się że w dalszej perspektywie głównym motorem wzrostu mocy przetwarzania komputerów
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ółowo41. System operacyjny. Postrzeganie systemu operacyjnego przez warstwę oprogramowania użytkowego
41. System operacyjny. Postrzeganie systemu operacyjnego przez warstwę oprogramowania użytkowego Pierwsze komputery, budowane według zasad określonych przez Johna von Neumanna, nie były kompatybilne dla
Bardziej szczegółowoprzydziału procesora Przykłady implementacji planowania przydziału procesora Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak
Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak Plan wykładu Tradycyjne szeregowanie w systemie UNIX Szeregowanie w systemie Linux z jądrem 2.6 Szeregowanie w systemie Windows 2000/XP (2) Szeregowanie
Bardziej szczegółowoSYSTEMY OPERACYJNE PROCESORÓW SYGNAŁOWYCH
Zastosowania procesorów sygnałowych SYSTEMY OPERACYJNE PROCESORÓW SYGNAŁOWYCH Opracowanie: Grzegorz Szwoch Politechnika Gdańska, Katedra Systemów Multimedialnych Programowanie bez OS Proste programy na
Bardziej szczegółowoWykład 6. Planowanie (szeregowanie) procesów (ang. process scheduling) Wojciech Kwedlo, Wykład z Systemów Operacyjnych -1- Wydział Informatyki PB
Wykład 6 Planowanie (szeregowanie) procesów (ang. process scheduling) Wojciech Kwedlo, Wykład z Systemów Operacyjnych -1- Wydział Informatyki PB Rodzaje planowania Planowanie długoterminowe. Decyzja o
Bardziej szczegółowoL4Ka::Pistachio Mikrojądra mogą być wydajne
L4Ka::Pistachio Mikrojądra mogą być wydajne Marek Materzok Instytut Informatyki Uniwersytetu Wrocławskiego Spotkanie Koła Studentów Informatyki 8 grudnia 2005 Architektura monolityczna Jądro jednolitym
Bardziej szczegółowoSzeregowanie zadań w Linux Kernel 2.6. Daniel Górski Przemysław Jakubowski
Szeregowanie zadań w Linux Kernel 2.6 Daniel Górski Przemysław Jakubowski Plan prezentacji Szeregowanie procesów - Szeregowanie - Cele szeregowania - Scheduler 2.6 - Struktury danych używane w 2.6 - Multiprocesorowość
Bardziej szczegółowoSystemy operacyjne III
Systemy operacyjne III Jan Kazimirski 1 Opis zajęć Prezentacja budowy i zasad działania współczesnego systemu operacyjnego Prezentacja podstawowych elementów systemów operacyjnych i zasad ich implementacji
Bardziej szczegółowoJ. Ułasiewicz Programowanie aplikacji współbieżnych 1
J. Ułasiewicz Programowanie aplikacji współbieżnych 1 7. procesów W środowisku systemu pracuje zwykle więcej procesów gotowych do wykonania niż dostępnych jest procesorów. Stąd istnieje potrzeba decydowania
Bardziej szczegółowoMikroinformatyka. Mechanizmy ochrony pamięci
Mikroinformatyka Mechanizmy ochrony pamięci Mechanizmy ochrony pamięci Ochrona na poziomie segmentów: - limit - typ segmentu - selektor zerowy - poziom uprzywilejowania Ochrona na poziomie stronicowania:
Bardziej szczegółowoWprowadzenie do systemów informacyjnych
Uwagi ogólne: Wprowadzenie do systemów informacyjnych Projektowanie obiektowe Obiektowość jest nową ideologią, która zmienia myślenie realizatorów SI z zorientowanego na maszynę na zorientowane na człowieka.
Bardziej szczegółowoDefinicja systemu operacyjnego (1) Definicja systemu operacyjnego (2) Miejsce systemu operacyjnego w architekturze systemu komputerowego
Systemy operacyjne wprowadzenie 1 Definicja systemu operacyjnego (1) Definicja systemu operacyjnego (2) System operacyjny jest zbiorem ręcznych i automatycznych procedur, które pozwalają grupie osób na
Bardziej szczegółowo