This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
basic-unix:capitole:capitol-01 [2016/05/15 22:04] razvan [X. TODO] |
basic-unix:capitole:capitol-01 [2016/05/23 00:47] (current) razvan [Utilitare folosite] |
||
---|---|---|---|
Line 1: | Line 1: | ||
====== 1. Sisteme de calcul. Sistemul Unix ====== | ====== 1. Sisteme de calcul. Sistemul Unix ====== | ||
- | TODO | + | Vom discuta despre componentele unui sistem de calcul și ale unui sistem de operare și despre legăturile dintre acestea. Vom prezenta la nivel conceptual (generalist) și apoi vom particulariza pe Linux/Unix. Ne interesează ce se întâmplă în spatele unei comenzi (sau acțiuni a utilizatorului) și cum poate fi afectată această acțiuni funcție de specificul sistemului de operare și contextul curent. |
===== Subiecte abordate ===== | ===== Subiecte abordate ===== | ||
- | * TODO | + | * Sisteme de operare: roluri, exemple |
- | * TODO | + | * Structura unui sistem de calcul |
- | * TODO | + | * Componentele unui sistem de operare |
+ | * Interfața cu utilizatorul | ||
+ | * Istoria Unix | ||
+ | * Distribuții Linux | ||
==== Utilitare folosite ==== | ==== Utilitare folosite ==== | ||
- | * TODO | + | * ''uname'', ''lspcu'' |
- | * TODO | + | * ''cat'' |
- | * TODO | + | * ''strace'' |
- | + | * ''lsb_release'', ''uptime'' | |
- | ===== Resurse utile ===== | + | * ''date'', ''cal'' |
- | + | ||
- | * TODO | + | |
- | * TODO | + | |
===== Exerciții ===== | ===== Exerciții ===== | ||
Line 24: | Line 24: | ||
==== Demo-uri ==== | ==== Demo-uri ==== | ||
- | TODO | + | Afișare informații despre distribuția curentă<code> |
+ | cat /etc/issue | ||
+ | lsb_release -a | ||
+ | </code> | ||
+ | |||
+ | Timpul de când este pornit sistemul<code> | ||
+ | uptime | ||
+ | </code> | ||
+ | |||
+ | Ora curentă, calendarul lunii curente<code> | ||
+ | date | ||
+ | cal | ||
+ | </code> | ||
+ | |||
+ | |||
+ | ==== Informații despre sistemul curent ==== | ||
+ | |||
+ | Afișați numărul de procesoare ale sistemului curent. Folosiți, pe rând, comenzile de mai jos | ||
+ | <code> | ||
+ | cat /proc/cpuinfo | ||
+ | lscpu | ||
+ | nproc | ||
+ | </code> | ||
+ | |||
+ | Afișați arhitectura pe care rulează sistemul curent. Folosiți, pe rând | ||
+ | <code> | ||
+ | uname | ||
+ | </code> | ||
+ | cu opțiunea corespunzătoare (vedeți în pagina de manual opțiunea ce vă permite să identificați //hardware name//) și | ||
+ | <code> | ||
+ | arch | ||
+ | </code> | ||
+ | |||
+ | Folosiți comanda ''strace'' urmată de fiecare dintre cele două comenzi de mai sus. În output-ul comenzii ''strace'', identificați apelul de sistem ''uname'' comun invocat înainte de afișarea informațiilor. Afișați pagina de manual a apelului de sistem respectiv (''uname''). | ||
+ | |||
+ | <note tip> | ||
+ | Paginile de manual pentru apeluri de sistem sunt în secțiunea ''2'' a paginilor de manual. | ||
+ | </note> | ||
+ | |||
+ | |||
+ | ==== Urmărire istorie Unix/Linux ==== | ||
+ | |||
+ | Urmăriți imaginea de [[https://upload.wikimedia.org/wikipedia/commons/thumb/7/77/Unix_history-simple.svg/2000px-Unix_history-simple.svg.png|aici]] legată de evoluția Unix. | ||
- | TODO | + | Urmăriți imaginea de [[https://upload.wikimedia.org/wikipedia/commons/e/e5/GNU-Linux_distro_timeline_10_9.png|aici]] legată de evoluția Linux. |
- | ==== TODO 2 ==== | + | ==== Folosire strace ==== |
- | TODO | + | Folosiți strace pentru a afișa fișierele deschise de comanda |
+ | <code> | ||
+ | ls | ||
+ | </code> | ||
+ | Apoi afișați fișierele deschise de comanda | ||
+ | <code> | ||
+ | ls -l | ||
+ | </code> | ||
- | ==== TODO 2 ==== | + | <note tip> |
+ | Pentru a rula comanda ''strace'' folosiți comanda ''strace'' urmată de comanda pe care doriți să o urmăriți. De exemplu<code> | ||
+ | strace ls | ||
+ | </code> | ||
+ | </note> | ||
- | TODO | + | <note tip> |
+ | Va trebui să folosiți comanda ''strace'' cu opțiunea aferentă (''-e'') ca să urmăriți apelul de sistem ''open''. | ||
+ | </note> | ||
+ | Observați că rularea comenzii ''ls -l'' deschide fișierul ''/etc/passwd'' în vreme ce ''ls'' nu deschide acel fișier. |