Cuprins:
1. Organizarea şi componentele unui sistem de operare
2. Clasificarea sistemelor de operare
3. Sisteme de fişiere
4. Sisteme de operare
Cuprins:
1. Organizarea şi componentele unui sistem de operare
2. Clasificarea sistemelor de operare
3. Sisteme de fişiere
4. Sisteme de operare
La nivelul unui sistem de calcul există două categorii de programe:
- programe de sistem (sistemul de operare) – colecţie de programe care coordonează activitatea componentelor fizice şi oferă utilizatorului posibilitatea folosirii eficiente a sistemului de calcul, concurând la dezvoltarea programelor de aplicaţie. Software-ul de sistem include:
- programe de aplicaţii – destinate să rezolve probleme specifice unei clase de probleme ale utilizatorilor. Software-ul de aplicaţie include:
Sistemul de operare = interfaţă între componenta hardware a unui sistem de calcul şi programele de aplicaţie ale utilizatorului
Funcţiile unui sistem de operare
a) pregătirea şi lansarea în execuţie a programelor de aplicaţie (dezvoltarea interactivă a unui task)
b) alocarea resurselor necesare executării programelor prin identificarea programelor ce se execută, a necesarului de memorie şi a dispozitivelor periferice, identificarea şi protecţia colecţiilor de date
c) gestiunea fişierelor şi directoarelor prin programele utilitare disponibile
d) planificarea execuţiei lucrărilor după anumite criterii (timp de execuţie, priorităţi, tehnica FIFO, LIFO etc.) pentru utilizarea eficientă a UCP în cazul lansării mai multor programe în execuţie
e) coordonarea execuţiei mai multor programe prin urmărirea modului de execuţie a instrucţiunilor programelor, depistarea şi tratarea erorilor, lansarea în execuţie a operaţiilor de intrare/ieşire şi depistarea eventualelor erori
f) asistarea execuţiei programelor de către utilizator prin comunicarea sistem de calcul-utilizator atât la nivel hardware, cât şi la nivel software
g) organizarea şi protejarea datelor în memorie
Organizarea sistemelor de operare
- nivelul fizic – apropiat de partea hardware a sistemului de calcul, interacţionează cu aceasta prin intermediul sistemului de întreruperi;
- nivelul logic – apropiat de utilizator, interacţionează cu acesta prin intermediul unor comenzi, limbaje de programe, utilitare etc.
Programele de comandă-control (situate la nivelul fizic) au rolul de coordonare şi control a tuturor funcţiilor sistemului de operare, cum ar fi: procese de intrare/ieşire, execuţia întreruperilor, comunicaţia hardware-utilizator.
- rutine rezidente – sunt păstrate în memoria internă pe tot parcursul execuţiei de către sistemul de calcul a oricăror programe şi formează nucleul (kernel-ul) sistemului de operare;
- rutine tranziente – rămân în memoria externă cu celelalte componente ale sistemului de operare şi sunt încărcate în memoria internă doar când programele de servicii sau programele de aplicaţii le solicită (prin intermediul nucleului sistemului de operare).
Programe de servicii (prelucrări, situate la nivelul logic) sunt executate sub supravegherea programelor de comandă-control, fiind utilizate de programatori pentru dezvoltarea programelor de aplicaţie.
- editoarele de text – componente destinate creării şi modificării programelor sursă. Fişierele, ce conţin caractere în codul ASCII, sunt asimilate unor texte şi vor constitui sursa programelor (scrise în diverse limbaje de programare). Extensii tipice: .pas (Pascal), .c (C), .cpp (C++), .asm (Assembler), .bas (Basic) (PS – Programe Sursă)
- translatoare de limbaje – au rolul de a traduce programele sursă într-o formă binară recunoscută de sistemul de calcul. Programul în formă binară se numeşte programul obiect (extensie .obj) şi conţine instrucţiuni în limbaj maşină ce sunt recunoscute şi executate de sistemul de calcul. Translatoarele de limbaj pot fi:
- editoarele de legături (link editor) – prelucrează modulele obiect şi le asamblează într-un modul executabil, preluând module obiect din bibliotecile de sistem şi eventual din bibliotecile utilizatorului. Editorul de legături alocă adresele reale de memorie şi construieşte structura pe segmente impusă de sistemul de calcul în vederea execuţiei programelor. (Program Obiect Executabil – POE), extensia .exe, .com.
- încărcătorul (loader) încarcă în memoria internă (RAM) în vederea execuţiei, programele obiect executabile. Dacă lansarea în execuţie se realizează automat după încărcarea programului în memorie, încărcătorul este de tip LOAD and GO.
- depanatoare (debugger) oferă mijloace pentru depanarea şi controlul programului, prin:
- utilitare care sunt destinate să execute anumite funcţii de interes general, prin specificarea unor comenzi localizate fie în interpretorul de comenzi, fie ca fişiere executabile localizate pe suportul de memorie externă.
Sistemul de operare este constituit din trei componente:
- Nucleul (Kernel) include funcţiile de nivel jos care vor fi încărcate în memorie după execuţia procesului de iniţializare a calculatorului. Un exemplu ar fi modulul care realizează controlul fluxului de date între memorie şi unităţile de I/O.
- Interpretorul de comenzi (Shell) asigură interfaţa între utilizator şi calculator
- Sistemul de fişiere (File System) - reprezintă, pe scurt, modalitatea de organizare a fişierelor pe disc.
Există o diversitate de sisteme de fişiere:
Există două modalităţi prin care utilizatorii pot accesa facilităţile unui sistem de operare:
- linia de comandă
- apeluri de sistem
După numărul de utilizatori:
Aceste sisteme de operare permit mai multor utilizatori să folosească sistemul în acelaşi timp şi să execute programele în mod simultan. În această categorie putem include sistemele de operare din familiile UNIX, Linux şi Windows.
După numărul procesoarelor utilizate:
Sunt sistemele de operare care permit utilizarea mai multor procesoare. Sistemele de operare incluse în această categorie sunt: UNIX, Linux, Windows NT/2000/XP.
După posibilitatea de a executa mai multe sarcini (task) simultan:
După modul de execuţie a firelor de execuţie (thread) ale programelor:
După numărul sistemelor de calcul implicate în execuţie:
După 1980, odată cu apariţia primelor reţele de calculatoare, au început să se folosească sistemele de operare în reţea sau sistemele de operare distribuite, ca o completare a sistemelor de operare centralizate (care mai sunt cunoscute ca sisteme de operare monoprocesor).
După modul de interacţiune cu utilizatorul:
Reprezintă o structură de memorare, aranjare şi regăsire a fişierelor şi directoarelor de pe un disc. Sistemul de fişiere se caracterizează prin:
- structură ierarhică: organizarea este arborescentă, cu un director rădăcină (root) la care se conectează fişiere, alte directoare sau legături. Fişierele pot fi privite ca “frunze”, iar directoarele ca “noduri” ale acestui arbore. Un director poate conţine fişiere sau alte subdirectoare.
- independenţa faţă de hardware-ul sistemului de calcul: fişierele sunt privite ca succesiuni de octeţi legate între ele în funcţie de modul de organizare a datelor pe disc
- flexibilitate: oricând este posibilă ştergerea unui fişier (“frunză”) sau subdirector (“nod”) din acest arbore sau inserarea unei noi sub-structuri arborescente.
A apărut în anul 1981, odată cu prima versiune a sistemului MS-DOS (Disk Operating System), aflat sub patronajul Microsoft şi distribuit împreună cu calculatoarele personale tip IBM-PC.
Nume | FAT12 | FAT16 | FAT32 |
12 biţi | 16 biţi | 28 biţi (4 biţi rezervaţi) | |
Introdus | 1977-1980 | 1984-1987 | 1996 |
Capacitate maximă | 16 MB | 2 GB | 2 TB (1 TB = 240 bytes) |
Cluster | 0,5 KB – 4KB | 2 KB – 32 KB | 4 KB -32 KB |
Număr maxim clustere | 4086 | 65.526 | ~268.435.456 |
Nume fişiere | 8.3 | 8.3 | LFN |
Sistem operare | DOS | DOS, Windows 3.x | după Windows 95 OSR 2 |
FAT12 – Este destinat unităţilor floppy-disk şi hard-disk-urilor de capacităţi mici (sub 16 MB).
FAT16 – A apărut odată cu sistemul de operare MS-DOS 3.0, ulterior noului calculator IBM PC AT (Advanced Technology) – 1984 – care avea hard-disk de 20 MB.
VFAT – Virtual FAT a apărut ca driver în sistemul Windows 95 (1995) pentru a asigura accesul aplicaţiilor specifice Windows 95 la fişiere cu nume lungi (LFN – Long File Name, maxim 255 caractere) ce nu puteau fi gestionate de sistemul de fişiere FAT.
Totuşi, VFAT a apărut înaintea Windows 95, în Windows for Workgroups 3.1, doar pentru implementarea accesului pe 32 biţi la fişiere, unde lucra în modul protejat împreună cu VCACHE (driver pentru realizarea memoriei cache a discului).
FAT32 – Permite atât gestionarea fişierelor cu nume lungi, cât şi o optimizare a spaţiului ocupat de fişierele mici pe disc, prin micşorarea dimensiunii cluster-ului.
Exemplu: o partiţie de 2 GB pe sistemul FAT16 va avea 65.526 clustere (216 fără câteva valori rezervate) de câte 32 KB (64 sectoare), iar pe sistemul FAT32, 524.208 clustere de câte 4 KB (8 sectoare). Un fişier de 3 KB va “risipi” 29 KB pe sistemul FAT16 şi doar 1 KB pe sistemul FAT32.
exFAT – În 2008, Microsoft introduce sistemul de fişiere FAT64 (exFAT) în special pentru memorii flash; Windows Vista SP1 aduce suport pentru acest sistem de fişiere ce permite dimensiunea maximă a unui fişier de 16 exabytes (1 EB = 260 B).
Este un sistem de fişiere dezvoltat pentru Windows NT 3.1 (la mijlocul anului 1993) şi dezvoltat ulterior la versiunile 1.2 (cunoscut şi ca NTFS 4.0 pentru Windows NT 3.5 şi 4.0), NTFS 5.0 (Windows 2000), NTFS 5.1 (Windows XP), NTFS 5.2 (Windows Server 2003), NTFS 6.0 (Windows Vista, Windows Server 2008).
Nume | NTFS |
Introdus | 1993 |
Capacitate maximă | 264B – 1KB |
Nume fişiere | 255 caractere UTF-16 |
Sistem operare | Familia Windows NT |
Microsoft preferă sistemul de fişiere NTFS faţă de FAT datorită următoarelor avantaje:
La nivel de securitate, NTFS aduce câteva elemente noi, care nu existau la sistemul de fişiere FAT:
Ext este un sistem de fişiere realizat în 1992 special pentru sistemul de operare Linux. Au urmat versiunile 2 (1993), 3 (1999) şi 4 (lansată preliminar la sfârşitul anului 2006 şi ca variantă stabilă în 2008).
Nume | EXT2 |
Introdus | 1993 |
Capacitate maximă | 16-32 TB |
Nume fişiere | 255 caractere |
Număr maxim fişiere | 1018 |
Dimensiunea maximă a unui fişier | 2 TB (kernel<2.6) – 64 TB |
Sistem operare | Linux, BSD, Mac OS X |
EXT2 (Second Extended)
Spaţiul este împărţit în blocuri şi organizat sub formă de grupuri de blocuri în scopul reducerii fragmentării datelor şi minimizarea căutărilor (disk seek) la citirea unei mari cantităţi de date consecutive. Fiecare grup de blocuri conţine:
- un superbloc (metainformaţii esenţiale şi statistici despre sistemul de fişiere);
- un descriptor de grup, cu informaţii despre grupul de blocuri, inode şi începutul tabelei de inoduri pentru fiecare grup de blocuri;
- blocuri de date (conţinutul efectiv al fişierelor).
Un inode identifică în mod unic un fişier de pe disc şi deţine informaţii despre acesta (uid – user id, gid – group id, drepturi de acces – Read, Write, eXecute, lungime, timpi de acces / modificare, numărul de legături, pointeri la blocurile de date).
EXT3 (Third Extended Filesystem)
EXT3 este compatibil cu sistemul de fişiere EXT2, adăugând facilitatea de jurnalizare (o metodă de recuperare mai bună a datelor în caz de oprire necorespunzătoare a sistemului, prin introducerea unui jurnal care va fi analizat şi corectat pentru a reface sistemul de fişiere, în locul verificării fişierelor propriu-zise).
EXT4 (Fourth Extended Filesystem)
Aduce numeroase îmbunătăţiri formatului ext3:
- suportă partiţii de până la 1 exbibyte (EiB, 1 EiB=1024 GiB) şi fişiere cu dimensiunea până la 16 tebibytes (TiB);
- înlocuieşte modelul pe blocuri folosit de sistemele de fişiere ext2 sau ext3 cu un format extins care îmbunătăţeşte lucrul cu fişiere mari şi reduce fragmentarea (format folosit şi la NTFS);
- compatibilitate cu ext 3 şi ext2;
- pre-alocarea spaţiului pe disc necesar unui fişier, astfel încât se garantează atât spaţiul alocat, cât şi (în general) continuitatea spaţiului;
- foloseşte tehnica de “alocare întârziată” a blocurilor până când datele vor fi efectiv scrise pe disc, faţă de alte sisteme de fişiere care alocă aceste blocuri înainte. Prin această tehnică creşte performanţa sistemului şi se reduce fragmentarea.
- creşterea numărului de subdirectoare, de la 32.000 (în ext3) la 64.000;
- checksum pentru jurnale;
- verificare mai rapidă a datelor stocate (aplicaţia de verificare e2fsck va sări peste spaţiile nealocate).
MS-DOS (Microsoft Disk Operating System) a fost lansat în 1981 de către firma Microsoft, iar în 1985 a devenit standardul sistemelor de operare pe microcalculatoare cu microprocesoare pe 16 biţi. A fost proiectat în principal să execute un singur program pentru un singur utilizator (sistem de operare monoutilizator, monotasking, monoprocesor).
Sistemul este format din următoarele fişiere:
- fişierul IO.SYS utilizat la iniţializarea calculatorului. Nucleul sistemului de operare poate accesa serviciile BIOS-ului prin intermediul procedurilor din IO.SYS.
- Kernel: fişierul MSDOS.SYS – are rolul de a gestiona procesele, memoria şi sistemul de fişiere, ca şi interpretarea tuturor apelurilor de sistem.
- Shell: fişierul command.com
Conceptele de bază utilizate sunt: fişier, director, unitate, cale, prompt şi specificator de fişier.
Fişierul (“file”)
Este colecţie de informaţii (date de prelucrat, programe, comenzi, texte, etc.) omogenă din punct de vedere al naturii, precum şi al cerinţelor de prelucrare, organizată după reguli bine determinate şi memorată pe un suport de pe care pot fi citite automat de calculator în timpul prelucrării.
Orice fişier are un nume alcătuit din două părţi:
- numele propriu-zis – obligatoriu – numele după care poate fi identificat fişierul;
- extensia sau tipul – opţional – şir de caractere alcătuit din unu până la trei caractere (pentru sistemul MS-DOS) sau mai multe caractere pentru sistemele de operare pe 32 de biţi. Extensia trebuie să se separe de numele propriu-zis prin caracterul special punct “.”
Diverse aplicaţii | Pachetul Office |
- fişiere executabile (.exe, .com, scripturi .bat); - fişiere de sistem; fişiere binare (.dll, .sys, .lib); - fişiere text (.txt); - fişiere grafice (.bmp, .jpg, .gif); - fişiere multimedia (.wav – fişiere de sunet, .avi – fişiere video) |
- documente Word (.doc, .docx, .rtf) - foi de lucru Excel (.xls, .xlsx) - prezentări PowerPoint (.ppt, .pptx) - baze de date Access (.mdb, .accdb) - pagini Web (.html) |
Directorul (“directory”)
Este un concept fundamental pe care se bazează organizarea memoriei externe a PC-urilor pe niveluri ierarhice arborescente pentru gestionarea fişierelor pe dischete sau discuri. Directorul care conţine subdirectori se numeşte director de origine sau director părinte.
Unitatea (“device”)
Reprezintă un echipament periferic identificat printr-un nume simbolic de dispozitiv. Numele de dispozitiv pentru unităţile de disc magnetic constă dintr-o literă urmată de caracterul special două puncte (:); de exemplu litera A: identifică unitatea de dischetă, litera C: identifică o partiţie logică de pe hard-disk, iar F: poate identifica o unitate optică (CD-ROM, DVD-ROM).
Cale (“path”)
Atunci când se folosesc directori multinivel, la MS-DOS este necesar să se precizeze unde sunt situate fişierele în sistemul de directori de pe discul implicit, folosind în acest scop o cale (path). O cale este o secvenţă de directori separaţi prin caracterul special “\” (backslash), secvenţă ce trebuie parcursă pentru a ajunge la directorul care conţine fişierul.
Sintaxa generală este următoarea:
[\nume_director_1][\nume_director_2...]\nume_director_n
Un nume de cale este o cale urmată de un nume de fişier, având sintaxa următoare:
[\nume_director_1][\nume_director_2...]\nume_fişier
Este un sistem de programe şi comenzi conceput şi dezvoltat pe un mediu de interfaţă grafică de utilizator (GUI – Graphical User Interface) care se pot selecta, instala şi executa pe calculatoare personale, în funcţie de configuraţiile hardware disponibile şi de cerinţele utilizatorilor.
MS-DOS / 9x: 1.0 • 2.0 • 3.0 • 3.1x • 95 • 98 • Me
NT: NT 3.1 • NT 3.5 • NT 4.0 • 2000 • XP • Vista • Windows 7
Câteva dintre noutăţile şi îmbunătăţirile aduse de Windows XP faţă de versiunea Windows precedentă, Windows ME:
Windows 7 există în 6 versiuni (ediţii): Starter, Home Basic, Home Premium, Professional, Enterprise şi Ultimate. Ce aduce nou versiunea Windows 7 faţă de Vista: