Różnice między wybraną wersją a wersją aktualną.
| Both sides previous revision Poprzednia wersja Nowa wersja | Poprzednia wersja | ||
|
so:ps_kill [2025/03/25 20:47] jkonczak |
so:ps_kill [2025/04/06 14:50] (aktualna) jkonczak dodano przykłady |
||
|---|---|---|---|
| Linia 22: | Linia 22: | ||
| <small> | <small> | ||
| ~~Zadanie.#~~ Zmierz ile czasu trwa wykonanie komendy: | ~~Zadanie.#~~ Zmierz ile czasu trwa wykonanie komendy: | ||
| + | <html><div style="margin-top:-1.2em"></div></html> | ||
| * ''openssl dhparam -text 1536'' | * ''openssl dhparam -text 1536'' | ||
| * ''dd if=/dev/zero of=/dev/null bs=1 count=2M'' | * ''dd if=/dev/zero of=/dev/null bs=1 count=2M'' | ||
| Linia 112: | Linia 113: | ||
| <small> | <small> | ||
| - | ~~Zadanie.#~~ Uruchom polecenie ''python -c 'import os; os.popen("true"); os.read(0,1)''' które "wyprodukuje" proces zombie. Znajdź go na liście procesów. | + | ~~Zadanie.#~~ Uruchom polecenie ''%%python -c 'import os; os.popen("true"); os.read(0,1)'%%'' które "wyprodukuje" proces zombie. Znajdź go na liście procesów. |
| </small> | </small> | ||
| Linia 123: | Linia 124: | ||
| ~~Zadanie.#~~ Wyświetl drzewo procesów z pidem każdego procesu. | ~~Zadanie.#~~ Wyświetl drzewo procesów z pidem każdego procesu. | ||
| + | |||
| + | ++++Przykłady - listowanie procesów|{{page>so:ps_kill:examples#ps_pstree&inline&noheader}}++++ | ||
| + | ++++Przykłady - procesy zombie|{{page>so:ps_kill:examples#zombie&inline&noheader}}++++ | ||
| Pseudo system plików ''procfs'', zamontowany standardowo w ''/proc'', pozwala | Pseudo system plików ''procfs'', zamontowany standardowo w ''/proc'', pozwala | ||
| Linia 155: | Linia 159: | ||
| Ale co z swapem i [[https://en.wikipedia.org/wiki/Zram|kompresją wewnątrz RAMu]]… | Ale co z swapem i [[https://en.wikipedia.org/wiki/Zram|kompresją wewnątrz RAMu]]… | ||
| - | Zużycie pamięci próbuje sensownie pokazać program ''smem''; sprawdź opcje ''-p'' i ''-t''. | + | Zużycie pamięci próbuje sensownie pokazać program ''smem''; sprawdź opcje ''-p'' i ''-t -k''. |
| </small> | </small> | ||
| Linia 191: | Linia 195: | ||
| stan systemu i procesów. Są to m. in.. ''iotop'' (użycie I/O), ''atop'', ''glances'', ''bottom''. | stan systemu i procesów. Są to m. in.. ''iotop'' (użycie I/O), ''atop'', ''glances'', ''bottom''. | ||
| </small> | </small> | ||
| + | |||
| + | ++++Przykłady|<asciicast so:tops.cast 80>++++ | ||
| === Wyszukiwanie procesów === | === Wyszukiwanie procesów === | ||
| Linia 289: | Linia 295: | ||
| ~~Zadanie.#~~ Uruchom w jednym terminalu komendą ''/usr/sbin/named -g -c <(:)'' serwer DNS. Z drugiego terminalu wyślij sygnał HUP do ''named''a. | ~~Zadanie.#~~ Uruchom w jednym terminalu komendą ''/usr/sbin/named -g -c <(:)'' serwer DNS. Z drugiego terminalu wyślij sygnał HUP do ''named''a. | ||
| </small> | </small> | ||
| + | |||
| + | ++++Przykłady|<asciicast so:pkill.cast 81>++++ | ||
| ==== Kontrola zadań w powłoce ==== | ==== Kontrola zadań w powłoce ==== | ||
| Linia 333: | Linia 341: | ||
| ~~Zadanie.#~~ Uruchom w tle ''sleep 1h'' oraz ''sleep 15s''. Poczekaj poleceniem ''wait'' na zakończenie drugiego ''sleep''a. | ~~Zadanie.#~~ Uruchom w tle ''sleep 1h'' oraz ''sleep 15s''. Poczekaj poleceniem ''wait'' na zakończenie drugiego ''sleep''a. | ||
| + | |||
| + | ++++Przykłady|<asciicast so:jobs.cast 80>++++ | ||
| ==== Proces a planiści ==== | ==== Proces a planiści ==== | ||
| Linia 377: | Linia 387: | ||
| </small> | </small> | ||
| + | |||
| + | ++++Przykłady|<asciicast so:niceness.cast 80>++++ | ||
| ~~Zadanie.#~~ Uruchom komendę ''sleep 1h'' z niceness 10. Sprawdź jej nicneness (np. w ''ps'' / ''htop''). | ~~Zadanie.#~~ Uruchom komendę ''sleep 1h'' z niceness 10. Sprawdź jej nicneness (np. w ''ps'' / ''htop''). | ||
| Linia 383: | Linia 395: | ||
| ~~Zadanie.#~~ W dwóch konsolach wykonaj ''taskset -pc 0 $$'' (<small>która zmieni listę dozwolonych procesorów tego shella na pierwszy</small>).\\ | ~~Zadanie.#~~ W dwóch konsolach wykonaj ''taskset -pc 0 $$'' (<small>która zmieni listę dozwolonych procesorów tego shella na pierwszy</small>).\\ | ||
| - | Następnie w obu wykonaj ''openssl dhparam -text %%$((2**14))%% [//dowolny tekst//]'' | + | Następnie w jednym wykonaj ''openssl dhparam 9000'', w drugim ''openssl dhparam 9001'' |
| (<small>co uruchomi procesorożerne szukanie dużych liczb pierwszych</small>).\\ | (<small>co uruchomi procesorożerne szukanie dużych liczb pierwszych</small>).\\ | ||
| W trzeciej konsoli uruchom ''htop'' i obserwuj zużycie CPU. \\ | W trzeciej konsoli uruchom ''htop'' i obserwuj zużycie CPU. \\ | ||
| Linia 423: | Linia 435: | ||
| na procesorach z węzła //x// i pamięci z węzła //y//. | na procesorach z węzła //x// i pamięci z węzła //y//. | ||
| + | |||
| + | Komenda ''lstopo'' z paczki ''[[https://www.open-mpi.org/projects/hwloc/|hwloc]]'' | ||
| + | pozwala zwizualizować topologię zasobów maszyny. | ||
| </small> | </small> | ||