modulul 1. generalităŃi despre sistemele linux 1.pdf · introducere sistemul de operare linux,...

16
9 Modulul 1. GeneralităŃi despre sistemele Linux Cuprins Introducere ................................................................................................................. 9 CompetenŃe................................................................................................................. 9 U1. GeneralităŃi despre sistemele Linux ...................................................................... 9 Introducere Sistemul de operare Linux, apărut la începutul anilor ’90, este un descendent al sistemelor Unix.. Linux nu este Unix; Unix-ul este un produs software pentru care trebuie cumpărată o licenŃă pentru a-l putea utiliza legal, pe când utilizarea Linux este liberă. Dezvoltarea sistemului a fost începută de către inginerul finlandez Linus Torvalds, care iniŃial dorea să obŃină un sistem similar cu Minix, dar fără limitările acestuia. Linux a fost dezvoltat sub LicenŃa Publică Generală (GNU GPL), astfel încât nu numai Linux însuşi, dar şi codul său sursă sunt disponibile tuturor celor interesaŃi. CompetenŃe La sfârşitul acestui modul studenŃii vor fi capabili să: explice de ce Linux este uşor de accesat de către utilizatori; identifice diferenŃa între sistemele de operare Linux şi Windows; însuşească ideile promovate de sistemele Unix şi Linux.

Upload: others

Post on 15-Sep-2019

36 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Modulul 1. GeneralităŃi despre sistemele Linux 1.pdf · Introducere Sistemul de operare Linux, apărut la începutul anilor ’90, este un descendent al sistemelor Unix.. Linux

9

Modulul 1. GeneralităŃi despre sistemele Linux Cuprins Introducere ................................................................................................................. 9 CompetenŃe................................................................................................................. 9 U1. GeneralităŃi despre sistemele Linux ...................................................................... 9

Introducere

Sistemul de operare Linux, apărut la începutul anilor ’90, este un descendent al sistemelor Unix.. Linux nu este Unix; Unix-ul este un produs software pentru care trebuie cumpărată o licenŃă pentru a-l putea utiliza legal, pe când utilizarea Linux este liberă. Dezvoltarea sistemului a fost începută de către inginerul finlandez Linus Torvalds, care iniŃial dorea să obŃină un sistem similar cu Minix, dar fără limitările acestuia. Linux a fost dezvoltat sub LicenŃa Publică Generală (GNU GPL), astfel încât nu numai Linux însuşi, dar şi codul său sursă sunt disponibile tuturor celor interesaŃi.

CompetenŃe La sfârşitul acestui modul studenŃii vor fi capabili să: � explice de ce Linux este uşor de accesat de către utilizatori; � identifice diferenŃa între sistemele de operare Linux şi Windows; � însuşească ideile promovate de sistemele Unix şi Linux.

Page 2: Modulul 1. GeneralităŃi despre sistemele Linux 1.pdf · Introducere Sistemul de operare Linux, apărut la începutul anilor ’90, este un descendent al sistemelor Unix.. Linux

10

Unitatea de învăŃare M1.U1. GeneralităŃi despre sistemele Linux Cuprins M1.U1.1. Introducere.......................................................................................................... 10 M1.U1.2. Obiectivele unităŃii de învăŃare............................................................................ 10 M1.U1.3. EvoluŃia sistemelor de operare UNIX şi LINUX ................................................. 11 M1.U1.4. Caracteristici generale ale sistemului Linux ........................................................ 12 M1.U1.5. InterfaŃa sistemului cu utilizatorii ........................................................................ 14 M1.U1.6. Nucleul Linux ..................................................................................................... 17 M1.U1.7. DistribuŃii Linux ................................................................................................. 19 M1.U1.8. ObŃinerea de informaŃii despre comenzi .............................................................. 20 M1.U1.9. Teste de evaluare a cunoştinŃelor......................................................................... 23 M1.U1.10. Rezumat............................................................................................................. 24

M1.U1.1. Introducere

Linux este un sistem multiuser si multitasking, adică mai mulŃi utilizatori pot rula mai multe programe în acelaşi timp. Oferă suport pentru lucrul în reŃea, acces la Internet şi este unul dintre cele mai folosite sisteme de operare pentru administrarea serverelor din reŃele de calculatoare. Termenul Linux se referă şi la nucleul Linux, însă în mod uzual este folosit pentru a descrie întregul sistem de operare pentru calculatoare, compus din nucleul Linux, biblioteci software şi diverse unelte. O "distribuŃie Linux" adaugă acestor componente de bază o mare cantitate de programe, organizate în „pachete”. Nucleul Linux a fost dezvoltat iniŃial pentru microprocesorul Intel 386, dar în prezent rulează pe o mare gamă de microprocesoare şi arhitecturi de calculatoare. Este folosit pe calculatoare de tip personal, pe supercomputere, dar şi pe sisteme încapsulate, cum ar fi unele telefoane mobile sau recordere video. IniŃial dezvoltat şi utilizat de către programatori voluntari, Linux a câştigat suportul industriei IT şi al marilor companii ca IBM, Hewlett-Packard, Dell, Sun Microsystems, Google, Novell sau Nokia şi a depăşit ca folosire versiunile proprietare de Unix. Analiştii atribuie succesul sistemului faptului că este independent de furnizor, implementarea are un cost scăzut iar securitatea şi fiabilitatea sistemului sunt considerate de către specialişti drept foarte bune.

M1.U1.2. Obiectivele unităŃii de învăŃare Această unitate de învăŃare îşi propune ca obiectiv principal o iniŃiere a studenŃilor în conceptele generale asupra sistemelor Linux. La sfârşitul acestei unităŃi de învăŃare studenŃii vor fi capabili să: � înŃeleagă şi să explice evoluŃia sistemelor Linux; � înŃeleagă şi să explice organizarea sistemelor Linux; � înŃeleagă şi să explice structura nucleului Linux; � înŃeleagă şi să explice interfaŃele oferite de sistemul Linux.

Durata medie de parcurgere a unităŃii de învăŃare este de 3 ore.

Page 3: Modulul 1. GeneralităŃi despre sistemele Linux 1.pdf · Introducere Sistemul de operare Linux, apărut la începutul anilor ’90, este un descendent al sistemelor Unix.. Linux

11

M1.U1.3. EvoluŃia sistemelor de operare Unix şi Linux

În 1969 apare prima versiune a sistemului de operare UNIX. Această realizare este legată de două evenimente importante: - realizarea de către MIT (Massachusets Institute of Technology) a produsului MULTICS, care a implementat o serie de indei noi, printre care: introducerea unui interpretor de comenzi care să fie un proces utilizator; fiecare comandă să fie un proces; introducere unor caractere de interpretare a liniilor; sistem multi-utilizator şi interactiv. - în cadrul firmei Bell Labs (laboratoarele de cercetare ale firmei AT&T) a fost lansat un proiect de cercetare care a avut ca efect realizarea unui sistem ierarhic de organizare a fişierelor. Aceste concepte au stat la baza primei versiuni a sistemului UNIX, scris în limbaj de asamblare şi implementat pe un sistem PDP-7.

În 1971 apare următoarea versiune a sistemului de operare UNIX. Acesta a fost implementat pe un calculator mai puternic ( PDP-11/20). Este rescris pentru noul sistem şi apare o documenraŃie a sistemului. În 1974 sunt prezentate în Communications of the ACM ideile revoluŃionare ale acestui nou sistem de operare. De asemenea, au fost dezvoltate încă trei versiuni ale sistemului şi autorii sistemului îl pun gratuit la dispoziŃia universităŃilor americane şi au fost furnizate licenŃe de UNIX unor instituŃii comerciale.

În 1976 apare versiunea 6, care a fost prima lansată în afara Bell Labs şi ale cărei componente sunt majoritar scrise în limbajul C. În felul acesta, sistemul devine portabil, adică poate fi instalat cu eforturi minime pe platforme de calcul diferite.

După această dată, sunt dezvoltate în paralel, de către Universitatea Berkeley şi Bel Labs diverse versiuni, în concordanŃă cu evoluŃia sistemelor de calcul. Versiunea 7, apărută în 1978 a devenit comercială, iar din punct de vedere conceptual a adăugat organizarea sistemului de I/O sub formă de fluxuri, care permite o configurare mai flexibilă a administrării comunicaŃiei între procese, precum şi un sistem de fişiere care să permită apelul de proceduri la distanŃă. Ea a fost predecesorul UNIX BSD (Berkeley Software Distribution). Dintre următoarele implementări, cele mai semnificative sunt BSD 4.1, BSD 4.2, BSD 4.3 realizate la Universitatea Berkeley şi Sistem III, Sistem V ale Bell Labs.

Următoarele relizări au încercat să standardizeze sistemul, ceea ce adus la o formă general acceptată denumită UNIX System V Release 4 (prescurtat SVR4). Şi alte firme realizează propriile versiun de UNIX, care respectă standardele SVR4, dintre care cele mai semnificative sunt Ultrix şi OSF(firma DEC- Digital Equiment Corporation), HP/UX(firma Hewlett-Packard), IRIX(firma SGI-Silicon Graphics Incorporated), AIX(firma IBM), SunOS şi Solaris(firma SUN Microsystems) etc. Dintre facilităŃile adăugate de aceste versiuni se remarcă introducerea interfeŃelor grafice cu utilizatorul şi cele legate de lucrul în reŃele de calculatoare.

Standardizarea diferitelor variante de UNIX s-a realizat sub auspiciile unui comitet de standarde al IEEE. Acest proiect a fost denumit POSIX (Portable Operating System UNIX) şi, în timp a devenit o colecŃie de standarde pe care le respectă toate sistemele de operare moderne. El este format din mai multe componente, dintre care cele mai importante sunt:

• POSIX.1 – defineşte procedurile care cer apeluri de sistem; • POSIX.2 – se referă la interfaŃa cu sistemul(shell); • POSIX.3 – metode de testare a sistemului; • POSIX.4 – componentele specifice ale sistemelor de operare pentru calculatoare în timp real; • POSIX.6 – elemente de securitate; • POSIX.7 – elemente de administrare etc.

Page 4: Modulul 1. GeneralităŃi despre sistemele Linux 1.pdf · Introducere Sistemul de operare Linux, apărut la începutul anilor ’90, este un descendent al sistemelor Unix.. Linux

12

În 1987 a apărut sistemul MINIX, lansat în scopuri didactice la Universitatea Vrije din Amsterdam, care este compatibil cu UNIX la nivel de comenzi şi apeluri de sistem, dar este original din punctual de vedere al proiectării şi implementării.

În 1991, pornind de la MINIX, apare prima versiune (0.01) a sistemului LINUX, realizat de un student finlandez, Linus Torvalds. El a fost creat pentru sistemele de calcul pe 32 de biŃi, compatibile IBM PC. Sursele lui au fost puse la dispoziŃia tuturor celor interesaŃi, fiind libere pe Internet. Fiind un produs Open source, s-a dezvoltat rapid ajungând o adevărată clonă a sistemului Unix. Marea majoritate a funcŃionalităŃilor Unix au fost implementate pe Linux.

Următoarea versiune importantă(1.0) a fost lansată în 1994; a venit cu un nou sistem de fişiere (inclusiv maparea fişierelor în memorie), a introdus suportul pentru lucru în reŃea ( inclusiv Internet), a inclus noi drivere de dispozitiv.

Următoarea versiune importantă(2.0) a fost lansată în 1996; a inclus suportul necesar arhitecturilor pe 64 de biŃi, multiprogramare simetrică, noi protocoale pentru lucru în reŃea etc. Foarte multe componente software au fost portate din Unix, printre care şi aplicaŃia de interfaŃă grafică X Window System.

EvoluŃia sistemului LINUX a fost încurajată de majoritatea firmelor de software importante (cu excepŃia Microsoft), o parte dintre ele oferind-ul la preŃuri foarte mici. Urmând filozofia UNIX-ului, LINUX este mai degrabă un nucleu, care implementează funcŃiile de bază, fiind deschis tuturor celor care doresc să adauge noi module care să extindă sistemul.

Să ne reamintim... În 1969 apare prima versiune a sistemului de operare UNIX. La baza lui a stat produsul MULTICS, care a introdus un interpretor de comenzi care să fie un proces utilizator şi fiecare comandă să fie un proces şi avut ca efect realizarea un sistem ierarhic de organizare a fişierelor. LINUX este un continuator al UNIX, dar spre deosebire de acesta ete un produs liber, fiind puse la dispoziŃia tuturor celor interesaŃi pe Internet. Multe dintre funcŃionalităŃile Unix au fost portate pe Linux.

I. Întrebări. 1. Care sunt cele mai importante facilităŃi introduse de versiunile Linux care respectă standardele SVR4. 2. Care versiune de Linux a introdus suportul pentru lucru în reŃea. 3. Ce versiune de Linux a portat din Unix interfaŃa grafică X Window System.

M1.U1.4. Caracteristici generale ale sistemelor Linux

Linux-ul este gratuit. Din punctul de vedere al utilizatorului, aceasta este singura mare deosebire faŃă de Unix. Toate componentele Linux, eventualele actualizări ale sistemului sunt sunt gratuite; de semenea, codul sursă este disponibil în cazul în care se doreşte schimbarea comportamentului sistemului. LicenŃa folosită este LicenŃa publică GNU (GPL). Ea spune că oricine doreşte să schimbe Linux-ul şi, eventual să redistribuie această versiune modificată, are acest drept, cu o singură condiŃie, şi anume codul sursă să fie disponibil şi după modificare.

Linux-ul este un sistem de operare multi-user şi multi-tasking ce oferă utilizatorilor numeroase utilitare interactive. Unul dintre obiectivele lui este de a asigura diferitelor taskuri/procese şi diferiŃilor utilizatori o repartizare echitabilă a resurselor calculatorului (memorie, procesor/procesoare, spaŃiu disk, imprimantă, programe utilitare, accesul la reŃea etc.), fără a necesita intervenŃia utilizatorilor.

Page 5: Modulul 1. GeneralităŃi despre sistemele Linux 1.pdf · Introducere Sistemul de operare Linux, apărut la începutul anilor ’90, este un descendent al sistemelor Unix.. Linux

13

Linux este un mediu de dezvoltare; când ne referim la Linux, ne referim la nucleu (kernel), care are rolul de a gestiona memoria şi operatiile I/O de nivel scazut, precum şi planificarea şi controlul execuŃiei diferitelor task-uri (procese). Utilizatorii au la dispozitie un număr mare de utilitare pentru munca lor: editoare de text, limbaje de comandă (shell-uri), compilatoare, debugger-e, sisteme de prelucrare a textelor, protocoale diverse pentru acces la Internet etc.

Principii de proiectare. Unix şi Linux au fost proiectate de programatori pentru programatori. Pornind de la acest fapt, interactivitatea şi facilităŃile de dezvoltare ale programelor au fost elemente prioritare ale proiectanŃilor sistemului. Linux conŃine o componentă de verificare a fişierelor sursă ale unei aplicaŃii, pentru a vedea care dintre ele sunt compilate şi care nu, precum şi componenta SCCS(Sourse Code Control System), care este folosită pentru a păstra numai elementele suplimentare ale diverselor versiuni de fişiere sursă.

UNIX-ul a apărut în perioada când sistemele de operare foloseau prelucrarea serială a lucrărilor. De la început el a fost un sistem interactiv, cu divizarea timpului. Interactivitatea sistemului este facilitată şi de interfaŃa cu utilizatorul, care poate fi înlocuită sau dezvoltată, fiind ea însăşi un proces. Bazându-se pe divizarea timpului, UNIX a fost primul sistem de operare multi-utilizator şi multi-proces.

Linux este un sistem portabil; perifericele sunt tratate ca fişiere iar driverele sunt singurele componente ale sistemului care sunt scrise in limbaj cod maşină.

Linux-ul a fost conceput pentru a funcŃiona neîntrerupt. Ca şi UNIX-ul, un sistem Linux este făcut pentru a rula fără să fim nevoiŃi să-l repornim tot timpul. În acest sens, oferă posibilitatea planificării execuŃiei automate de sarcini la o anumită dată şi oră, atunci când sistemul nu este aglomerat. Acest aspect asigură o utilizare echilibrată a sistemului.

Organizarea ierarhică a sistemelor Unix/Linux. În figura 1.1 este prezentată organizarea pe niveluri a unui sistem care lucrează sub Unix sau Linux. Sistemul oferă o interfaŃă de comunicare atât cu utilizatorii, cât şi cu diverse aplicaŃii ale acestora.

InterfaŃa cu

utilizatorii

InterfaŃa cu bibliotecile mod utilizator InterfaŃa cu apelurile de sistem mod

nucleu

Figura 1.1 Organizarea sistemului sub Linux

Hardware(CPU, memorie, discuri, terminale etc)

Sistemul de operare Linux (administrarea proceselor, administrarea memoriei, sistemul de fişiere, administrarea I/O etc.)

Biblioteca de funcŃii standard (open, close, read, write, fork etc)

Utilizatori

Programe utilitare standard (console, editoare, compilatoare etc.)

Page 6: Modulul 1. GeneralităŃi despre sistemele Linux 1.pdf · Introducere Sistemul de operare Linux, apărut la începutul anilor ’90, este un descendent al sistemelor Unix.. Linux

14

Să ne reamintim... Linux -ul este un sistem de operare multi-user şi multi-tasking ce oferă utilizatorilor numeroase utilitare interactive. Unix şi Linux au fost proiectate de programatori pentru programatori. Pornind de la acest fapt, interactivitatea şi facilităŃile de dezvoltare ale programelor au fost elemente prioritare ale proiectanŃilor sistemului. Interactivitatea sistemului este facilitată şi de interfaŃa cu utilizatorul, care poate fi înlocuită sau dezvoltată, fiind ea însăşi un proces. Sistemele de operare Unix/Linux au organizarea ierarhică, pe niveluri. Sistemul oferă o interfaŃă de comunicare atât cu utilizatorii, cât şi cu diverse aplicaŃii ale acestora.

I. Întrebări. 1. Prin ce se asigură portabilitatea sistemului Linux. 2. La ce componente ale unui sistem Linux au acces utilizatorii. 3. ExplicaŃi organizarea ierarhică a sistemelor Linux.

M1.U1.5. InterfaŃa sistemului cu utilizatorii

InterfaŃa cu utilizatorii se poate face în mod text sau grafic. Componenta care permite acest lucru este consola, care joacă un rol esenŃial în introducerea şi afişarea de text folosit în utilizarea şi administrarea sistemului. Terminalele virtuale sunt utilizate pentru introducerea de comenzi sub formă de texte.

InterfeŃe grafice. InterfaŃa grafică oferită de sistemele Linux se bazează pe X Window System (se utilizează şi denumirea scurtă X sau X11); acesta este un cadru ce permite desenarea de ferestre pe un afişaj în care imaginea este reprezentată ca o matrice de puncte.

X oferă un cadru de bază pentru crearea unor interfeŃe grafice: desenarea şi mutarea ferestrelor pe ecran, interacŃiunea cu mouse-ul, interacŃiunea cu tastatura. Restul de primitive sunt conŃinute în diverse programe de interfaŃă, aceasta fiind cauza pentru care aspectul vizual diferă de la o distribuŃie Linux la alta sau chiar în cadrul aceleiaşi distribuŃii.

X Window System are o arhitectură de tip client-server. Serverul X primeşte de la clienŃi (procese) cereri de desenare a unor obiecte grafice şi trimite înapoi la aceştia intrările de la utilizator, preluate de la tastatură, mouse etc. În acest sens, serverul X este responsabil de administrarea resurselor care permit interacŃiunea cu utilizatorul (ecranul, tastatura, mouse-ul etc.). Serverul X rulează pe calculatorul la care s-a conectat utilizatorul; el preia date de intrare (cereri) ale acestora, pe care le trimite aplicaŃiilor client, care procesează mesajele primite de la serverul X şi îi returnează acestuia rezultatul prelucrării, pe care acesta, mai departe îl transmite căttre utilizator prin afişare pe ecran. ClienŃii X pot rul local, pe acelaşi sistem cu serverul X, la care s-a conectat utilizatorul sau pe un alt calculator din reŃea.

FaŃă de aplcaŃiile clasice de tip client-server, aici avem o diferenŃă, în sensul că clienŃii se pot afla pe calculatorul local sau la distanŃă, iar serverul se execută pe calculatorul local. Serverul X nu conŃine nici o specificaŃie legată de felul cum arată interfaŃa cu utilizatorii (modul în care arată butoanele, ferestrele, meniurile etc.); aceste specificaŃii sunt realizate de către alte componente: administratorul de ferestre (window manager), mediul de ecran (desktop environment) şi aplicaŃiile specifice de interfaŃă grafică cu utilizatorul (GUI specific application ).

Administratorul de ferestre controlează amplasarea şi modul în care arată ferestrele aplicaŃiilor; astfel, toate ferestrele clienŃilor au caracteristici comune: bara de titluri a ferestrei, butoanele de maximizare şi minimizare etc. Aspectul vizual al ferestrelor este controlată de o componentă a administratorul de ferestre, numită window decorator.

Page 7: Modulul 1. GeneralităŃi despre sistemele Linux 1.pdf · Introducere Sistemul de operare Linux, apărut la începutul anilor ’90, este un descendent al sistemelor Unix.. Linux

15

Exemplu. Kwin este managerul de ferestre folosit de KDE; metacity este managerul de ferestre folosit de gnome. Despre gnome şi KDE vom discuta în cele ce urmează.

Mediul de ecran include un administrator de ferestre, mai multe aplicaŃii şi o interfaŃă vizuală atractivă. Marea majoritate a sistemelor Linux, pun la dispoziŃia utilizatorului două medii de ecran: Gnome şi KDE.

InterfaŃa GNOME constă dintr-un panel şi un desktop. Panelul se găseşte în partea de sus a ecranului şi conŃine meniuri, progame şi appleturi. Un ecran GNOME afişează trei meniuri: Applications, Places şi System.

Din meniul Applications se poate selecta orice orice aplicaŃie care se execută pe calculatorul respectiv. Cu meniul Places se pot accesa câteva locaŃii foarte utilizate: directorul gazdă al utilizatorului (despre care vom discuta în al doilea modul), catalogul desktop, care conŃine fişierele afişate pe ecran şi fereastra Computer prin care putem accesa dispozitivele periferice, fişierele partajate din sistem şi toate directoarele din calculatorul respectiv. Meniul System include sub-meniurile Preferences şi Administration. Meniul Preferences este folosit pentru configurarea GNOME.

Pentru a muta o ferestră, cu click stânga pe mouse se trage fereastra respectivă. Fiecare fereastră are butoane pentru maximizare, minimizare şi închidere. Cu un Dublu-click pe bara de titluri maximizăm fereastra. Fiecare ferestră are un buton corespunzător în panelul de subsol. Putem folosi acest buton pentru a minimiza sau restaura fereastra respectivă. InterfaŃa GNOME suportă facilităŃile “drag-and-drop”; se pot trage pe ecran sau dintr-o fereastră în alta: directoare, icon-uri şi aplicaŃii .

GNOME furnizează tool-uri de configurare. Acestea sunt afişate în meniul System → Preferences, fiind organizate în mai multe sub-meniuri: Personal, Look and Feel, Internet and Network, Hardware şi System. Cele ce nu se încadrează în niciuna dintre categoriile enunŃate, sunt afişate direct. Fiecare asfel de fereastră are un buton Help, care prezintă o descriere a acesteia. Unele dintre cele mai importante astfel de tool-uri sunt: - Personal → Keyboard Shortcuts realizează corespondenŃe între taste şi anumite task-uri. - Personal →File Management determină modul de afişarea al directoarelor şi fişierelor. - Look and Feel → Windows permite adăugarea de facilităŃi sporite în manipularea ferestrelor (definirea unor taste pentru modificarea ferestrelor, selectarea cu mouse-ul a ferestrelor etc.)

Utilizarea applet-urilor GNOME. Pentru adăugarea applet-urilor, la panelul respectiv se dă click dreapta pe acesta şi se selectează intrarea Add, care listează toate applet-urile disponibile. Câteva dintre cele mai folositoare applet-uri sunt: căutare în dicŃionar, gradul de utilizare a CPU, verificarea funcŃionării monitorului etc.

InterfaŃa grafică KDE afiăează un panel în partea de jos a ecranului care are un aspect similar cu partea de sus a ecranului în cazul GNOME. Administratorul de fişiere apare puŃin diferit, dar operează în acelaşi mod cu cel din GNOME. În meniul principal, există o componentă Control Center, din care se pot configura fiecare componentă KDE. Într-un mod asemănător cu GNOME, se pot selecta applet-uri, pentu utilizări identice.

Interpretorul de comenzi. Sub Linux, atât comenzile cât şi interpretoarele de comenzi (shell) sunt procese care se execută în spaŃiul de memorie utilizator. Există mai multe interpretoare de comenzi care funcŃionează sub Linux; cele mai utilizate sunt sh, tcsh, bash.Pe un sistem de calcul, se poate lansa în execuŃie oricare dintre shell-urile amintite. După lansarea în execuŃie, shell-ul deschide un terminal virtual, de la care utilizatorul poate introduce propriile comenzi, recunoscute de limbajul de operare al sistemului. Aceste comenzi devin procese, care sunt procese fiu ale shell-ului. Despre noŃiunea de proces fiu vom discuta în modulul patru.

Page 8: Modulul 1. GeneralităŃi despre sistemele Linux 1.pdf · Introducere Sistemul de operare Linux, apărut la începutul anilor ’90, este un descendent al sistemelor Unix.. Linux

16

Pentru a se deschide un terminal virtual, se selectează din interfaŃa grafică Applications -> System Tools -> Terminal. Implicit, acesta va afişa o linie care conŃine numele de user, introdus când utilizatorul s-a conectat la sistem, numele directorului gazdă (despre care vom discuta în modulul următor) şi prompterul (de obicei caracterul $, pentru utilizatorul obişnuit, respectiv #, pentru utilizatorul cu drepturi de root ) care indică locul de unde se poate introduce o comandă. Caracterul utilizat ca prompter şi mesajul care apare înaintea lui, pot fi setate de utilizator, prin actualizarea unei variabile de sistem, care va fi descrisă în modulul trei. Forma unei comenzi Linux. În intrducerea şi editarea comenzilor se pot utiliza anumite combinaŃii de taste, prezentate în tabelul 1.1.

Tasta comb. de taste Efectul Ctrl-A Mută cursorul la începutul liniei de comandă Ctrl-C Termină executia programului şi afişează prompterul Ctrl-D Se iese din sesiunea shell curentă (acelaşi efect cu comenzile

exit sau logout)

Ctrl-E Mută cursorul la sfârşitul liniei de comandă Ctrl-H Generează caracterul Backspace Ctrl-L Şterge terminalul curent Ctrl-R Caută istoricul comenzilor introduse la acel terminal Ctrl-Z Suspendă execuŃia unui program Săgeată stânga / Săgeată dreapta

Mută cursorul pe linia de comandă cu o poziŃie la stânga, respectiv dreapta, loc în care se pot insera caractere

Săgeată sus/ Săgeată jos

Afişează comanda anterioară sau următoarea

Tab Terminarea comenzii sau a numelui de fişier Tab Tab Arată fişierul sau posibilităŃile de terminare a comenzii

Tabelul 1.1 CombinaŃii de taste O comanda Linux are 4 zone sau câmpuri:

• Primul câmp conŃine numele propriu-zis al comenzii, care indică ce acŃiune realizează comanda respectivă. • Al doilea este câmpul de opŃiuni; o opŃiune este de obicei o literă, care poate fi urmată de un argument şir de caractere sau un număr întreg. Un grup de opŃiuni poate începe cu semnul - sau +.

• Zona de expresii conŃine un şir de caractere cerute ca argumente pentru comanda respectivă. • Zona de fişiere conŃine numele fişierelor utilizate în cadrul comenzii lansate.

Să ne reamintim... InterfaŃa cu utilizatorii se poate face în mod text sau grafic. Componenta care permite acest lucru este consola. Terminalele virtuale sunt utilizate pentru introducerea de comenzi sub formă de texte.InterfaŃa grafică oferită de sistemele Linux se bazează pe X Window System; acesta este un cadru ce permite desenarea de ferestre pe un afişaj în care imaginea este reprezentată ca o matrice de puncte. Mediul de ecran include un administrator de ferestre, mai multe aplicaŃii şi o interfaŃă vizuală atractivă. Cele mai utilizate sunt Gnome şi KDE. Sub Linux, atât comenzile cât şi interpretoarele de comenzi (shell) sunt procese care se execută în spaŃiul de memorie utilizator.

Page 9: Modulul 1. GeneralităŃi despre sistemele Linux 1.pdf · Introducere Sistemul de operare Linux, apărut la începutul anilor ’90, este un descendent al sistemelor Unix.. Linux

17

I. Întrebări. 1. Care este deosebirea dintre serverul X şi o aplicaŃie client-server obişnuită. 2. Care componente conŃin specificaŃiile legate de felul cum arată interfaŃa cu utilizatorii. 3. Cum se lansează un terminal virtual.

M1.U1.6. Nucleul Linux

Nucleul Linux este un produs liber. Cea mai nouă versiune a nucleului sistemului de operare Linux poate fi descărcată de pe situl oficial http://kernel.org. Nucleul Linux este monolitic, adică, pentru a rezolva anumite necesităŃi ale sistemului, el se execută ca unic proces, într-un singur spaŃiu de memorie. Toate componentele lui funcŃionale, au acces la structurile de date şi rutinele pe care le gestionează. Orice modificare a nucleului, presupune o nouă editare de legături, reinstalarea şi, evident o nouă încărcare ale sistemului de operare. La prima vedere, orice modificare, cum ar fi adăugarea unui nou driver de dispozitiv sau a unei funcŃii a sistemului de fişiere, devine dificilă. Această problemă se rezolvă prin organizarea modulară a sistemului Linux. Astfel, pot fi adăugate sistemului de operare noi module sau se poate renunŃa la altele. Un modul este un fişier de cod obiect (încărcabil), către care se poate stabili o legătură de la nucleu sau invers sau se poate anula o legătură deja existentă.

Există două modalităŃi de legare a acestor module la nucleu: - prin legături realizate dinamic (pointeri) către modulul cerut; există comenzi Linux

prin care un proces executat în mod utilizator poate să facă o astfel de legătură; - prin dispunerea modulelor în cadrul unei stive, aranjate într-o structură ierarhică;

modulele care îndeplinesc o anumită funcŃionalitate (de exemplu, drivere pentru un anumit dispozitiv), sunt organizate ca o bibliotecă şi când este cerută de un modul utilizator, respectiva bibliotecă este scoasă din stivă. Orice proces lansat în execuŃie în mod utilizator interacŃionează cu nucleul prin

intermediul apelurilor de sistem, care pot fi grupate în mai multe categorii: - apeluri de sistem pentru accesarea sistemului de fişiere (tabelul 1.2); - apeluri de sistem pentru lucru cu procese (tabelul 1.3); - apeluri de sistem legate de planificarea execuŃiei proceselor (tabelul 1.4); - apeluri de sistem pentru comunicarea între procese (tabelul 1.5); - alte diverse apeluri (tabelul 1.6).

Din clasificarea prezentată, rezultă că nucleul realizează următoarele funcŃii: - Gestiunea proceselor şi a memoriei: prin apeluri de sistem, un proces cere serviciile

componentei de creare, administrare şi planificare a execuŃiei proceselor; aceasta intră în contact cu componenta de administrare şi alocare a memoriei virtuale, care lucrează împreună cu componenta de administrare a paginilor din memoria fizică, realizându-se astfel încărcarea paginilor virtuale în pagini fizice; de asemenea, prin intermediul CPU se transmite un semnal procesului cu privire la rezolvarea apelului solicitat.

- Accesarea controlată a dispozitivelor de tip caracter şi bloc prin intermediul driverelor. - Gestiunea fişierelor: prin apeluri de sistem, un proces cere serviciile sistemului de

fişiere, care gestionează o structură ierarhică de nume de directoare şi fişiere, cu informaŃii despre fiecare entitate a structurii respective; pe baza acestor informaŃii, folosind driverele de dispozitiv se accesează un anumit periferic, pe care se află fişierul căutat, unde se execută operaŃia cerută în apelul de sistem specificat.

- Accesarea mediului de reŃea prin intermediul protocoalelor de reŃea, care accesează driverele dispoziticvelor specifice lucrului în reŃea.

Page 10: Modulul 1. GeneralităŃi despre sistemele Linux 1.pdf · Introducere Sistemul de operare Linux, apărut la începutul anilor ’90, este un descendent al sistemelor Unix.. Linux

18

Apelul Descriere

open Deschide un fişier, asociindu-i un descriptor de fişier.

close Închide un descriptor de fişier. read Citeşte dintr-un fişier, identificat prin descriptorul asociat..

write Scrie într-un fişier,, identificat prin descriptorul asociat..

link Realizează o nouă legătură(nume) către un fişier..

Tabelul 1.2. Apeluri de sistem pentru accesarea sistemului de fişiere

Apelul Descriere

execve Execută un program. exit Terminarea procesului apelat. getpid ObŃinerea identificatorului de proces. setuid Setarea identificatorului de proces.

Tabelul 1.3 apeluri de sistem pentru lucru cu procese

Apelul Descriere

sched_getparam Setează parametrii de planificare asociaŃi cu o anumită politică pentr un anumit proces.

sched_get_priority_max Returnează valoarea maximă a priorităŃii care poate fi folosită cu un anumit algoritm de planificare

sched_setscheduler Setează politica de planificare şi parametrii asociaŃi. sched_rr_get_interval Stabileşte cuanta de timp în cadrul politicii de planificare

round robin. sched_yield Procesul renunŃă voluntary la serviciile CPU:

Tabelul 1.4. Apeluri de sistem legate de planificarea execuŃiei proceselor

Apelul Descriere

msgrcv Crează o structură buffer pentru primirea unui mesaj şi citeşte mesajul din coada de mesaje în structura nou creată.

semctl Execută o operaŃie de control specificată asupra unui semafor specificat.

semop Execută operaŃii asupra unei mulŃimi de semafoare selectate. shmat Ataşează un segment de memorie partajată la segmental de

memorie al unui process care a lansat apelul. shmctl Permite utilizatorului să primească informaŃii într-un segment de

memorie partajată, setând drepturile acelui segment. Tabelul 1.5. Apeluri de sistem pentru comunicarea între procese

Apelul Descriere

create_module Încearcă să creeze o intrare într-un modul încărcabil şi rezervă nucleului memoria necesară unde să facă încărcarea.

fsync Sincronizarea lucrului cu fişiere. query_module Cere informaŃii despre modulele încărcate în nucleu. time Returnează valoarea timpului în secunde trecut de la 1.01.1970. vhangup Simulează o “punere în furcă” (suspendare) a terminalului curent.

Tabelul 1.6. Alte apeluri diverse

Page 11: Modulul 1. GeneralităŃi despre sistemele Linux 1.pdf · Introducere Sistemul de operare Linux, apărut la începutul anilor ’90, este un descendent al sistemelor Unix.. Linux

19

Să ne reamintim... Nucleul Linux este monolitic, adică, pentru a rezolva anumite necesităŃi ale sistemului, el se execută ca unic proces, într-un singur spaŃiu de memorie. Orice modificare a nucleului, presupune o nouă editare de legături, reinstalarea şi, evident o nouă încărcare ale sistemului de operare.

I. Întrebări. 1. Ce operaŃii trebuie să se efectueze atunci când se face o modificare a nucleului. 2. Cum se face legarea la nucleu a unor module noi. 3. Cum interacŃionează procesele cu nucleul.

M1.U1.7. DistribuŃii Linux

Sistemele de operare Linux sunt disponibile sub formă de "distribuŃii". Unele dintre acestea sunt orientate spre utilizatorul particular, altele către servere sau către utilizatorii cu calculatoare mai vechi. Cele mai folosite distribuŃii de Linux sunt:

• Ubuntu este un proiect orientat spre utilizatorul obişnuit bazat pe Debian GNU/Linux, care a câştigat o mare popularitate prin faptul că este uşor de utilizat şi configurat, fiind în acelaşi timp puternic şi stabil. O distribuŃie înrudită cu ubuntu este Kubuntu, care foloseşte KDE. În prezent, Ubuntu este cea mai populară distribuŃie Linux.

• SuSE Linux (Software- und System-Entwicklung, în limba germană, Dezvoltare de software şi sisteme, în limba română) este o distribuŃie orientată atât către servere cât şi spre staŃii de lucru sau desktopuri, fiind caracterizată de uşurinŃa în utilizare şi configurare. Este produsă de compania germană SuSE, parte a grupului Novell.

• Fedora este continuatoare a proiectului Red Hat Linux, care conŃine software liber şi disponibil gratuit de pe Internet.

• Debian GNU/Linux este una din distribuŃiile cele mai complexe care conŃine un număr foarte mare de pachete de programe, precum şi un manager propriu de pachete.

• Mandriva Linux (denumită anterior Mandrake Linux) este o distribuŃie uşor de utilizat, orientată spre utilizatorii desktop; a fost creată de compania franceză Mandriva.

• PCLinuxOS este o distribuŃie derivată din Mandriva Linux, destinată mediului desktop şi care se remarcă prin usurinŃa instalării, fiind adecvată pentru utilizatorii începători.

• Slackware Linux este una din cele mai vechi distribuŃii, având ca moto "łine (lucrurile) simple". DistribuŃiei îi lipsesc unelte de configurare uşoară, dar beneficiază de viteză mare de rulare, posibilitate a de a fi instalată pe hardware mai vechi şi o organizare simplă a sistemului.

• Gentoo Linux este destinată utilizatorilor avansaŃi; fiind orientată spre realizarea şi rularea unor aăplicaŃii complexe, distribuŃia se remarcă prin timpul foarte lung necesar instalării, care necesită de regulă compilarea şi optimizarea pachetelor pe sistemul pe care se face instalarea (spre deosebire de majoritatea distribuŃiilor, care instalează software precompilat). Acest lucru are ca rezultat ulterior un spor de performanŃă, dar şi o configurare mai dificilă. Gentoo beneficiază de un manager propriu de pachete.

• Knoppix este o distribuŃie „live” care rulează direct de pe CD sau DVD, fără a instala nimic pe hard disk, ce poate fi utilizată, pentru diagnosticări de sistem, reparări, recuperări de date etc.

Page 12: Modulul 1. GeneralităŃi despre sistemele Linux 1.pdf · Introducere Sistemul de operare Linux, apărut la începutul anilor ’90, este un descendent al sistemelor Unix.. Linux

20

• RedHat Linux este una din cele mai cunoscute distribuŃii; în prezent este o distribuŃie comercială, orientată exclusiv spre piaŃa serverelor şi spre mediul de afaceri. Este distribuŃia care a dat naştere proiectului Fedora Core.

• Slax este o distribuŃie "live" bazată pe Slackware, care poate rula de pe CD sau DVD sau de pe o memorie Flash de 256 MB.

• NimbleX este o distribuŃie "live", produsă în România şi bazată pe Slackware, care rulează direct de pe CD, mediu USB sau din reŃea. DistribuŃia nu ocupă mult spaŃiu, are o interfaŃă grafică puternică şi atractivă şi include un număr mare de programe pentru navigarea pe Internet, editarea de documente, redare de conŃinut multimedia etc.

• TFM/GNU Linux este o distribuŃie destinată atât serverelor de Linux cât şi staŃiilor de lucru. Este produsă în România, stabilă, uşor de instalat şi care nu necesită cunoştinŃe avansate de Linux. În tabelul 1.7 sunt prezentate siturile oficiale ale distribuŃiilor de Linux, de unde se pot

descărcă nucleul, pachete de programe şi documentaŃii ale distribuŃiei respective.

DistribuŃie Site oficial Ubuntu //www.ubuntu.com/ SuSE Linux //www.novell.com/linux/ Fedora www.fedoraproject.org/ Debian GNU/Linux www.debian.org/ Mandriva Linux www2.mandriva.com/fr/ PCLinuxOS www.pclinuxos.com/ Slackware Linux www.slackware.com/ Gentoo Linux www.gentoo.org/ Knoppix www.knoppix.org/ RedHat Linux www.redhat.com/ Slax www.slax.org/ NimbleX www.nimblex.net/ TFM/GNU Linux www.tfm.ro/

Tabelul 1.7. Siturile oficiale ale distribuŃiilor de Linux

Să ne reamintim... Sistemele de operare Linux sunt disponibile sub formă de distribuŃii. Cele mai folosite distribuŃii de Linux sunt: Ubuntu, SuSE Linux, Fedora, Debian GNU/Linux, Mandriva Linux, PCLinuxOS, Slackware Linux, Gentoo Linux, Knoppix, RedHat Linux, Slax, NimbleX, TFM/GNU Linux.

I. Întrebări. 1. Care este considerată una dintre cele mai populare distribuŃii de Linux. 2. SpecificaŃi distribuŃiile care rulează direct de pe CD sau DVD. 3. Care distribuŃie este continuatoarea liberă a proiectului RedHat.

M1.U1.8. ObŃinerea de informaŃii despre comenzi

Utilizarea paginilor manualelor se face cu comanda: man [optiuni]nume_comanda

în care nume_comanda este numele comenzii despre care dorim să aflăm informaŃii. InformaŃiile obŃinute sunt complexe, dar bine structurate. Dacă se tastează comanda man man se obŃine o imagine (figura 1.1) a modului cum sunt structurate informaŃiile din

Page 13: Modulul 1. GeneralităŃi despre sistemele Linux 1.pdf · Introducere Sistemul de operare Linux, apărut la începutul anilor ’90, este un descendent al sistemelor Unix.. Linux

21

manualele Linux. Afişarea paginilor din manuale, relativ la comanda specificată ca argument, se face la terminalul de la care a fost tastată comanda man.

Prima linie conŃine numele comenzii specificate şi secŃiunea în care sunt localizate paginile din manuale. Aceste pagini sunt organizate pe secŃiuni. Comenzile pot avea pagini în mai multe secŃiuni (paginile din secŃiunea utilizatori, paginile din secŃiunea administratorului de sistem, paginile din secŃiunea programatorilor).

Urmează numele comenzii împreună cu o scurtă descriere, după care este prezentată sintaxa completă a comenzii, cu toate opŃiunile şi/sau argumentele pe care le suportă comanda respectivă. OpŃiunile specifică modalitatea de execuŃie a comenzii. Argumentul indică asupra cui acŃionează comanda respectivă. Anumite comenzi nu au opŃiuni sau argumente. OpŃiunile şi argumentele opŃionale, adică cele care pot fi lăsate necompletate, sunt puse între simbolurile „[” şi „ ]”. Urmează o descriere mai detaliată a comenzii. Sunt listate opŃiunile, împreună cu descrierea acestora. De regulă, opŃiunile pot fi combinate; în vaz contrar, în această secŃiune se va specifica acest lucru. Pentru unele comenzi, sunt descrise variabilele a căror setare influenŃează modul de execuŃie al comenzii respective. În unele situaŃii, există şi secŃiuni specifice comenzii discutate. ReferinŃele către alte pagini din manuale sunt date în secŃiunea „SEE ALSO”. Între paranteze este prezentat numărul secŃiunii în care găsim comanda respectivă.

Despre anumite comenzi, se pot găsi informaŃii în mai multe secŃiuni din manual. Dacă se specifică numărul secŃiunii, ca opŃiune, atunci se afişeză informaŃiile numai din pagina respectivă. Dacă nu se specifică secŃiunea, sunt prezentate cele din secŃiunea cu cel mai mic număr de identificare. Dacă dorim vă fie prezentate toate paginile de manual ale unei comenzi, una după cealaltă, folosim opŃiune –a.

Trecerea de la o pagină la alta se face tastând caracterul spaŃiu. Ne putem întoarce la pagina precedentă folosind tasta „b”. Când ajungem la sfârşitul afişării, la consola va apare prompterul. Tastăm „q” dacă dorim să ieşim dintr-o pagină înainte de a ajunge la sfârşitul afişării sau dacă programul nu se închide automat la sfârşitul paginilor.

Figura 1.1. Vizualizarea comenzii man

Page 14: Modulul 1. GeneralităŃi despre sistemele Linux 1.pdf · Introducere Sistemul de operare Linux, apărut la începutul anilor ’90, este un descendent al sistemelor Unix.. Linux

22

Exemplu. Comanda passwd este utilizată pentru schimbarea parolei de către un utişizator. InformaŃii despre această comandă putem găsi în secŃiunile 1 şi 5. Dacă tastăm: man 1 passwd Sunt afişate informaŃiile din secŃiunea 1, cea cu numărul cel mai mic. Acelaşi efect se obŃine dacă se tasteză man 1 passwd. Cu man -a passwd, se afişează poate informaŃiile despre comanda passwd.

Utilizarea comenzii Info. InformaŃiile obŃinute cu această comandă sunt mai recente şi mai uşor de utilizat În multe cazuri, paginile din manuale fac trimitere la paginile info. Prin tastarea comenzii info info sunt prezentate informaŃii despre comanda info (figura 1.3). Cu tastele săgeŃi se poate naviga prin text şi poziŃiona cursorul pe o linie care începe cu un asterisc şi care conŃine cuvântul cheie despre care dorim informaŃii, apoi apăsăm tasta Enter. Folosim tastele P şi N pentru a merge la subiectul anterior sau următor. Tasta SPACE va afişa următoarea pagină, indiferent dacă pe pagina următoare se tratează un subiect nou sau o nouă comandă. Folosim Q pentru ieşire.

Cu comanda whatis se pot obŃine explicaŃii scurte despre comenzi. De asemenea, este afişată secŃiunea de manual în care se găsesc informaŃii despre comanda respectivă. Cu opŃiunea –help, care urmează o comandă, se obŃin explicaŃii scurte despre utilizarea comenzii şi o listă a opŃiunilor disponibile.

Figura 1.3. InformaŃii de manual despre comanda info

Să ne reamintim... Utilizarea paginilor manualelor se face cu comanda man

nume_comanda, în care nume_comanda este numele comenzii despre care dorim să aflăm informaŃii. Afişarea paginilor din manuale, relativ la comanda specificată ca argument, se face la terminalul, de la care a fost tastată comanda man.Aceste pagini sunt organizate pe secŃiuni. Comenzile pot avea pagini în mai multe secŃiuni (paginile din secŃiunea utilizatori, paginile din secŃiunea administratorului de sistem, paginile din secŃiunea programatorilor). InformaŃiile obŃinute cu comanda info sunt mai recente şi mai uşor de

Page 15: Modulul 1. GeneralităŃi despre sistemele Linux 1.pdf · Introducere Sistemul de operare Linux, apărut la începutul anilor ’90, este un descendent al sistemelor Unix.. Linux

23

utilizat În multe cazuri, paginile din manuale fac trimitere la paginile info. Cu comanda whatis se pot obŃine explicaŃii scurte despre comenzi. Cu opŃiunea –help,care urmează o comandă, se obŃin explicaŃii scurte despre utilizarea comenzii şi o listă a opŃiunilor disponibile.

I. Întrebări. 1. Dacă în comanda man nu este prezent decât numele comenzii respective, care dintre informaŃiile din manual se listează. 2. Care sunt avantajele utilizării comenzii info. 3. Cum se pot obŃine informaŃii scurte despre comenzi.

M1.U1.9. Test de evaluare a cunoştinŃelor MarcaŃi varianta corectă.

1. Versiunea care a fost prima lansată în afara Bell Labs şi ale cărei componente sunt majoritar scrise în limbajul C este: a) versiunea 1 c) versiunea 6

b) versiunea 7 d) versiunea 5

2. Care dintre componentele POSIX se referă la interfaŃa cu sistemul: a) POSIX.1 c) POSIX.3 b) POSIX.4 d) POSIX.2

2. Care versiune Linux a inclus suportul necesar arhitecturilor pe 64 de biŃi: a) 1.0 c) 2.0 b) 1.1 d) 2.1

3. Cum se numeşte componentă Linux de verificare a fişierelor sursă ale unei aplicaŃii, pentru a vedea care dintre ele sunt compilate şi care nu: a) SSCC c) CCSS b) CSSC d) SCCS

4. Serverul X rulează pe: a) Calculatorul pe care se execută serverul de nume.

c) Calculatorul la care s-a conectat utilizatorul

b) Calculatorul pe care se execută serverul de samba.

d) Calculatorul la care lucrează administratorul.

5. Care dintre componentele sistemului de operare sunt scrise în limbajul de asamblare al calculatorului gazdă: a) Nucleul c) Driverele de memorie. b) Bibliootecile d) Driverele de dispozitiv

6. Prin ce combinaŃie de taste se caută istoricul comenzilor introduse de la acel terminal: a) Ctrl-L c) Ctrl-C b) Ctrl-R d) Ctrl-F

7. Prin ce combinaŃie de taste se termină executia programului şi afişează prompterul a) Ctrl-L c) Ctrl-C b) Ctrl-R d) Ctrl-F

8. Termenul de monolitic se referă la: a) X-Window system c) Sistemul de operare. b) Nucleu. d) Sistemul de fişiere.

Page 16: Modulul 1. GeneralităŃi despre sistemele Linux 1.pdf · Introducere Sistemul de operare Linux, apărut la începutul anilor ’90, este un descendent al sistemelor Unix.. Linux

24

9. Continuatoarea a proiectului Red Hat Linux este: a) Fedora c) Gentoo Linux b) PCLinuxOS d) Knoppix

10.Pentru a afişa toate informaŃiile din paginile de manual, în comanda man se foloseşte opŃiunea: a) -s c) -m b) -p d) -a 11. Se obŃin informaŃii mai recente şi mai uşor de utilizat, despre o comandă cu: a) whatis c) Info b) --help d) man

M1.U1.10. Rezumat. Întreaga evoluŃie a sistemelor de operare Unix şi Linux este caracterizată de introducerea unor concepte noi. Astfel, chiar prima versiune a sistemului de operare UNIX a introdus un interpretor de comenzi care să fie un proces utilizator şi fiecare comandă să fie un proces; de asemenea a implementat un sistem ierarhic de organizare a fişierelor. Unele dintre marile firme de software şi marile universităŃi americane şi-au adus contribuŃia la dezvoltarea Unix-ului. Un aspect important, este standardizarea diverselor versiuni ale sistemului Unix. Linux este un continuator al Unix, care a preluat facilităŃile oferite utilizatorilor, dar spre deosebire de acesta este un produs liber, fiind pus la dispoziŃia tuturor celor interesaŃi pe Internet.

Linux -ul este un sistem de operare multi-user şi multi-tasking ce oferă utilizatorilor numeroase utilitare interactive. Unix şi Linux au fost proiectate de programatori pentru programatori. Pornind de la acest fapt, interactivitatea şi facilităŃile de dezvoltare ale programelor au fost elemente prioritare ale proiectanŃilor sistemului. Interactivitatea sistemului este facilitată şi de interfaŃa cu utilizatorul, care poate fi înlocuită sau dezvoltată, fiind ea însăşi un proces.

InterfaŃa cu utilizatorii se poate face în mod text sau grafic. Terminalele virtuale sunt utilizate pentru introducerea de comenzi sub formă de texte. Sub Linux, atât comenzile cât şi interpretoarele de comenzi (shell) sunt procese care se execută în spaŃiul de memorie utilizator. InterfaŃa grafică oferită de sistemele Linux se bazează pe X Window System; acesta este un cadru ce permite desenarea de ferestre pe un afişaj în care imaginea este reprezentată ca o matrice de puncte.

O componentă esenŃială a sistemului Linux este nucleul, carea are o organizare monolitică; pentru a rezolva anumite necesităŃi ale sistemului, el se execută ca unic proces. Orice modificare a nucleului, presupune o nouă editare de legături, reinstalarea şi, evident o nouă încărcare ale sistemului de operare.

Sistemele Linux conŃin manuale interactive prin care sunt oferite informaŃii despre comenzi. Utilizarea paginilor manualelor se face cu comanda man. InformaŃiile obŃinute cu comanda info sunt mai recente şi mai uşor de utilizat În multe cazuri, paginile din manuale fac trimitere la paginile info. Cu comanda whatis se pot obŃine explicaŃii scurte despre comenzi. Cu opŃiunea –help,care urmează o comandă, se obŃin explicaŃii scurte despre utilizarea comenzii şi o listă a opŃiunilor disponibile.