Cuprins
- 1. Aspecte generale ale sistemelor de operare pag 03
- 1.1 Sisteme de operare; definiţii, componente, clasificări pag 03
- 1.2 Resursele unui sistem de calcul; gestionarea resurselor pag 06
- 1.3 Concluzii pag 07
- 2. Programare C / C++ sub Windows şi Unix pag 08
- 2.1 Linux: GCC si MAKE; Depanarea programelor cu GDB pag 08
- 2.2 Windows : Compilatorul Microsoft cl.exe, Nmake pag 14
- 2.3 Procese în Linux pag 16
- 2.4 Procese în Windows pag 22
- 2.5 Alocarea memoriei în Linux pag 29
- 2.6 Alocarea memoriei în Windows pag 30
- 2.7 Operaţii pe fişiere în Linux pag 31
- 2.8 Operaţii pe fişiere în Windows pag 34
- 2.9 Lock-uri pe fişiere în Linux pag 42
- 2.10 Lock-uri pe fişiere în Windows pag 43
- 2.11 Redirectări pag 45
- 2.12 Pipe-uri în Linux pag 47
- 2.13 Pipe-uri în Windows pag 50
- 3. Dezvoltarea unui shell universal pag 55
- 3.1 Functionalitatea Unix pag 57
- 3.2 Functionalitatea Windows pag 58
- 4. Programe utilitare pag 60
- 4.1 Utilitar de criptare / decriptare folosind algoritmul RSA pag 60
- 4.2 Client POP 3 pag 61
- 4.3 Utilitar de transmisie fisiere in mod criptat folosind ENIGMA pag 61
- 4.4 Utilitar de mesagerie folosind protocolul RIP pag 63
- Bibliografie pag 64
Extras din proiect
ASPECTE GENERALE ALE SISTEMELOR DE OPERARE WINDOWS ŞI UNIX
1.1 Sisteme de operare; definiţii, componente, clasificări
Sistemul de operare reprezintă ansamblul de programe care asigură utilizarea optimă a resurselor fizice şi logice ale unui sistem de calcul. El are rolul de a gestiona funcţionarea componentelor hardware ale sistemului de calcul, de a coordona şi controla execuţia programelor şi de a permite comunicarea utilizatorului cu sistemul de calcul. Pe scurt, sistemul de operare este componenta software care coordonează şi supraveghează întreaga activitate a sistemului de calcul şi asigură comunicarea utilizatorului cu sistemul de calcul.
Din punctul de vedere al interacţiunii cu componentele hardware ale sistemului de calcul şi după modul de implementare a software-ului, sistemul de operare este organizat pe două niveluri:
a. nivelul fizic include componenta firmware a sistemului de calcul; acest nivel oferă servicii privind lucrul cu componentele hardware ale sistemului de calcul şi cuprinde acele elemente care depind de structura hardware a sistemului. Tot în nivelul fizic sunt incluse programe a căror execuţie este indispensabilă, de exemplu programul care lansează încărcarea automată a sistemului de operare, la pornirea calculatorului.
La acest nivel, comunicarea cu sistemul de calcul se realizează prin intermediul sistemului de întreruperi, prin care se semnalează anumite evenimente apărute în sistem; la apariţia unei întreruperi, controlul este dat unor rutine de pe nivelul următor al sistemului de operare;
b. nivelul logic include partea de programe a sistemului de operare şi oferă utilizatorului mijloacele prin care poate exploata sistemul de calcul; comunicarea utilizatorului cu sistemul de calcul se realizează prin comenzi adresate sistemului de operare sau prin intermediul instrucţiunilor programelor pe care le execută; invers, comunicarea se realizează prin intermediul mesajelor transmise de sistemul de operare către utilizator.
Programele nivelului logic adresează dispozitivele hardware prin intermediul programelor nivelului fizic al sistemului de operare şi din acest motiv ele sunt independente de structura hardware a sistemului de calcul : nivelul fizic constituie o interfaţă între hardware şi nivelul logic al sistemului de operare.
Din punct de vedere funcţional, programele sistemului de operare se împart în două categorii :
a. Componenta de comandă şi control, care cuprinde programe ce au rolul de a asigura utilizarea eficientă a resurselor sistemului de calcul.
b. Componenta de servicii, care cuprinde programe destinate minimizării efortului uman implicat de utilizarea sistemului de calcul.
Funcţia sistemului de operare de optimizare a exploatării unui sistem de calcul este împărţită între cele două componente, conform schemei din Figura 1.1. Accesibilitatea, diversitatea şi numărul componentelor software creşte de la stânga la dreapta, în diagramă, în timp ce numărul şi nivelul de specializare al utilizatorilor acestor programe scade de la stânga la dreapta. Atât pentru proiectarea cât şi pentru utilizarea lor, componentele software se sprijină pe alte componente software, aflate la stânga lor, în diagramă.
Pentru utilizarea eficientă a resurselor sistemului de calcul, unele sisteme de operare pot gestiona execuţia concurentă a mai multor procese, asigurând proceselor din sistem accesul concurent la resursele sistemului sau partajarea resurselor. Aceasta înseamnă că, la un moment dat, în sistem se pot afla în execuţie mai multe procese care concurează între ele pentru accesul la resursele sistemului iar sistemul de operare gestionează resursele sistemului pentru satisfacerea cât mai multor cereri ale acestor procese pentru alocarea de resurse.
O caracteristică importantă a unui sistem de operare este măsura în care poate asigura execuţia concurentă a proceselor. După acest criteriu, sistemele de operare pot fi:
• monotasking, care nu asigură execuţia concurentă şi nici partajarea resurselor între mai multe procese. Sub controlul unui sistem de operare monotasking, la un moment dat, în sistemul de calcul se poate executa un singur program; acesta rămâne activ din momentul lansării lui în execuţie şi până la terminarea lui completă; cât timp este în execuţie, programul are acces la toate resursele sistemului de calcul.
• multitasking sunt acele sisteme de operare care asigură execuţia concurentă a mai multor procese care există concomitent în sistem. Exemplu: sistemele de operare Windows, Unix sunt sisteme multitasking.
În plus faţă de sistemele de operare monotasking, pentru un sistem de operare multitasking trebuiesc definite strategiile de alocare a resurselor la procesele concurente, strategii care vor fi folosite de componentele sistemului de operare pentru gestionarea resurselor.
Un sistem de operare are rolul de a interfaţa comunicarea între utilizator şi sistemul de calcul. Tendinţa actuală în cererea utilizatorilor este de a creşte atât gradul de interacţiune cu sistemul de calcul cât şi gradul de accesibilitate al interfeţei cu sistemul de calcul; aceste două tendinţe, în general contradictorii, determină creşterea complexităţii componentei sistemului de operare care asigură interfaţa cu utilizatorul.
Pe de altă parte, din punctul de vedere al gradului de utilizare şi al accesibilităţii sistemului de calcul, o caracteristică importantă este numărul de utilizatori care pot avea acces, la un moment dat, la sistem.
Din punctul de vedere al accesului utilizatorilor la sistem şi al gradului de interacţiune cu sistemul, sistemele de operare pot fi:
• seriale, acele sisteme de operare pentru care gradul de interacţiune cu utilizatorul, în timpul prelucrărilor, este nul. De cele mai multe ori, interfaţa dintre sistemul de operare si utilizator nu dispune de un limbaj de comandă accesibil utilizatorului obişnuit, motiv pentru care comunicarea dintre utilizator şi sistem nu este directă ci mediată de persoane specializate ca operatori de calculator. În timpul execuţiei lucrării sale, utilizatorul pierde total controlul asupra prelucrării; el furnizează datele care se prelucrează odată cu formularea cererii de prelucrare şi primeşte rezultatele prelucrării la încheierea execuţiei.
Preview document
Conținut arhivă zip
- Aspecte Generale ale Sistemelor de Operare Windows si Unix.doc