This shows you the differences between two versions of the page.
uso:laboratoare:laborator-04:run [2021/10/29 13:10] costin_robert.sin [Identificarea fișierului executabil al unei aplicații] |
uso:laboratoare:laborator-04:run [2022/10/25 18:13] (current) andrei.dragomir1401 |
||
---|---|---|---|
Line 10: | Line 10: | ||
Fișierul executabil al unei aplicații este încărcat în memoria sistemului și codul este executat; din acest moment spunem că aplicația **rulează**. | Fișierul executabil al unei aplicații este încărcat în memoria sistemului și codul este executat; din acest moment spunem că aplicația **rulează**. | ||
- | De exemplu aplicația Firefox (browser web) are asociat fișierul executabil ''%%/usr/bin/firefox%%''; aplicația Vim (editor) are asociat fișierul executabil ''%%/usr/bin/vim%%''; aplicația LibreOffice (suită office) are asociat fișierul executabil ''%%/usr/bin/libreoffice%%''. Putem identifica fișierul executabil al unei aplicații folosind comanda ''%%which%%'', urmată de comanda pentru pornirea aplicației ca mai jos: | + | De exemplu aplicația Firefox (browser web) are asociat fișierul executabil ''%%/usr/bin/firefox%%''; aplicația Vim (editor) are asociat fișierul executabil ''%%/usr/bin/vim%%''; aplicația nano (editor de text) are asociat fișierul executabil ''%%/usr/bin/nano%%''. Putem identifica fișierul executabil al unei aplicații folosind comanda ''%%which%%'', urmată de comanda pentru pornirea aplicației ca mai jos: |
<code bash> | <code bash> | ||
Line 17: | Line 17: | ||
student@uso:~$ which vim | student@uso:~$ which vim | ||
/usr/bin/vim | /usr/bin/vim | ||
- | student@uso:~$ which libreoffice | + | student@uso:~$ which nano |
- | /usr/bin/libreoffice | + | /usr/bin/nano |
</code> | </code> | ||
- | **Exercițiu**: Identificați fișierul executabil al aplicațiilor / utilitarelor %%shutter%%, %%gedit%%, ''%%ls%%'', ''%%df%%''. | + | **Exercițiu**: Identificați fișierul executabil al aplicațiilor / utilitarelor ''%%shutter%%'', ''%%gedit%%'', ''%%ls%%'', ''%%df%%''. |
===== Investigarea proceselor ===== | ===== Investigarea proceselor ===== | ||
Line 184: | Line 184: | ||
Ca să terminăm forțat (omorâm) un proces folosim semnale. Un semnal este o notificare trimisă de utilizator sau de sistemul de operare către un proces. Nu este obligatoriu ca un semnal să omoare procesul care îl primește, dar este cel mai des întâlnit comportament, și principala utilizare a semnalelor. | Ca să terminăm forțat (omorâm) un proces folosim semnale. Un semnal este o notificare trimisă de utilizator sau de sistemul de operare către un proces. Nu este obligatoriu ca un semnal să omoare procesul care îl primește, dar este cel mai des întâlnit comportament, și principala utilizare a semnalelor. | ||
- | Ca să trimitem un semnal unui proces trebuie să știm PID-ul acestuia și folosim utilitarul ''%%kill%%'' urmat de PID-ul procesului. Adică, dacă pornim într-un terminal un proces ''%%sleep%%'' folosind comanda de mai jos: | + | Ca să trimitem un semnal unui proces trebuie să știm PID-ul acestuia și folosim utilitarul ''%%kill%%'' urmat de PID-ul procesului. Se folosesc mai multe terminale in paralel. Adică, dacă pornim într-un terminal un proces ''%%sleep%%'' folosind comanda de mai jos: |
<code bash> | <code bash> | ||
Line 247: | Line 247: | ||
* Omorâți shellul curent. | * Omorâți shellul curent. | ||
- | * Porniți o aplicație ''%%shutter%%''. Porniți o aplicație ''%%libreoffice%%''. Porniți o aplicație ''%%firefox%%''. Porniți o aplicație ''%%transmission-gtk%%''. Omorâți aceste procese folosind utilitarul ''%%kill%%''. | + | * Porniți o aplicație ''%%vim%%''. Porniți o aplicație ''%%htop%%''. Porniți o aplicație ''%%firefox%%''. Omorâți aceste procese folosind utilitarul ''%%kill%%'' intr-o singura comanda. |
+ | <note>Observati cum firefox a pornit multiple procese pentru o singura pagina. (Firefox folosește o caracteristică numită multiprocesare; În loc să ruleze totul într-un singur proces, diferite componente ale browserului sunt impartite in procese separate). | ||
+ | </note> | ||
Line 269: | Line 271: | ||
Scriptul ''%%cpu_hog%%'' pornește un proces care execută o buclă infinită. | Scriptul ''%%cpu_hog%%'' pornește un proces care execută o buclă infinită. | ||
- | Observați, cu ajutorul comenzii ''%%top%%'', că procesorul este încărcat. Identificați procesul cel mai consumator de resurse și omorâți-l. Observați, cu ajutorul comenzii ''%%top%%'', că acum procesorul nu mai este încărcat. | + | Observați, cu ajutorul comenzii ''%%htop%%'', că procesorul este încărcat. Identificați procesul cel mai consumator de resurse și omorâți-l (uitati-va dupa comanda care a declansat procesul). Observați, tot cu ajutorul comenzii ''%%htop%%'', că acum procesorul nu mai este încărcat. |
<note> | <note> | ||
Line 275: | Line 277: | ||
</note> | </note> | ||
- | **Note de subsol** | + |