Componentele Linux

Datorită posibilității de a lucra cu mai mulți utilizatori deodată, sistemul de operare Linux poartă denumirea de “sistem multiuser” (FIG. 3.1).

linux7
Figura 3.1. Sesiunea de login (conectare)

Sistemul de operare Linux folosește un sistem de procese numit multitasking pentru a aloca timpul de lucru al procesorului mai multor utilizatori în același timp. În realitate, nu este vorba de procese care se rulează în același timp ci unele după altele la intervale de timp de ordinul milisecundelor.

Sistemul de operare alocă timpul în așa fel încât să lase impresia de continuitate pentru fiecare utilizator. În timp ce unul dintre aceștia lucrează la terminalul său. el împarte cu ceilalți resursele de calcul.

Linux, ca oricare alt sistem de operare, este un set de programe care administrează toate operațiile sistemului de calcul. El asigură de asemenea o interfață între utilizator și resursele sistemului, convertind cererile care vin de la mouse sau tastatură în operații de efectuat în sistemul de calcul.

Majoritatea sistemelor de operare, inclusiv Linux, au trei mari componente: Kernel-ul, Shell-ul și Sistemul de Fișiere (FIG. 3.2). Kernel-ul administrează operațiile computerului. Shell-ul asigură o interfață pentru interacțiunea dintre utilizator și calculator iar sistemul de Fișiere asigură un mijloc de organizare și gestionare a informațiilor pe discurile hard ale calculatorului.

linux8
Figura 3.2. Componentele Sistemului de Operare

Kernel-ul sistemului de operare

Kernel-ul este inima sistemului de operare și oferă mijloacele primare necesare ca un sistem de calcul să funcționeze. Kernel-ul se află cel mai aproape de CPU și hardware. Este un fișier executabil care se încarcă atunci când pornește calculatorul. Odată ce kernel-ul a fost încărcat, el realizează următoarele funcții:

  • Gestionează dispozitivele, memoria, și procesele.
  • Controlează interacțiunea (transmisia informației) dintre programele aplicație (utilități) și hardware-ul sistemului.
  • Administrează funcții precum: spațiul Swap, Demoni, și Sistemele de Fișiere.

Spațiul Swap – Este o parte rezervată de pe hard disk pentru kernel, acesta utilizând-o în timpul procesării. Porțiuni de programe care rulează pot fi “aruncate”  hard disk-ului și apoi, la nevoie, aduse înapoi. Acest spațiu swap se află în realitate pe hard disk, însă seamănă cu o memorie adițională sau RAM adițional, uneori fiind numit memorie virtuală.

Demonii – Programe sau procese care realizează o sarcină particulară sau monitorizează discurile sau execuția programelor. Demonii sunt procese speciale care pornesc după ce se încarcă sistemul de operare. Demonii așteaptă apoi să facă ceva în sprijinul SO. Pot fi porniți sau opriți dacă este necesar. Un exemplu este cel al demonului imprimantei, lpsched (line printer scheduler). Acesta se lansează când sistemul pornește și apoi așteaptă în fundal până când cineva are nevoie să tipărească ceva. Demonii din lumea Linuxului sunt similari cu Serviciile din Windows NT/2000 sau cu NetWare Loadable Modules (NLMs) din Novell NetWare.

Sistemele de fișiere – Reprezintă o ierarhie de directoare, subdirectoare și fișiere care organizează și administrează informația pe hard disk-uri. Sistemele de fișiere pot fi locale sau pe altă mașină (de obicei server).

Shell-ul

Un shell este o interfață între utilizator și kernel. Acționează ca un interpretor sau ca un translator. Cu alte cuvinte, shell-ul acceptă comenzi scrise de utilizator, le interpretează, și apoi execută programele corespunzătoare. Shell-urile pot fi linie de comandă sau grafice. Pentru a verifica ce shell utilizezi la un moment dat, se poate folosi comanda ps (process status) (FIG. 3.3).

Shell-ul citește și interpretează cererile introduse de utilizator. Apoi comunică instrucțiuni kernel-ului care duce la îndeplinire cererile formulate de utilizator. Shell-ul este deci legătura directă, interfața directă a utilizatorului cu sistemul de operare. De obicei, cele mai multe cereri sunt pentru a rula programe.

linux9
Figura 3.3. Shell-ul

Componentele sistemului de operare Linux pot fi văzute la lucru prima dată în sesiunea de logare (conectare). Programul de login citește și verifică parolele. Dacă parola este corectă, utilizatorul identificat prin username (nume de utilizator) este admis în sistem (FIG. 3.4).

linux7
Figura 3.4. Sesiunea de login (conectare)

Sarcina programului de login este aceea de a verifica parola introdusă de utilizator.

Pentru a realiza această sarcină, programul comandă kernel-ului să aducă de pe disk fișierul de parole și să-l pună în memorie pentru a putea fi citit. După această operație, are loc validarea parolei. În urma validării, utilizatorul este primit (logged) în sistem și are la dispoziție shell-ul ca interfață cu utilitățile oferite de SO și resursele sistemului.

Prompt-ul $ care apare pe ecran arată faptul că shell-ul este gata să accepte comenzi.

Shell-ul se comportă ca un interpretor de comenzi, interpretând comenzi simple pentru a executa procese complexe. De exemplu, pentru a vizualiza conținutul disponibil al directorului proiectului Calder se tastează comanda ls calder (FIG. 3.5).

linux10
Figura 3.5. Listarea conținutului unui director

Orice utilizator primește un shell după executarea cu succes a procesului de login. Fiecare shell comunică cu kernelul și se comportă ca un interpret între utilizator și kernel.

Comenzile utilizatorului sunt recepționate de către shell. Acesta le traduce și comunică comenzile kernelului care, la rândul său procesează cererea și îndeplinește sarcinile.

Sistemul de Fișiere

Sistemul de fișiere asigură o modalitate de a separa și de a organiza informația pe un hard disk. Structura de fișiere a sistemului Linux este o ierarhie de directoare, subdirectoare și fișiere care sunt grupate în funcție de anumite scopuri. Sistemul de fișiere este integrat cu Kernel-ul în scopul asigurării unei structuri organizatorice pentru software-ul și pentru datele utilizatorilor. Structura de fișiere subdivide hard disk-urile, făcându-le mai ușor de administrat și ușurându-ne localizarea fișierelor. Hard disk-urile pot fi divizate în sisteme de fișiere, directoare, subdirectoare și fișiere. Sistemul de fișiere organizează datele într-un mod similar unui dulap. Sistemul de fișiere este dulapul, directoarele sunt asemenea sertarelor, subdirectoarele asemenea dosarelor iar fișierele pot fi asemănate cu foile prinse în dosar.

Un fișier este o colecție de informații (date, o aplicație, sau documente). În Linux, un fișier poate cuprinde orice. Când se creează un fișier, Linux-ul îi atribuie acestuia un număr de identificare intern unic. Acest număr de index este utilizat pentru a putea localiza fișierul pe hard disk.

Deci, un sistem de fișiere este un ansamblu de fișiere și directoare. Sistemele de fișiere sunt dependente de dimensiunea și structura discului, precum și de structura internă a Linux-ului. Într-un sistem multiuser (multi utilizator), poate exista la un moment dat un număr mare de fișiere stocate. Din această cauză, utilizatorii au nevoie de un sistem care să le permită identificarea rapidă și simplă a fișierelor.

De obicei, directoarele și fișierele utilizatorilor se află stocate pe un alt sistem de fișiere decât cel pe care se află directoarele și fișierele sistemului de operare. Daca există un număr mare de utilizatori, atunci fișierele utilizatorilor se pot întinde pe mai mult de un sistem de fișiere.

Sistemul de fișiere se referă la modul în care Linux-ul implementează fișierele și directoarele. În Linux, un sistem de fișiere are următoarele caracteristici:

–          structura ierarhică

–          fișierele sunt expandabile (la nevoie pot să-și mărească dimensiunea)

–          fișierele sunt tratate ca fluxuri de bytes

–          fișierele și directoarele au asociate drepturi de securitate

–          fișierele pot fi utilizate în comun de mai mulți utilizatori

–          dispozitivele hardware sunt tratate ca și fișiere

Sistemul de operare Linux permite utilizatorilor să grupeze fișierele între ele în interiorul directoarelor, iar directoarele să le grupeze la rândul lor în alte directoare pentru o mai bună organizare.

Rezultatul este cunoscut ca fiind un Sistem ierarhic de fișiere (arborescent).

O ierarhie de directoare seamănă cu un copac întors cu rădăcina în sus. Iată o ierarhie a sistemului de fișiere Linux:

linux11
Figura 3.6. O structură arborescentă de fișiere
  • Sistem de fișiere – Un grup de directoare ce poate fi imaginat ca o structură arborescentă separată. Un hard disk poate fi împărțit în mai multe sisteme de fișiere separate similare partițiilor logice din sistemele Windows/DOS (asemenea drive C: sau D: ) sau similare volumelor din sistemele Novell NetWare. Sistemele de fișiere pot fi montate sau demontate în funcție de necesitățile administratorului. Fiecare sistem de fișiere are propria sa structură de directoare, iar în plus poate fi local (pe calculatorul în cauză) sau pe alt calculator.
  • Director – Un loc pentru alte subdirectoare și/sau fișiere. Un director este asemenea unui sertar dintr-un dulap de acte. Cel mai de sus director din structură este directorul rădăcină, reprezentat print-un singur slash (/).
  • Subdirector – Orice director aflat sub alt director. De exemplu, unele dintre directoarele de sub directorul rădăcină (root) sunt /usr, /etc si /kernel.
  • Fișiere – Fișierele sunt conținute în directoare și subdirectoare. Ele reprezintă cel mai jos nivel al sistemului de fișiere. Există de obicei mii de fișiere pe hard disk, de diferite tipuri:
    • ASCII – (American Standard Code for Information Interchange) aceste fișiere sunt fișiere text simple.
    • Fișiere aplicație – Aceste fișiere sunt create de o aplicație cum ar fi un Procesor de text, un program de baze de date sau un program de calcul tabelar.
    • Programe executabile – Acestea sunt comenzi Linux sau diferite programe de aplicații.

Leave a comment