Linux: Procesy. Systemy Operacyjne. Mateusz Hołenko. 26 marca 2013

Podobne dokumenty
Systemy Operacyjne I: Procesy

Laboratorium systemów operacyjnych ćwiczenie nr 3. [ilość modułów: 1] Temat zajęć: Procesy w systemie operacyjnym

SYSTEMY OPERACYJNE I laboratorium 3 (Informatyka stacjonarne 2 rok, semestr zimowy)

Procesy. Systemy Operacyjne 2 laboratorium. Mateusz Hołenko. 9 października 2011

Laboratorium Procesy w systemach UNIX 3.2 Polecenia związane z procesami

Uruchamianie programów w systemie Linux, potoki, strumienie, procesy, alias

Instrukcja do laboratorium Systemów Operacyjnych. (semestr drugi)

Zarządzanie procesami

Moduł 4: Strumienie, potoki, sterowanie procesami

Poniższe funkcje opisane są w 2 i 3 części pomocy systemowej.

Podstawy użytkowania Linux a

W pierwszej kolumnie wyświetlany jest identyfikator procesu (pid)

4. Procesy pojęcia podstawowe

Utwórz na pulpicie katalog: pierwsza-litera-imienia_nazwisko (np. j_kowalski). W tym katalogu zapisz pliki, które będą tworzone w ramach ćwiczenia

Metody obsługi zdarzeń

SYSTEMY OPERACYJNE: STRUKTURY I FUNKCJE (opracowano na podstawie skryptu PP: Królikowski Z., Sajkowski M. 1992: Użytkowanie systemu operacyjnego UNIX)

Dogadać się z Linuxem. Zarządzanie

Działanie systemu operacyjnego

WYKŁAD 3 Jądro systemu i procesy. Marcin Tomana Wyższa Szkoła Informatyki i Zarządzania

1.1 Definicja procesu

Systemy Operacyjne 1 Laboratorium 2 Procesy i sygnały w Linuksie (jeden tydzień) dr inż. Arkadiusz Chrobot

Przerwania, polling, timery - wykład 9

Akademia Górniczo-Hutnicza im. St. Staszica. Unix/Linux 3. procesy, archiwa i inne Tomasz Bartuś

Sieci i systemy operacyjne I Ćwiczenie 1. Podstawowe polecenia systemu Unix

Działanie systemu operacyjnego

Działanie systemu operacyjnego

Działanie systemu operacyjnego

4. Procesy pojęcia podstawowe

Kolejki FIFO (łącza nazwane)

Uniwersytet w Białymstoku Wydział Ekonomiczno-Informatyczny w Wilnie SYLLABUS na rok akademicki 2009/2010

System operacyjny UNIX Ćwiczenie 1. Podstawowe polecenia systemu Unix

4. Procesy pojęcia podstawowe

Budowa systemów komputerowych

Podręcznik użytkownika

Pracownia internetowa w każdej szkole (edycja Jesień 2007)

Systemy operacyjne. Instrukcja laboratoryjna. Ćwiczenie 1: Polecenia systemu UNIX/LINUX. Opracował: dr inż. Piotr Szpryngier

Obsługa plików Procesy

Architektura systemów informatycznych WPROWADZENIE DO SYSTEMU LINUX

Powłoka I. Popularne implementacje. W stylu sh (powłoki zdefiniowanej w POSIX) W stylu csh. bash (najpopularniejsza) zsh ksh mksh.

Instrukcja instalacji aplikacji Comarch Smart Card ToolBox

Instrukcja instalacji aplikacji Comarch Smart Card ToolBox

Proces. Systemy Operacyjne I ćwiczenie laboratoryjne nr 5 (wersja ) Polecenia: kill, killall, nice, ps, pstree, renice, time, top

Procesy pojęcia podstawowe. 1.1 Jak kod źródłowy przekształca się w proces

1. Procesy i współbieżność

WPROWADZENIE. Warto pamiętać o opcji autouzupełniania, której używamy naciskając klawisz [Tab]

Konsola Linux. autor: Mariusz Barnaś

MODUŁ INTEGRUJĄCY ELEKTRONICZNEGO NADAWCĘ Z WF-MAG SPIS TREŚCI

Systemy operacyjne ćwiczenia 1 procesy, wątki, polecenia UNIXa.

Pośredniczy we współpracy pomiędzy procesorem a urządzeniem we/wy. W szczególności do jego zadań należy:

Procesy, wątki i zasoby

Procesy, zasoby i wątki

Procesy, zasoby i wątki

Procesy, zasoby i wątki

Instrukcja instalacji aplikacji Comarch Smart Card ToolBox dla urządzeń kryptograficznych.

Systemy operacyjne. Systemy operacyjne. Systemy operacyjne. Program wykładów. Strona WWW przedmiotu: Program ćwiczeń projektowych

Zarządzanie procesami (omawiane zagadnienia)

Plan. Raport. Tworzenie raportu z kreatora (1/3)

System operacyjny Linux

Ćwiczenie nr 14: System Linux

INSTRUKCJA INSTALACJI I URUCHOMIENIA PROGRAMÓW FINKA DOS W SYSTEMACH 64 bit

Administracja serwerami

Technologie Informacyjne - Linux 2

Księgarnia PWN: Emmett Dulaney - Novell Certified Linux Professional (NCLP)

9. Procesy, urządzenia i system plików w systemie Linux

Narzędzia informatyczne w językoznawstwie

PODRĘCZNIK UŻYTKOWNIKA SYSTEMU MaxeBiznes MODUŁ KANCELARIA-Elektroniczny obieg faktury

Systemy Operacyjne - Operacje na plikach

Systemy operacyjne. System operacyjny Linux - wstęp. Anna Wojak

IPC: Kolejki komunikatów

Instrukcja obsługi Platformy nszkoła. Panel Ucznia

SYSTEMY OPERACYJNE WYKLAD 6 - procesy

Aplikacja do zdawania egzaminów prawniczych v Instrukcja użytkownika

PRZERWANIA. P1 - Procedura obslugi przerwania. Obsługa zdarzenia Z1 poprzez procedurę obsługi przerwania P1

Programowanie w językach asemblera i C

SPIS TREŚCI: 1. INSTALACJA SYSTEMU SIMPLE.ERP LOGOWANIE DO SYSTEMU ZMIANA HASŁA PLANOWANIE INFORMACJE DODATKOWE...

Skrócona instrukcja obsługi programu Cisco ViewMail for Microsoft Outlook (wersja 8.5 i nowsze)

Komunikacja za pomocą potoków. Tomasz Borzyszkowski

Mazowiecki Elektroniczny Wniosek Aplikacyjny

Systemy operacyjne III

1 Zapoznanie się ze środowiskiem Xenomai.

Wypełnianie protokołów w USOSweb. Instrukcja dla osób prowadzących zajęcia dydaktyczne.

Laboratorium Systemów SCADA

Aplikacja do zdawania egzaminów prawniczych v Instrukcja użytkownika


Powłoka, redyrekcja, potok

Mikroprocesor Operacje wejścia / wyjścia

1. Opis. 2. Wymagania sprzętowe:

Po uruchomieniu programu nasza litera zostanie wyświetlona na ekranie

Linux cz.2: terminal, użytkownicy, grupy

Platforma e-learningowa UO strefa studenta

Skrypty BASH a. Systemy Operacyjne 2. Mateusz Hołenko. 4 października 2012

Temat zajęć: Filtry, strumienie standardowe oraz przetwarzanie potokowe. stderr

Kancelaris - Zmiany w wersji 2.70

Autoryzacja zleceń z użyciem aplikacji Java Web Start "Pocztowy24Podpis"

Systemy operacyjne i sieci komputerowe. 1 SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE. Etapy uruchamiania systemu

Laboratorium 0: System Linux, edytor vim i kompilator gcc. dr inż. Arkadiusz Chrobot dr inż. Grzegorz Łukawski

Programy LeftHand - Obsługa plików JPK. Wrzesień 2016

Spis treści. O autorze 9. O recenzentach 10. Przedmowa 13. Rozdział 1. Oto Linux Mint 17_

2. Informacje o mechanizmie limitów

Instrukcja do oprogramowania ENAP DEC-1

Transkrypt:

Linux: Procesy Systemy Operacyjne Mateusz Hołenko 26 marca 2013

Plan zajęć Co to jest sygnał? Polecenia systemowe Sygnały Zadania Mateusz Hołenko Linux: Procesy [2/18]

Co to jest proces?

Co to jest proces? Abstrakcja opisująca aplikację w trakcie wykonywania. Proces obejmuje sobą: kod aplikacji dane stos wykonania status wykonywania przydzielone zasoby uprawnienia Mateusz Hołenko Linux: Procesy [4/18]

Co to jest proces? Abstrakcja opisująca aplikację w trakcie wykonywania. Proces obejmuje sobą: kod aplikacji dane stos wykonania status wykonywania przydzielone zasoby uprawnienia Mateusz Hołenko Linux: Procesy [4/18]

Hierarchia procesów procesy tworzą hierarchię proces główny nazywa się init proces tworzący inne procesy staje się dla nich rodzicem procesy wykonują się w separacji od siebie i mogą kończyć się w dowolnej kolejności procesy sieroty (ang. orphan) - procesy, których proces macierzysty się zakończył ich procesem macierzystym staje się init procesy zombie - proces się zakończył, ale nie przekazał jeszcze swojego statusu zakończenia nie zajmuje procesora ani innych zasobów występuje w tablicy procesów Mateusz Hołenko Linux: Procesy [5/18]

Hierarchia procesów procesy tworzą hierarchię proces główny nazywa się init proces tworzący inne procesy staje się dla nich rodzicem procesy wykonują się w separacji od siebie i mogą kończyć się w dowolnej kolejności procesy sieroty (ang. orphan) - procesy, których proces macierzysty się zakończył ich procesem macierzystym staje się init procesy zombie - proces się zakończył, ale nie przekazał jeszcze swojego statusu zakończenia nie zajmuje procesora ani innych zasobów występuje w tablicy procesów Mateusz Hołenko Linux: Procesy [5/18]

Hierarchia procesów procesy tworzą hierarchię proces główny nazywa się init proces tworzący inne procesy staje się dla nich rodzicem procesy wykonują się w separacji od siebie i mogą kończyć się w dowolnej kolejności procesy sieroty (ang. orphan) - procesy, których proces macierzysty się zakończył ich procesem macierzystym staje się init procesy zombie - proces się zakończył, ale nie przekazał jeszcze swojego statusu zakończenia nie zajmuje procesora ani innych zasobów występuje w tablicy procesów Mateusz Hołenko Linux: Procesy [5/18]

Hierarchia procesów procesy tworzą hierarchię proces główny nazywa się init proces tworzący inne procesy staje się dla nich rodzicem procesy wykonują się w separacji od siebie i mogą kończyć się w dowolnej kolejności procesy sieroty (ang. orphan) - procesy, których proces macierzysty się zakończył ich procesem macierzystym staje się init procesy zombie - proces się zakończył, ale nie przekazał jeszcze swojego statusu zakończenia nie zajmuje procesora ani innych zasobów występuje w tablicy procesów Mateusz Hołenko Linux: Procesy [5/18]

Hierarchia procesów procesy tworzą hierarchię proces główny nazywa się init proces tworzący inne procesy staje się dla nich rodzicem procesy wykonują się w separacji od siebie i mogą kończyć się w dowolnej kolejności procesy sieroty (ang. orphan) - procesy, których proces macierzysty się zakończył ich procesem macierzystym staje się init procesy zombie - proces się zakończył, ale nie przekazał jeszcze swojego statusu zakończenia nie zajmuje procesora ani innych zasobów występuje w tablicy procesów Mateusz Hołenko Linux: Procesy [5/18]

Polecenia systemowe

Przeglądanie listy procesów Wyświetlanie listy procesów w systemie: houen@kashyyyk:~$ ps a wyświetl wszystkie procesy mające terminal x wyświetl wszystkie procesy bieżącego użytkownika u wyświetl w formie szczegółowej r wyświetl procesy uruchomione Mateusz Hołenko Linux: Procesy [7/18]

Przeglądanie listy procesów II Wyświetlanie zawartości katalogu w postaci drzewa w ascii art: houen@kashyyyk:~$ pstree Wyświetlanie listy procesów w postaci interaktywnej: houen@kashyyyk:~$ top Skróty klawiszowe: k wyślij sygnał do procesu u wyświetlaj procesy danego użytkownika h wyświetl pomoc f wybierz kolumny, sortuj H pokaż wątki Mateusz Hołenko Linux: Procesy [8/18]

Przeglądanie listy procesów II Wyświetlanie zawartości katalogu w postaci drzewa w ascii art: houen@kashyyyk:~$ pstree Wyświetlanie listy procesów w postaci interaktywnej: houen@kashyyyk:~$ top Skróty klawiszowe: k wyślij sygnał do procesu u wyświetlaj procesy danego użytkownika h wyświetl pomoc f wybierz kolumny, sortuj H pokaż wątki Mateusz Hołenko Linux: Procesy [8/18]

Przeglądanie listy procesów III Jeszcze lepsze przeglądanie listy procesów w postaci interaktywnej: houen@kashyyyk:~$ htop Klawiszologia: F1 pomoc Mateusz Hołenko Linux: Procesy [9/18]

Sygnały

Sygnały Sygnały są mechanizmem komunikacji między procesami udostępnianym przez jądro systemu Linux. Ze względu na swój specyficzny charakter określane są często mianem przerwań programowych. Stosuje się je do sygnalizowania wystąpienia sytuacji wyjątkowych. Obsługiwane są asynchronicznie. Sygnały generowane mogą być przez: jądro systemy operacyjnego inne procesy w systemie użytkownika systemu Mateusz Hołenko Linux: Procesy [11/18]

Sygnały Sygnały są mechanizmem komunikacji między procesami udostępnianym przez jądro systemu Linux. Ze względu na swój specyficzny charakter określane są często mianem przerwań programowych. Stosuje się je do sygnalizowania wystąpienia sytuacji wyjątkowych. Obsługiwane są asynchronicznie. Sygnały generowane mogą być przez: jądro systemy operacyjnego inne procesy w systemie użytkownika systemu Mateusz Hołenko Linux: Procesy [11/18]

O sygnałach Generowanie sygnału za pomocą klawiatury: houen@kashyyyk:~$ <CTRL-C> houen@kashyyyk:~$ <CTRL-D> houen@kashyyyk:~$ <CTRL-\> Praca samodzielna houen@kashyyyk:~$ kill -l houen@kashyyyk:~$ man 7 signal Mateusz Hołenko Linux: Procesy [12/18]

O sygnałach Generowanie sygnału za pomocą klawiatury: houen@kashyyyk:~$ <CTRL-C> houen@kashyyyk:~$ <CTRL-D> houen@kashyyyk:~$ <CTRL-\> Praca samodzielna houen@kashyyyk:~$ kill -l houen@kashyyyk:~$ man 7 signal Mateusz Hołenko Linux: Procesy [12/18]

Wysyłanie sygnałów Wysyłanie sygnałów do procesów: houen@kashyyyk:~$ kill 46387 houen@kashyyyk:~$ killall firefox -l wypisuje listę sygnałów -N wyślij sygnał o numerze N Domyślnie wysyłany jest sygnał TERM o numerze 15. Kombinacja klawiszy <CTRL-C> domyślnie wysyła ten sam sygnał do aktywnego działającego procesu. Sygnał ten może zostać zignorowany! Mateusz Hołenko Linux: Procesy [13/18]

Wysyłanie sygnałów Wysyłanie sygnałów do procesów: houen@kashyyyk:~$ kill 46387 houen@kashyyyk:~$ killall firefox -l wypisuje listę sygnałów -N wyślij sygnał o numerze N Domyślnie wysyłany jest sygnał TERM o numerze 15. Kombinacja klawiszy <CTRL-C> domyślnie wysyła ten sam sygnał do aktywnego działającego procesu. Sygnał ten może zostać zignorowany! Mateusz Hołenko Linux: Procesy [13/18]

Umilanie procesów Procesy można uruchomić z innym niż domyślnie priorytetem: houen@kashyyyk:~$ nice -n 13 vim Można też zmieniać priorytet dla działających procesów: houen@kashyyyk:~$ renice +1 34223 Zwiększanie priorytetu wymaga uprawnień administratora systemu! Zmniejszać priorytet może zaś każdy z użytkowników (oczywiście tylko w kontekście swoich procesów). Mateusz Hołenko Linux: Procesy [14/18]

Umilanie procesów Procesy można uruchomić z innym niż domyślnie priorytetem: houen@kashyyyk:~$ nice -n 13 vim Można też zmieniać priorytet dla działających procesów: houen@kashyyyk:~$ renice +1 34223 Zwiększanie priorytetu wymaga uprawnień administratora systemu! Zmniejszać priorytet może zaś każdy z użytkowników (oczywiście tylko w kontekście swoich procesów). Mateusz Hołenko Linux: Procesy [14/18]

Umilanie procesów Procesy można uruchomić z innym niż domyślnie priorytetem: houen@kashyyyk:~$ nice -n 13 vim Można też zmieniać priorytet dla działających procesów: houen@kashyyyk:~$ renice +1 34223 Zwiększanie priorytetu wymaga uprawnień administratora systemu! Zmniejszać priorytet może zaś każdy z użytkowników (oczywiście tylko w kontekście swoich procesów). Mateusz Hołenko Linux: Procesy [14/18]

Uruchamianie wielu procesów / Zadania

Zadania mechanizm pozwala na zawieszanie oraz wznawianie działania procesów. w celu zawieszenia aktualnego procesu użyć należy klawiszy: <CTRL-Z> Kontrolować stan procesu można również przy użyciu procesów: SIGSTOP zawieszanie procesu SIGCONT uaktywnianie procesu Mateusz Hołenko Linux: Procesy [16/18]

Zadania mechanizm pozwala na zawieszanie oraz wznawianie działania procesów. w celu zawieszenia aktualnego procesu użyć należy klawiszy: <CTRL-Z> Kontrolować stan procesu można również przy użyciu procesów: SIGSTOP zawieszanie procesu SIGCONT uaktywnianie procesu Mateusz Hołenko Linux: Procesy [16/18]

Kontrola zadań Listowanie aktywnych zadań: houen@kashyyyk:~$ jobs Uaktywnianie procesu: houen@kashyyyk:~$ fg vim houen@kashyyyk:~$ fg 1 Uaktywnianie procesu w tle: houen@kashyyyk:~$ bg vim houen@kashyyyk:~$ bg 1 Mateusz Hołenko Linux: Procesy [17/18]

Kontrola zadań Listowanie aktywnych zadań: houen@kashyyyk:~$ jobs Uaktywnianie procesu: houen@kashyyyk:~$ fg vim houen@kashyyyk:~$ fg 1 Uaktywnianie procesu w tle: houen@kashyyyk:~$ bg vim houen@kashyyyk:~$ bg 1 Mateusz Hołenko Linux: Procesy [17/18]

Kontrola zadań Listowanie aktywnych zadań: houen@kashyyyk:~$ jobs Uaktywnianie procesu: houen@kashyyyk:~$ fg vim houen@kashyyyk:~$ fg 1 Uaktywnianie procesu w tle: houen@kashyyyk:~$ bg vim houen@kashyyyk:~$ bg 1 Mateusz Hołenko Linux: Procesy [17/18]

Kontrola uruchamiania procesów Uruchamianie programu w tle: houen@kashyyyk:~$ gvim & Sekwencyjne uruchamianie procesów: houen@kashyyyk:~$ appa; appb; appc Warunkowe uruchamianie procesów: houen@kashyyyk:~$ appa appb houen@kashyyyk:~$ appa && appb houen@kashyyyk:~$ (appa appc) && appb Mateusz Hołenko Linux: Procesy [18/18]

Kontrola uruchamiania procesów Uruchamianie programu w tle: houen@kashyyyk:~$ gvim & Sekwencyjne uruchamianie procesów: houen@kashyyyk:~$ appa; appb; appc Warunkowe uruchamianie procesów: houen@kashyyyk:~$ appa appb houen@kashyyyk:~$ appa && appb houen@kashyyyk:~$ (appa appc) && appb Mateusz Hołenko Linux: Procesy [18/18]

Kontrola uruchamiania procesów Uruchamianie programu w tle: houen@kashyyyk:~$ gvim & Sekwencyjne uruchamianie procesów: houen@kashyyyk:~$ appa; appb; appc Warunkowe uruchamianie procesów: houen@kashyyyk:~$ appa appb houen@kashyyyk:~$ appa && appb houen@kashyyyk:~$ (appa appc) && appb Mateusz Hołenko Linux: Procesy [18/18]