marți, 6 septembrie 2011

Masina Virtuala

Masina Virtuala - o posibilitate de a rula mai multe sisteme de operare
Are urmatoarele facilitati:
-permite rularea mai multor SO pe acelasi calculator (desi doar unul este cu adevarat SO, celelalte apeleaza la primul pentru a-si îndeplini cerintele)
-nu este necesara repornirea (cu alegerea unui alt SO) pentru a rula un alt SO
-necesita instalarea celorlalte SO
Exemplu: Virtual Box (Sun)
Termeni folositi în acest mediu:

Host OS: SO (sistemul de operare) al calculatorului pe care Virtual Box se instaleaza
Guest OS: SO care ruleaza în interiorul masinii virtuale
Masina virtuala
a) un mediu special în care Guest OS ruleaza (o fereastra)
b)un set de parametri (memorie RAM, hard disc, unitate CD) care permite rularea
Guest OS
OS host suportate
Windows hosts:
– Windows XP, all service packs (32-bit)
– Windows Server 2003 (32-bit)
– Windows Vista (32-bit and 64-bit[1]).
– Windows Server 2008 (32-bit and 64-bit)
– Windows 7 (32-bit and 64-bit)
Mac OS X hosts:[2]
– 10.5 (Leopard, 32-bit)
– 10.6 (Snow Leopard, 32-bit and 64-bit)
Linux hosts (32-bit and 64-bit[3]). Among others, this includes:
– Debian GNU/Linux 3.1 ("sarge"), 4.0 ("etch") and 5.0 ("lenny")
– Fedora Core 4 to 11
– Gentoo Linux
– Redhat Enterprise Linux 4 and 5
– SUSE Linux 9 and 10, openSUSE 10.3, 11.0 and 11.1
– Ubuntu 6.06 ("Dapper Drake"), 6.10 ("Edgy Eft"), 7.04 ("Feisty Fawn"), 7.10 ("Gutsy
Gibbon"), 8.04 ("Hardy Heron"), 8.10 ("Intrepid Ibex"), 9.04 ("Jaunty Jackalope").
– Mandriva 2007.1, 2008.0 and 2009.1
Solaris hosts (32-bit and 64-bit[4])
-OpenSolaris (2008.05 and higher, "Nevada" build 86 and higher)
– Solaris 10 (u5 and higher)

OS guest suportate
Windows NT 4.0
Windows 2000 / XP / Server 2003 / Vista / Server 2008 / Windows 7.
DOS / Windows 3.x / 95 / 98 / ME
Linux 2.4
Linux 2.6
– Fedora Core 4, 5, 6, 7, 8, 9 and 11;
– Redhat Enterprise Linux 3, 4 and 5;
– SUSE, openSUSE Linux 9, 10.0, 10.1, 10.2, 10.3, 11.0 si 11.1;
– Ubuntu 5.10, 6.06, 7.04, 7.10, 8.04, 8.10 and 9.04.
Solaris 10, OpenSolaris
FreeBSD
OpenBSD
OS/2 Warp 4.5

CURS2 S.O.-UTILIZAREA HARD-DISCULUI

În vederea utilizarii unui hard-disc, acesta trebuie sa suporte urmatoarele prelucrari:
1. Formatarea fizica sau de nivel jos.
2. Partitionarea
3. Formatarea logica sau de nivel înalt.
  Pentru dischete nu este necesar punctul 2, iar punctele 1 si 3 se realizeaza de catre producator.
    Pentru hard-discuri punctul 1 este realizat de producator, iar punctele 2 si 3 trebuie realizate de cei care asambleaza calculatorul, sau oridecâteori se doreste o reconfigurare a calculatorului.
1. Formatarea fizica
Consta în realizarea structurii de piste si sectoare pe fiecare platan al hard discului. Un sector contine 512 octeti pentru date. Fiecare sector este precedat de un preambul sau adresa care contine numarul cilindrului, numarul capului si numarul sectorului. Sectorul este urmat de un grup de octeti care reprezinta un cod corector de erori. În procesul de formatare se lasa doar locul pentru octetii care vor forma codul corector, urmând ca ei sa fie scrisi în cadrul procesului de scriere a informatiei pe hard disc si cititi în cadrul operatiunilor de citire. De asemenea, în cadrul acestui proces de formatare fizica mai sunt adaugate si alte informatii care permit identificarea începutului si sfârsitului de sector. În plus, asa cum se va vedea ulterior, o anumita parte din spatiul discului este rezervata pentru gestionarea informatiilor de pe disc. În final, se poate spune ca hard discul formatat va avea o capacitate mai mica cu circa 15% fata de capacitatea discului neformatat.
Formatarea fizica este executata de producator, si cu rare exceptii, nu ar trebui efectuata niciodata de utilizatorul final. Exceptie: repararea unui format deteriorat care nu mai poate fi citit sau scris. Pentru realizarea acesteia, producatorii de hard discuri pun la dispozitie programe speciale.

2. Partitionarea

Pentru a fi accesibil unui sistem de operare, un hard disc trebuie partitionat.
Partitionarea este împartirea hard discului în mai multe segmente (partitii) încât sistemul de operare sa aiba impresia ca fiecare partitie este un hard disc separat. În plus, partitionarea face posibila utilizarea mai multor sisteme de operare pe acelasi calculator.
Initial, un PC continea un singur tip de fisiere. Ulterior, a aparut necesitatea folosirii mai multor sisteme de operare, fiecare cu propriul sau sistem de fisiere, pe acelasi calculator.
Exista câteva reguli dupa care se face o astfel de partitie:
-un numar de maximum 4 partitii pot fi realizate pe un hard disc;
-numai o partitie poate fi la un moment dat activa, cea de pe care se încarca sistemul de operare;
-din cele 4 partitii, toate 4 pot fi primare sau pot fi 3 primare, iar una poate fi realizata ca partitie DOS extinsa, care apoi va putea fi divizata în mai multe partitii logice multiple.
-partitia activa poate fi aleasa doar dintre cele primare. În urma partitionarii, pe primul sector (cilindrul 0, capul 0, sectorul 1) de pe hard disc se vor înscrie un program simplu (master boot code) si un fisier de date (master partition table) într-un format standard, care alcatuiesc înregistrarea principala de încarcare (Master Boot Record, MBR).

Master boot code contine un mic program executat de BIOS a carui principala functie este de a transfera controlul sistemului partitiei hard discului care a fost determinata ca activa (încarcabila sau boot-abila), pentru a finaliza încarcarea sistemului de operare.

Termenul boot provine de la cuvântul bootstrap (curelusa pentru cizma) si descrie metoda prin care PC-ul devine operational. La fel cum se încalta o cizma tragând mai întâi de curelusa de la spate, PC-ul încarca sistemul de operare prin încarcarea mai întâi, a unui mic program care poate apoi sa traga întregul sistem de operare în memorie.
Master partition table contine printre altele, urmatoarele informatii, pentru fiecare din cele 4 partitii posibil de realizat:
-daca partitia este activa (va permite încarcarea sistemului de operare);
-marimea partitiei;
-punctul de început si de sfârsit al partitiei (cilindru, cap, sector).
Exemple practice:
1. Un calculator cu o singura partitie, C: (Chiar si în acest caz hard discul trebuie partitionat!).
2. Un calculator cu o partitie primara (C:) si o partitie extinsa divizata în trei partitii logice (D:, E:, F:).
Exista doua diferente între partitiile primare si cele extinse: sistemele de operare pot fi încarcate doar de pe partitiile primare(i), iar sistemul aloca diferit denumirile celor doua tipuri de partitii(ii).
Partitiile hard discului se mai numesc si volume.
Modul de atribuire a literelor de catre sistem pentru partitii se bazeaza pe urmatoarele reguli:
1. Unitatile de discheta au rezervate literele A si B.
2. În continuare sunt atribuite litere partitiilor primare, începând cu C.
3. În final, se atribuie litere partitiilor extinse.
Observatie: Regulie 2 si 3 se aplica sistemelor de operare Windows 95/98/Milenium. Pentru Windows NT/2000/XP literele partitiilor se aloca în ordinea realizarii partitiilor.
Pentru exemplificare, se considera un calculator cu un hard disc care are o partitie primara si una extinsa cu doua partitii logice multiple (Windows 98). Apoi i se ataseaza un hard disc suplimentar care are o partitie primara si una extinsa cu o partitie logica. În tabelul de mai jos se prezinta denumirile partitiilor (volumelor) înainte si dupa atasarea celui de-al doilea hard disc.

Se observa ca în acest fel se schimba denumirea partitiilor primului hard disc, ceea ce poate fi un dezavantaj. Pentru a elimina aceasta situatie se recomanda sa nu se realizeze partitii primare decât pe discul care contine sistemul de operare.

Dupa epuizarea tuturor partitiilor de pe hard discuri se atribuie litere unitatilor de CDROM sau DVD. Daca calculatorul ar fi avut sistemul de opearare Windows XP, partitiile hard discului 2 ar fi fost F si G. Exista totusi posibilitati de modificare a literelor alocate acestor dispozitive, cum se va vedea în paragraful urmator.

























3. Formatarea logica
În principiu, în cadrul formatarii logice, SO pregateste hard discul pentru operatiile de
scriere si citire: sterge informatia existenta, testeaza toate sectoarele discului, le marcheaza pe
cele defecte, iar apoi scrie structurile necesare pentru a gestiona fisierele de pe disc.
Formatarea logica se face pentru fiecare partitie realizata în etapa de partitionare si
realizeaza urmatoarele elemente:

-Sectorul de încarcare al volumului (înregistrarea de încarcare); acesta este diferit de MBR, care controleaza întregul disc, dar totusi similar ca si concept.
-Tabela de alocare a fisierelor (FAT), în doua copii consecutive
-Directorul radacina
Dupa aceasta formatare, pe hard disc ramâne Zona de date, în care utilizatorul va înscrie date.
Sectorul de încarcare al volumului contine urmatoarele date:
-numarul de octeti pe sector (de obicei 512);
-numarul de sectoare pe unitatea de alocare (cluster);
-numarul de sectoare pe pista;
-tipul de tabela FAT
În plus, sectorul de încarcare, contine instructiunile programului de încarcare al sistemului de operare, care este apelat de MBR. Desi fiecare partitie are un loc pentru acest program, pentru partitiile care nu sunt active, acest loc este neutilizat.
Directorul radacina
Un director este o baza de date care contine informatii despre fisierele memorate pe disc. Exista doua tipuri principale de directoare: directorul radacina si subdirectoarele. Orice volum dat are un singur director radacina, care este plasat dupa cele doua copii ale FAT. Acesta contine 512 intrari, fiecare cu 32 de biti.
Subdirectoarele sunt la fel ca si directorul radacina, dar sunt plasate în zona de date, si nu au limita de 512 intrari. Un director sau subdirector contine urmatoarele informatii, referitoare la fisierele sau subdirectoarele pe care le contin: numele, ziua, ora si data crearii, atributele (printre altele, daca este fisier sau director) marimea si intrarea în tabela FAT.
De remarcat ca stergerea unui fisier nu elimina informatia memorata în unitatile de alocare (clusteri). Astfel, în tabela FAT, locatiile corespunzatoare clusterilor acelui fisier se înlocuiesc cu 0 si primul caracter al numelui fisierului din director se înlocuieste cu numarul 229 (codul ASCII pentru caracterul s). Exista metode (programe) prin care informatia poate fi refacuta.

Modalitati practice de realizare a partitionarii si formatarii.
1. Programul utilitar fdisk. Cu acesta se lucreaza din linia de comanda, în stil DOS.
2. Programul SETUP inclus în CD-ul de instalare al oricarui SO. Aici se considera
Windows XP. 3. Control Panel/Administrative Tools/Computer Management.
În toate cazurile, se poate partitiona si formata atât un hard disc gol (nou) sau unul cu date. În acest din urma caz sunt afisate partitiile existente, care apoi pot fi sterse pe rând, bineînteles cu pierderea datelor.
În faza de partitionare, se permite alegerea marimii (în MB sau GB) a partitiei, dintrun interval admisibil; o marime mai mica permite ramânerea de spatiu nepartitionat.
În faza de formatare se alege sistemul de fisiere si marimea unitatii de alocare (cluster).
În continuare se descriu pe scurt cele 3 modalitati.
1. În cazul programului fdisk, formatarea se face cu comanda format, care se da în
linia de comanda, format C:

2. În cazul utilizarii programului inclus în Windows XP, se realizeaza doar partitiile, urmând ca apoi sa se stabileasca partitia pe care se va instala SO, care va fi mai întâi formatata, permitându-se alegerea tipului sistemului de fisiere (FAT 32 sau NTFS).
3. Celelalte partitii pot fi formatate (FAT 32 sau NTFS) dupa instalarea sistemului de operare. Daca în faza initiala când se realizeaza partitiile se lasa si spatiu nepartitionat, se mai pot crea partitii si dupa instalarea SO.
De asemenea se pot reformata partitiile existente, sau se pot sterge partitii, pentru a crea altele noi. În ambele cazuri se vor pierde însa datele. Nu se poate actiona asupra partitiei care contine sistemul de operare.
La Win XP, pentru realizarea acestor operatii (dupa instalarea sistemului de operare) se poate folosi miniaplicatia Computer Management/Disk Management din Control Panel (o accesare mai rapida: clic dreapta pe My Computer si apoi Manage). Numai pentru formatare, se poate folosi urmatorul procedeu: clic dreapta pe simbolul partitiei respective în My Computer si apoi Format. De asemenea, se poate modifica litera alocata unei partitii (exceptând-o pe cea pentru încarcare).
În concluzie, partitionarea permite selectarea urmatoarelor caracteristici:
marime (în MB/GB) ;tip (primara, extinsa/logica) ;litera (D, E,....)
În schimb, formatarea permite selectarea urmatoarelor caracteristici: sistemul de fisiere (FAT 32 sau NTFS); varianta quick (rapid) nu face testul fiecarui sector, din acest motiv dureaza mai putin.
marimea unitatii de alocare: default, 512 B, 1024 B, 2048B,... numele partitiei, optional (Date, de exemplu).

În imaginea de mai jos se prezinta o fereastra din aplicatia care realizeaza partitionarea si formatarea în
Windows XP. Identificati toate partitiile (nume, tip-dupa culoare, sistem de fisiere, marime) precum si spatiul nealocat.

Exista posibilitatea manipularii partitiilor fara a distruge datele prin utilizarea unor programe specializate cum ar fi Partition Magic, produs de firma PowerQuest. Printre altele, acest program are urmatoarele facilitati:
-permite realizarea de partitii noi prin micsorarea celor existente
-unirea unor partitii existente
-modificarea marimii unei partitii existente
-permite instalarea unui sistem de operare suplimentar
Mai jos se prezinta o fereastra din programul Partition Magic



Asa cum s-a spus anterior, realizarea mai multor partitii permite utilizarea mai multor sisteme de operare pe acelasi calculator, adica asa numita încarcare duala sau multipla.
În continuare sunt prezentati pasii care sunt executati la pornirea calculatorului:
1. Programul din BIOS citeste MBR (Master Boot Record).
2. MBR cauta partitia activa.
3. MBR copiaza în memoria RAM sectorul 0 (de încarcare) partitiei active si îl executa.
4. Sectorul de încarcare al partitiei (MBV) indica programul NT loader pe care îl executa.
5. NT loader citeste continutul fisierului BOOOT.INI.
În acest moment se va afisa un meniu (continutul fisierului BOOOT.INI) din care utilizatorul va alege sistemul de operare care doreste sa-l încarce.

Exemplul :
Se folosesc sistemele de operare Windows XP si Xandros Presto (distributie Linux, nu necesita partitie separata, este instalata ca o aplicatie Windows).
Folosind comanda bootcfg, data de la prompterul DOS de poate vedea continutul fisierului boot.ini:

Se pot observa cele doua sisteme de operare instalate (Windows XP si Xandros Prestp), cel care se va încarca automat (Windows XP), precum si timpul dupa care se realizeaza aceasta actiune (25 sec.). Cele doua sisteme de operare se pot vedea de asemenea folosind si Control Panel :

Exemplul 3: Windows XP si Linux pe partitii diferite
1. Instalare WindowsXP
-se creaza o partitie (NTFS sau FAT 32) pentru a partaja date.
2. Instalare Linux (RedHat)
-necesita 2 partitii: /root si swap
-se impune ca programul Linux Loader sa nu suprascrie înregistrarea Master
Boot Record a WindowsXP
3. Sectorul de încarcare Linux trebuie localizat, iar apoi copiat, sub numele
bootsect.lnx pe partitia în care este instalat WindowsXP
4.Se modifica fisierul boot.ini, adaugând o intrare:
C:\bootsect.lnx= “Linux Red Hat ”

Realizarea unui Live CD sau Live memory-stick pentru distributia UBUNTU

    Mai întâi este necesar un fisier imagine: Ubuntu-9.04-desktop-i386.iso, disponibil pentru descarcare la adresa (http://www.ubuntu.com/). Se copiaza apoi acest fisier imagine pe un CD (se foloseste optiunea Burn Image File dintr-un program specializat de scriere pe CD).
Sau, acelasi fisier imagine se copiaza pe un memory stick (se foloseste programul unetbootin disponibil la adresa, http://unetbootin.sourceforge.net/, nu necesita instalare, se lanseaza în executie imediat)
  Având CD-ul în unitate (sau memory stick-ul în USB), se da Restart, apoi se apasa tasta F12 care permite afisarea unui meniu din care se alege dispozitivul hardware pentru încarcarea sistemului de opearare (Boot Menu), se alege CD-ROM (sau USB) si în câteva zeci de secunde sistemul de operare poate fi utilizat. Partitiile existente pe hard disc si create sub Windows sunt recunoscute în totalitate.


CURS1 SO.Generalitati despre SO(sistemul de operare)

      Un sistem de operare este un set de programe care:
a) asigura gestionarea resurselor unui sistem de calcul, implementând algoritmi care trebuie sa maximizeze performantele acestuia;
b) realizeaza o interfata între utilizator si sistem de calcul, extinzând dar si simplificând setul de operatii disponibile.
Sistemul de operare se interpune între programele de aplicatii (aflate pe nivelul cel mai de sus într-o structura stratificata a unui calculator) si BIOS, care este deasupra nivelului hardware al sistemului de calcul (nivelul cel mai de jos). 
  BIOS (basic input/output system) reprezinta software-ul de nivelul cel mai de jos care controleaza hardware-ul calculatorului.

Combinatia dintre BIOS-ul placii de baza (ROM BIOS), BIOS-ul modulelor adaptoare si driverele încarcate de pe disc alcatuiesc întregul BIOS.
Un PC contine o structura sub forma a patru straturi: 
-hardware
-BIOS
-Sisteme de operare
-Programe de aplicatii


Scopul acestui concept, de echipament stratificat, este de a permite unui anumit sistem de operare si aplicatiilor sa ruleze pe structuri hardware diferite.

De exemplu, daca o aplicatie cere sistemului de operare salvarea unui fisier, aplicatia nu trebuie sa stie cum sa salveze pe disc. Ea este izolata de hardware, poate fi rulata pe orice echipament, comunicând cu sistemul de operare. Sistemul de operare comunica apoi cu BIOS-ul sau cu driverele.
Producatorii de hardware sunt cei care care realizeaza driverele necesare. Ele sunt de obicei specifice sistemului de operare. Totusi acestea sunt grupate astfel: pentru Windows 95/98/ Me sau pentru Windows NT, 2000, XP.
Deoarece BIOS-ul arata la fel pentru toate sistemele de operare, indiferent de hardware-ul cu care face legatura, acelasi sistem de operare poate sa lucreze pe o varietate de sisteme hardware.
   BIOS-ul din ROM-ul placii de baza contine driverele initiale pentru pornirea corecta a sistemului de operare. Primele variante de BIOS contineau drivere pentru componentele initiale ale sistemului: tastatura, unitatea de discheta, unitatea de hard disc. Ulterior calculatorului i s-au adaugat componente hardware pentru care nu existau drivere în BIOS-ul placii de baza: adaptoare video, unitati CD-ROM, hard discuri SCSI, porturi USB.
Pentru rezolvarea acestei situatii a fost mai simplu ca noile drivere sa fie copiate pe hard disc si sa fie încarcate odata cu sistemul, decât sa se construiasca BIOS-uri noi pe placile de baza. Aceste drivere nu trebuie sa fie active în timpul încarcarii sistemului.
Afisarea pe monitor este însa necesara înainte de încarcarea sistemului de operare.
Având în vedere acest lucru, s-a ajuns la ideea ca programul din ROM-ul placii de baza sa poata scana sloturile pentru depistarea modulelor adaptoare pe care exista ROM. În momentul identificarii unui astfel de modul, programul din acel ROM este executat, înainte de încarcarea sistemului de operare. În acest fel, ROM-ul placii de baza nu mai trebuie modificat.
În afara de adaptorul video, alte module adaptoare care contin ROM sunt adaptoarele SCSI, placile de retea (pentru terminale fara hard disc) sau module adaptoare IDE. 
   BIOS-ul placii de baza are în principiu urmatoarele 4 functii principale:
1.POST (Power-On Self Test) Programul POST testeaza procesorul memoria, cipset-ul, adaptorul video, unitatile de disc, tastatura.

În principiu, programul POST realizeaza urmatoarele actiuni:
-determina daca exista vreun circuit BIOS pe placa video; daca exista, executa programul respectiv, având ca efect initializarea placii video, încât aceasta poate fi folosita pentru comanda monitorului în vederea afisarii; ca prim mesaj, pe monitor apare o notita referitoare la drepturile de autor, (contine informatii despre BIOS: producator, an, serie, etc), numita si ecranul Startup;
-determina daca alte dispozitive au BIOS propriu, de exemplu hard discul;
-verifica memoria principala, pentru a afla marimea ei si daca functioneaza corect;
-verifica si celelalte dispozitivele standard (tastatura, mouse, porturi) ale PC-ului, pentru a vedea daca exista si functioneaza normal; daca BIOS-ul accepta standardul Plug and Play, detecteaza si configureaza dispozitivele Plug and Play.
-ofera utilizatorului posibilitatea de a modifica parametrii pentru dispozitivele standard care exista în PC, prin intrarea în programul CMOS Setup (în acest scop trebuie apasata o tasta, de exemplu Delete sau F2, în functie de versiunea BIOS-ului); acesti parametri (date) sunt înscrisi într-o zona de memorie numita RAM CMOS, cu o capacitate de 64 octeti; aceasta memorie contine un circuit integrat de tip CMOS alimentat de la o baterie, pentru a memora informatiile când calculatorul e deconectat de la tensiunea de alimentare; tot acest circuit contine ceasul care masoara data si ora;
-construieste câteva tabele de date care pastreaza o evidenta clara a numarului de porturi seriale si paralele, a unitatilor de stocare magnetica si a celorlalte dispozitive standard din PC;
În final, cauta sistemul de operare si îl încarca în memoria principala, dupa care acesta preia controlul asupra calculatorului.

2.CMOS setup. Acest program permite configurarea parametrilor placii de baza si ai cipset-ului, a datei, orei, parolelor, unitatilor de disc, precum si succesiunea unitatilor de încarcare.

3.Bootstrap loader. Este o rutina care cauta pe unitatile de disc din sistem un sector principal valid de încarcare. Daca este gasit, programul pe care îl contine este executat. Apoi, programul din sectorul principal de încarcare continua procesul de încarcare cu sectorul de încarcare al sistemului de operare.
4.BIOS. Contine colectia de drivere utilizate ca o interfata între sistemul de operare si hardware-ul sistemului, la încarcare si în timpul functionarii. Când se ruleaza în modul DOS sau Windows în Safe Mod (un mod de lucru în care se încarca doar driverele de baza), se ruleaza numai aceste drivere pentru ca de pe disc nu se încarca nici unul.

Pe tot parcursul rularii programului BIOS, pot fi afisate mesaje corespunzatoare când sunt detectate erori, în unele cazuri programul putându-se opri din rulare. Daca erorile se refera la placa video, nu pot fi afisate mesaje de eroare, folosindu-se semnalizarea sonora.

    Responsabilitati ale unui sistem de operare:
a) Interfata cu utilizatorul. Exista doua componente ale acestei interfete: comenzile si apelurile sistem. Comenzile sunt introduse direct de utilizatori si sunt prelucrate de
interpretorul de comenzi. Apelurile sistem sunt folosite indirect de utilizatori, se declanseaza în timpul executiei programelor.
Din acest punct de vedere exista sisteme de operare cu interfata grafica sau cu interfata prin linie de comanda. Primele au ca elemente de baza ferestrele, simbolurile grafice (pictograme sau iconite), sau meniurile. Pentru selectarea diferitelor variante se foloseste mouse-ul, combinatii de taste sau tastele sageti. SO cu interfata prin linia de comanda folosesc exclusiv tastele pentru introducerea comenzilor.
b) Gestionarea fisierelor. Fisierele reprezinta modalitatea în care se pastreaza pe termen lung informatia în sistemele de calcul. Uzual acestea sunt memorate pe discuri magnetice sau optice. Gestionarea fisierelor trateaza aspecte legate de: crearea si stergerea fisierelor, controlul accesului la fisiere, citirea si scrierea din/în fisiere, organizarea colectiei de fisiere.
c) Gestionarea perifericelor. Sistemul de operare, nu utilizatorul, este cel care controleaza direct perifericele (imprimanta, tastatura, mouse-ul, monitorul), deoarece utilizatorul nu poate cunoaste toate detaliile referitoare la acestea.
d) Gestionarea memoriei. O prima cerinta este gestionarea memoriei principale (RAM), în care este încarcat însusi SO, dar si programele utilizator. Daca mai multe programe utilizator se afla simultan în memorie, SO trebuie sa rezolve problemele de împartire a memoriei disponibile între programe. În plus, aceasta responsabilitate a SO are în grija si gestionarea memoriei secundare (hard disc), nu atât în ce priveste fisierele, ci referitor la procedeul de memorie virtuala, folosit pentru a extinde memoria principala.
e) Gestionarea proceselor. Un proces reprezinta un program în executie sub controlul SO. Majoritatea SO prevad posibilitatea existentei simultane a mai multor procese. Rezulta necesitatea de a controla modul în care ele fac uz de procesor, încât toate sa progreseze în mod echitabil. Procesele interactioneaza si în vederea utilizarii altor resurse decât procesorul (periferice, memorie).


f) Tratarea erorilor. SO trebuie sa fie pregatit pentru a reactiona la o mare diversitate de erori, care provin atât din hardware cât si din software. SO trebuie sa detecteze erorile, si, în masura posibilitatilor, sa permita continuarea lucrului. Unele erori sunt transparente utilizatorului, iar la altele acesta trebuie sa intervina. Legat de tratarea erorilor sunt conceptele de siguranta în functionare si de protectie a informatiilor dintr-un calculator.
g) Gestionarea sistemului. În aceasta categorie intra instalarea sistemului de operare însusi, ajustarea caracteristicilor sale la un anumit sistem de calcul, pornirea si oprirea functionarii calculatorului.

    Clasificare a sistemelor de operare
   a) Sisteme de operare monoutilizator (single user) si monoproces (single task).Un singur utilizator poate efectua un program la un moment dat. Practic, aceste sisteme de operare sunt de domeniul trecutului.
b) Sisteme de operare monoutilizator si multiproces (multitasking)
Exemple tipice: calculatoare cu Windows sau Macintosh. În acelasi timp sunt în operare mai multe programe. Ex: se editeaza un fisier Word, se descarca un fisier de pe Internet, se tipareste un document la imprimanta, toate în acelasi timp.
c) Sisteme multiutilizator (multiuser)
Un astfel de sistem de operare permite mai multor utilizatori sa foloseasca simultan resursele unui calculator. SO trebuie sa vegheze ca cerintele diferitilor utilizatori sa fie echilibrate, fiecare dintre programele pe care ei le utilizeaza sa aibe suficiente resurse. Unix este exemplu tipic de sistem de operare multiutilizator, la fel ca si Windows NT sau Windows 2000.

     Cea mai importanta parte a unui sistem de operare este nucleul (kernel).
Nucleul este o colectie de functii („apeluri de sistem”) care pot fi executate de programele utilizatorilor si care îndeplinesc functiuni utile. Nucleul unui sistem de operare are privilegii în raport cu programele scrise de utilizatorii obisnuiti. Astfel, anumite operatii sunt permise numai nucleului, în timp ce programele utilizatorilor nu le pot efectua, ci doar beneficiaza de ceea ce face nucleul. De pilda utilizatorii nu pot accesa discul în nici un fel; ei au la dispozitie însa un set de functii ale nucleului care fac tot ceea ce are nevoie utilizatorul: creaza si sterg fisiere, permit scrierea datelor si citirea lor în fisiere, precum si accesul controlat la aceste resurse.

Instructiunile întelese de controlere sunt de nivel extrem de scazut. De exemplu, pentru a scrie un sir de octeti pe disc, trebuie trimis controlerului de disc un program care specifica locul precis pe disc (partitie, cilindru, cap, sector), codul operatiei (scriere), adresa în memorie unde se afla octetii, numarul lor. Dupa terminare trebuie aflat daca totul a mers cum trebuie: pozitia pe disc la care s-a ajuns (daca s-a ajuns în alt loc decît se astepta nu este bine), daca datele s-au scris, daca nu de ce nu (eroare tranzitorie, disc protejat,); daca nu a mers bine trebuie încercat (daca are sens) de mai multe ori, sau trebuie initializat controlerul, sau trebuie trimis capul hard-disc-ului la începutul discului (recalibrare).

Metoda universal folosita actualmente, prin care controlerul atrage atentia procesorului ca s-a petrecut ceva (de exemplu s-a terminat transferul, sau s-a produs o eroare) este întreruperea (a se revedea cap. 3). În cazul exemplului de mai sus, dupa ce a programat controlerul de hard-disc, procesorul face altceva. Cînd controlerul a terminat operatia (indiferent de rezultat), genereaza o întrerupere pentru a atrage atentia asupra sa. În consecinta, procesorul se va ocupa de controler.

Motivatia pentru care accesul utilizatorului este interzis la disc este în principal legata de integritatea discului: daca programe diferite ar vrea sa foloseasca fiecare pentru sine discul într-un alt fel, ar putea sa interfereze între ele. Nucleul ofera un acces limitat la disc. De exemplu, datele scrise în fisiere diferite nu au nici o legatura unele cu altele, pentru ca modificarea fiecaruia dintre fisiere este supervizata atent de nucleu.
Functiile nucleului sunt comune tuturor programelor care se executa pe acel calculator, fie ca programele se executa unul dupa altul sau simultan. De fapt una din misiunile esentiale ale nucleului este lansarea programelor în executie (se numesc procese) si controlarea executiei lor. El trebuie sa gaseasca pentru noul proces un loc în memorie, sa citeasca întregul fisier, si apoi sa sara la prima instructiune citita
Toate nucleele moderne suporta executia simultana a mai multor procese (ceea ce se numeste multitasking sau multiprogramare). Multiprogramarea poate fi reala, în cazul în care calculatorul are mai multe procesoare, sau simulata prin ceea ce se numeste „time-sharing” (punerea în comun a timpului): oprirea unor programe din executie temporar pentru a executa altele. Ratiunea principala pentru time-sharing este una economica: nu toate partile unui calculator functioneaza cu aceeasi viteza, deci daca doua dintre ele comunica, cea mai rapida trebuie sa astepte dupa cea mai lenta (discul de pilda este de cam un milion de ori mai lent decît procesorul).

Procesoarele au o facilitate care faciliteaza activitatea nucleului: contin niveluri  de securitate numite inele:

Inelul interior (0) are cele mai multe drepturi, iar cel exterior (3) cele mai putine.
Procesele care ruleaza în Ring 0 au acces la toate instructiunile procesorului si la memorie.
Aici opereaza nucleul. Driverele de dispozitive ruleaza în Ring 1 si Ring 2. Procesele care ruleaza în Ring 3, corespunzatoare programelor aplicatie nu pot accesa hardware-ul decât prin
intermediul lui Ring 0. Faptul ca driverele ruleaza în inele cu drepturi mari este principala cauza a blocarilor sistemului de operare. O scoatere a lor pe Ring 3 ar face sistemul mai stabil, dar mai lent. Aceasta idee sta la baza cercetarilor care se fac în aceasta perioada în laboratoarele Microsoft Research pentru a dezvolta un nou sistem de operare, numit Singularity.O varianta de test poate fi descarcata de la adresa:
www.codeplex.com/singularity.

     Calculatoarele de tip PC folosesc sisteme de operare Windows. Cele de tip Macintosh folosesc sistemul OS X. Calculatoarele de tip server ale multor companii sunt dotate cu sisteme de operare UNIX.
  Primul calculator IBM PC (1981) era dotat cu un sistem de operare MS-DOS. Acesta continea un interpretor de linie de comanda (Shell), cu multe caracteristici împrumutate de la Unix, era monoutilizator si rula pe 16 biti.
Urmatoarele tipuri de PC-uri au fost înzestrate cu variante superioare de DOS. Apoi, inspirati de succesul lui Macintosh, producatorii au decis sa doteze DOS-ul cu o interfata grafica numita Windows, în 1985. Primele 3 variante, pâna la Windows 3.11 nu erau sisteme
de operare reale, ci doar interfete grafice pentru utilizator, care rulau peste MS-DOS, care detinea controlul asupra calculatorului. Toate programele rulau în acelasi spatiu de memorie si o eroare aparuta în oricare dintre ele putea bloca întregul sistem.

Windows 95, aparut în 1995 nu a eliminat MS-DOS, introducând versiunea 7.0 a acestuia. Cele doua contineau împreuna majoritatea caracteristicilor unui sistem de operare
complet (memorie virtuala, gestiunea proceselor). Era folosit vechiul sistem de fisiere de la DOS (FAT-Fat Allocation Table 16), singura îmbunatatire majora fiind numele lungi de fisiere (254 de caractere) în locul variantei de 8 caractere permisa de DOS.
Varianta Windows 98 continea (înca) o versiune de DOS (7.1), dar a introdus un alt standard de organizare a informatiei pe discuri, FAT 32, care permitea gestionarea unor hard discuri de capacitati mai mari. Avea în plus o interfata cu utilizatorul îmbunatatita care îngloba facilitati pentru Internet si multimedia.


Ultima varianta, îmbunatatita, a lui Windows 98 a fost Windows ME (Milenium Edition). Acesta a prezentat o gama larga de functii pentru multimedia si imagini. 
Aceste trei tipuri de Windows (95, 98, Me) nu mai aveau nevoie de DOS, dar îl foloseau pentru unele operatii sau programe mai vechi. Trucurile de gestionare necesare pentru rularea aplicatiilor DOS, a vechilor aplicatii Windows pe 16 de biti, precum si a celor noi pe 32 de biti pe aceeasi platforma hardware duceau la frecvente reîncarcari si blocari ale sistemului.

Între timp, Microsoft lucra la un alt produs: Windows NT (New Technology). Acesta se dorea un înlocuitor pentru celelalte versiuni de Windows, dar aparitia sa a întârziat mult (prima versiune, NT 3.1 a aparut în 1993, iar a doua NT 4.0 în 1996), fiiind apoi dirijat catre utilizatorii profesionali. Acesta era un sistem de operare complet nou, pe 32 de biti, care nu folosea DOS ca fundatie. Folosea un sistem de fisiere de asemenea complet nou, NTFS (New Technology File System). A avut doua variante: server si statie de lucru (workstation). Versiunea server este conceputa pentru calculatoare care lucreaza ca servere într-o retea locala. La un astfel de server pot fi conectati mai multi utilizatori care pot rula programe, pot accesa fisiere sau pot tipari la imprimanta. A avut ca puncte forte stabilitatea si securitatea. Accepta însa un hardware multimedia mai redus decât Win 98 si nu avea suport pentru Plug
and Play.


Windows 2000, lansat la începutul anului 2000, a fost un continuator al lui NT în ce priveste securitatea si stabilitatea, dar a luat multe caracteristici de la Windows 98 (Plug and Play, Multimedia). Continea suport pentru porturile si dispozitivele USB si IEEE 1394. A introdus o versiune a sistemului de NTFS avansata, care accepta comprimarea si criptarea fisierelor, si de asemenea accepta sistemul FAT 32. Windows XP (eXPerience) este o varianta de Windows complet noua în raport cu celelalte. Poate fi descris ca o combinatie între caracteristicile de securitate, stabilitate si lucru în retea din Windows 2000 si caracteristicile multimedia si de tratare a erorilor din Windows Me. Are o interfata grafica noua si o varianta îmbunatatita de Internet Explorer. Contine suport pentru scrierea CD si DVD. Contine de asemenea noi faciltati pentru reactualizarea (UpDate) driverelor de dispozitiv prin Internet. (Un driver de dispozitiv este un program care permite sistemului de operare sa comunice cu un anumit dispozitiv hardware: imprimanta, mouse, tastatura).



Windows XP contine circa 40 milioane linii de program. Comparativ, Win2000 contine 29 milioane de linii iar Win 98 contine 13 milioane de linii.
Alte facilitati ale Windows XP:


-contine drivere pentru sute de dispozitive hardware; daca nu poate localiza driverul corespunzator pentru un anumit dispozitiv hardware, verifica automat situl Web Microsoft Windows Update;
-este mai stabil decât toate celelate versiuni de Windows; în acest sens, proiectarea interna protejeaza nucleul sistemului; acesta nu are niciodata o interfata directa cu aplicatiile sau cu componentele hardware, care ar putea bloca sau deteriora sistemul; aplicatiile si componenetele hardware fac cereri catre subsisteme care apoi solicita atentia nucleului.
Cele mai recente sisteme de operare de tip Windows sunt Windows Vista, aparut în 2007 si, respectiv, Windows 7, lansat recent, în octombrie 2009.


Nucleul Windows XP ca si cel din Windows 2000 îsi au radacinile în Unix. Unix este un sistem de operare multitasking foarte popular, dezvoltat de Bell Labs la începutul anilor ’70. A fost conceput de programatori pentru programatori. De fapt, limbajul C a fost dezvoltat doar pentru scrierea sistemului de operare Unix.

Unix a fost sistemul de operare predominant pentru statiile de lucru conectate la servere, în special datorita posibilitatilor de lucru multiutilizator si performantelor solide.
Nucleul Unix a fost initial suficient de mic pentru a putea fi cunoscut de o singura persoana. Facilitatile de comunicare în retea si mai apoi facilitatile pentru interfata grafica l-au marit considerabil dar totusi a ramas suficient de mic astfel ca acest lucru îl face foarte potrivit pentru servere de retea.
Ca si varianta de Unix se poate mentiona FreeBSD (Berkley Software Distribution), bazat pe versiunea Berkeley 4.4. De-a lungul anilor au aparut mai multe versiuni asemanatoare cu Unix. Neavând licente, aceste versiuni nu au putut fi numite Unix ci sisteme de operare de tip Unix (Unix like). În 1984 a fost creata o singura specificatie Unix, în speranta de a crea o piata mai coerenta.

Varianta de Unix cu cost redus, numita Linux, a revitalizat Unix-ul pe toate
platformele. Acesta a fost introdus de un finlandez, Linus Torvalds, în 1991. Evolutia sa este spectaculoasa, fiind considerat în prezent un rival pentru sistemele de tip Windows. Are multe
dintre caracteristicile din Windows NT/2000/XP cum ar fi multitasking real, memorie virtuala, conectare la retea prin protocolul TCP-IP. Linux este un sistem deschis, care se dezvolta prin contributia voluntara a unui numar tot mai mare de programatori, care promoveaza ideea de software gratuit (free software-open source). Pe lânga varianta de fisier executabil care permite instalarea, exista disponibil si codul sursa (la nivel de linie de program) care poate fi înteles, modificat si facut apoi disponibil pentru dezvoltari ulterioare.

Un dezavantaj al sistemelor Linux o reprezinta faptul ca nu exista aplicatii similare celor din Windows care sa ruleze sub Linux. Cu oarecare întârziere, au aparut totusi aplicatii de baza pentru Linux: WordPerfect Office 2000 for Linux, StarOffice 5.2, OpenOffice.org sunt produse similare cu Microsoft Office. De asemenea, o alta aplicatie este Corel DRAW for Linux. Un alt dezavantaj al Linux-ului comparativ cu Windows-ul îl reprezinta numarul mult mai mic de drivere cu care este înzestrat.
Scurta comparatie Windows XP-Linux
-Windows XP necesita un calculator relativ recent, cu cel putin 128 MB de RAM, în timp ce Linux poate rula cu succes chiar si pe sisteme 486.
-Windows XP este disponibil în numai doua versiuni (Home si Professional), iar Linux este disponibil în mult mai multe variante
-Windows XP este un sistem de operare bazat pe o interfata grafica cu utilizatorul (GUI), în timp ce Linux se bazeaza în principal pe linia de comanda (desi are doua interfete mai cunoscute, KDE si Gnome).
-Windows-ul contine mai multe divere decât orice varianta Linux.
În ultimul timp au aparut numeroase variante de Linux, numite si distributii Linux: Red Hat, Fedora, Linux Mint Gloria, Ubuntu. Pentru instalare pe hard disc, acestea au nevoie de cel putin 2 partitii una pentru sistemul de operare si una pentru memoria virtuala (partitia swap). Exista mai multe posibilitati de a rula un astfel de sistem de operare:
1. Instalare sub Windows (ca o aplicatie)
2. Instalare duala alaturi de Windows (doua sisteme de operare). În acest caz este nevoie de cel putin 2 partitii (una pentru sistemul de operare) si una pentru memoria virtuala (partitia swap).
3. „Live” CD sau Live memory stick USB. Permit rularea sistemului de operare direct de pe suportul amovibil (CD sau memoria USB) fara instalare instalare pe hard disc. În acest fel, sistemul de operare deja instalat nu este afectat.

PLACA DE BAZA(MAINBOARD)

    Practic, un calculator complet contine urmatoarele componente:
1.Unitatea de sistem, cu urmatoarele:
     Placa de baza (inclusiv chipset, procesor, memorie),Sursa de alimentare,Hard disc,Unitate optica
     Urmatoarele 3 componente pot fi integrate în placa de baza sau pot exista ca si module separate:
     Placa video
     Placa de sunet
     Placa de retea
2.Monitor
3.Tastatura, mouse.

   Conectarea între UCP si celelalte echipamente se face prin intermediul magistralelor. Regulile care stabilesc functionarea magistralei trebuie foarte bine definite. Aceste reguli se alcatuiesc protocolul de

magistrala.

Ele contin specificatii mecanice si electrice. Placile (echipamentele) proiectate de diferitii producatori trebuie sa încapa în carcasa calculatorului, sa existe conectori care sa se potriveasca din punct de vedere mecanic cu cei de pe placa de baza, sau cu cei de pe panoul din spatele unitatii de sistem a calculatorului. Semnificatia semnalelor electrice disponibile în conectoare trebuie respectata de toti producatorii pentru ca echipamentele sa functioneze. Exista mai multe posibilitati (magistrale) care permit conectarea procesorului sau a PC-ului cu exteriorul.Astfel, prin constructie, PC-ul este dotat cu un set de conectoare accesibile în exterior, pe panoul din spatele PC-ului, la care se pot conecta echipamente obligatorii sau optionale. Aceste conectoare corespund portului serial, portului paralel, portului video, placii de retea (LAN), placii de sunet, precum si câte unul pentru tastatura si mouse. În ultimul timp, au aparut doua noi magistrale, universale, disponibile de asemenea prin conectori pe panoul din spatele PC-ului, care încearca sa raspunda cerintelor actuale: USB si IEEE 1394 sau FireWire. De asemenea, în special pentru calculatoare Notebook sunt disponibile porturi pentru comunicatie fara fir: WLAN (WirelessLAN) si Blue Tooth. Pe de alta parte, exista conectori care sunt situati în interiorul PC-ului, la care sunt accesibile magistralele clasice ca PCI (ISA), PCI Express sau AGP. În acesti conectori se pot introduce asa numitele placi de extensie, care la rândul lor au conectori accesibili pe panoul din spatele PC-ului. Magistralele IDE (ATA), SATA, SCSI sunt necesare pentru conectarea hard discurilor sau a dispozitivelor optice.

Fiecare echipament de intrare-iesire (monitor, hard disc, tastatura) contine un controlor (controller) care este un modul care contine în majoritate componente electronice. Misiunea controlorului este de a comanda functionarea echipamentului de intrare-iesire propriuzis, precum si gestiunea accesului acestuia la magistrala
sistemului. Exemple: controlorul pentru hard disc, adaptorul video pentru comanda monitorului sau controlorul pentru tastatura. Semnalele binare furnizate de UCP nu sunt suficient de puternice pentru a alimenta (din punct de vedere al curentului necesar) o magistrala, mai ales daca la ea sunt conectate multe dispozitive. Din acest motiv echipamentele sunt conectate la magistrala prin asa numitele amplificatoare de magistrala (buffere sau tranceivere).

    SETUL DE CIPURI
Termenul de Chipset (Setul de cipuri) se refera la un grup de circuite care contin: interfata cu magistrala procesorului, controllerele de memorie, controllerele de magistrala, controllerele de intrare-iesire si altele. Practic, aproape toate circuitele de pe placa de baza sunt continute în setul de cipuri. Procesorul nu poate sa comunice cu memoria, placile adaptoare, celelate dispozitive, fara sa treaca prin setul de cipuri. Setul de cipuri este cel care controleaza interfata între procesor si restul calculatorului. La primele PC-uri nu exista un chipset propriuzis. Astfel, pe lânga procesor, pentru completarea sistemului, mai existau alte circuite separate: generatorul de tact, controllerul de magistrala, temporizatorul sistemului, controllerele de întreruperi si DMA, memoria CMOS, controllerul de tastatura.
Actualmente seturile de cipuri prezinta doua tipuri de arhitecturi: arhitectura North/South Bridge si arhitectura centralizata (hub).
Arhitectura North/South Bridge contine sectiunile:
     Puntea de nord (Northbridge)
     Puntea de sud (Southbridge)
     Cipul Super I/O

Circuitul Northbridge este un circuit integrat pe scara foarte larga, aproape la fel de complex ca si cipul UCP. El face legatura între magistrala de mare viteza a procesorului (cu frecvente posibile 1066/566/400/266/200/133/100/66 MHz) si magistralele mai lente: AGP (266/133/66 MHz) si PCI (33 MHz). Magistrala procesorului (numita si FSB - front side bus) este calea de comunicare dintre procesor si setul de cipuri. Frecventa reala a procesorului este un multiplu (2×, 2,5×, 3×, 5× etc.) al frecventei magistralei procesorului. Conectarea UCP la memoria cache de nivelul 2 se face direct, printr-o magistrala mai rapida decât cea a procesorului, functionând la acelasi tact cu cel al UCP. Magistrala memoriei este utilizata pentru transferarea informatiilor între procesor si memoria principala, RAM. Aceasta magistrala este conectata la cipul North Bridge. Cel mai bine este ca aceasta magistrala sa functioneze la aceeasi viteza
cu magistrala procesorului.
Conectarea UCP la adaptorul video se face prin intermediul magistralei numite AGP (Accelerated Graphics Port). Placile de baza ale PC-urilor sunt dotate cu câte un slot special de tipul AGP, unde se introduce placa video. Magistrala PCI, este disponibila ca iesire a circuitului Northbridge si contine 3-4 sloturi unde se pot conecta placi de extensie. Circuitul Southbridge este situat la cealalta extremitate a magistralei PCI (33 MHz), si permite legatura spre magistrala ISA (8,33 MHz), unde pot exista 1-2 sloturi disponibile. Interfetele IDE pentru hard disc, precum si noile interfete USB si IEEE 1394 (FireWire) îsi au originea în acest circuit.

  Cipul Super I/O este atasat magistralei ISA. În unele cazuri se considera sau este inclus în cipul Southbridge. În acest circuit, îsi au originea: portul de tastatura, portul de mouse (de magistrala), porturile seriale, portul paralel, interfata pentru unitatile de discheta.

Arhitectura centralizata (Hub)
În acest caz, cipul fostei punti de nord se numeste Memory Controller Hub, iar fosta punte de sud se numeste I/O Controller Hub. Principala diferenta în acest caz este ca cele doua cipuri nu mai sunt conectate prin magistrala PCI ci printr-o interfata de doua ori mai rapida (hub interface). Magistrala PCI este acum o iesire a cipului I/O Controller Hub. Principalele avantaje ale acestei arhitecturi sunt: viteza superioara de comunicare precum si faptul ca interfata PCI nu mai este implicata în comunicarea între cipuri astfel ca latimea sa de banda poate fi în totalitate folosita de dispozitivele conectate pe aceasta.

  Magistrale disponibile în exteriorul PC-ului
Portul serial
 În interiorul PC-ului informatia circula sub forma de unul sau mai multi octeti odata, pe un numar de linii paralele egal cu numarul bitilor care compun octetii. În exteriorul PC-ului, exista si o alta modalitate, mai ales daca distanta este mai mare si viteza necesara nu trebuie sa fie foarte mare. Aceasta modalitate este comunicatia seriala, în care informatia se transmite bit cu bit, pe o singura linie fizica. În practica, pentru o comunicatie seriala sunt necesare minimum 3 fire: unul pentru transmisia într-un sens, altul pentru transmisia în celalat sens si al treilea pentru masa (pentru întoarcerea curentului). Adeseori mai sunt necesare si alte linii, pentru semnalarea unor evenimente: de exemplu daca receptorul poate sa primeasca date.
Pentru implementarea unui port serial, un PC contine pe placa de baza un circuit de tip UART (Universal Asynchronous Receiver/Transmitter), încapsulat întrun circuit VLSI alaturi de alte circuite în interiorul puntii de sud. În principiu, procesul de transmitere seriala (asincrona) a datelor este în felul urmator: UCP transmite un octet circuitului UART. Acesta îl preia si îl memoreaza într-un registru, dupa care transmite bitii octetului unul câte unul pe linia seriala.
Fiecare octet este precedat de un bit de start (o tranzitie de pe 1 logic pe 0 logic), iar la sfarsitul octetului este inserat optional un bit de paritate (pentru detectia eventualelor erori) si 1 sau 2 biti de stop (pe 1 logic) La celalalt capat al liniei este un alt UART care dupa ce detecteaza bitul de start, „despacheteaza” ceea ce a împachetat primul UART. Când a primit toti bitii (întregul octet), el face o cerere de întrerupere catre propriul UCP, pentru ca aceasta sa preia octetul. Un circuit UART poate transmite date cu diferite viteze: 9600, 19200, 38400 bps, (biti pe secunda) viteza maxima fiind 115200 bps, care, datorita bitilor de încadrare de la transmisia asincrona devine aproximativ 11,5 kBps. Exista si un standard care precizeaza aceste aspecte legate de comunicatia seriala, numit RS 232. Un PC are un port serial de uz general, numit COM 1. Pentru acest port se foloseste conectorul cu 9 pini de tip tata (male), numit DE9. În cadrul PC-ului, de asemenea tastatura si mouse-ul comunica cu acesta printr-o interfata seriala.

Tastatura se conecteaza la PC printr-un conector special (exista 2 modele: DIN, cu 5 pini, sau mini-DIN cu 6 pini, numit si PS/2) care poate fi utilizat numai în acest scop. Interfata seriala este destul de asemanatoare cu cea de uz general descrisa anterior. Circuitul UART aferent este o parte a controlerului de tastatura. Bufferul acestuia este localizat în memoria principala a PC-ului, unde este disponibil pentru orice program care are nevoie de el.

Mouse-ul se poate conecta la PC prin doua tipuri de conectori. Primul este de tip mini-DIN cu 6 pini, asemanator cu cel al tastaturii, dar diferit din punct de vedere functional, si este folosit pentru mouse-urile de magistrala (PS/2). Al doilea tip este conectorul DE9 de tip tata al portului serial COM1, caz în care cablul mouse-ului este dotat cu un conector DE9 de tip mama. Un astfel de mouse se numeste mouse serial.
In variante mai noi atat tastatura cat si mouse-ul folosesc porturile USB pentru conectarea cu pc-ul.


Portul paralel
Portul paralel al PC-ului, numit LPT, transmite la fiecare moment de timp un octet, având astfel 8 linii de date, câte una pentru fiecare bit al octetului.
În momentul când IBM a lansat PC-ul, l-a dotat cu o interfata de imprimanta care folosea un port paralel. Interfata respectiva a fost dezvoltata initial de firma Centronix, care folosea un cablu cu câte un conector „micro ribbon” de 36 contacte la fiecare capat. IBM a considerat ca un astfel de conector ar fi prea mare pentru a încapea pe placa de extensie din PC, asa ca a ales pentru portul paralel cupla de DB25 de tip mama. Asadar, pentru a conecta o imprimanta la calculator este nevoie de un cablu cu un conector DB25 tata la un capat si unul de tip „micro ribbon” tata de 36 de contacte la celalalt capat (în acest conector exista mai multe contacte legate la masa).
În principiu, comunicatia calculator-imprimanta prin portul paralel se face în felul urmator: UCP trimite datele catre imprimanta plasând octetul pe cele 8 linii de date ale portului. În continuare, transmite un impuls pe o alta linie, numita strob, care informeaza imprimanta ca octetul este disponibil. Dupa primirea impulsului de strob, imprimanta citeste octetul iar apoi transmite înapoi catre PC, pe o alta linie numita acknowledge (confirmare), un impuls care spune portului ca poate pregati urmatorul octet. Astfel, PC-ul transmite date cât de repede le poate prelua imprimanta.
O interfata paralela standard este capabila sa transmita date cu rate de la 50 la 150 kB/s. Aceasta viteza este limitata în principal de câte actiuni trebuie sa execute UCP pentru a trimite în exterior fiecare octet, precum si de viteza magistralei. Desi initial, portul paralel al calculatorului avea rolul de a transmite date catre imprimanta, ulterior a devenit evident ca ar fi foarte bine sa se poata si receptiona date prin port. Astfel, variantele ulterioare de PC-uri au fost dotate cu porturi bidirectionale (adica porturi de intrare si de iesire), care permit rate de transfer pentru operatiile de intrare, comparabile cu cele de iesire.
   În prezent însa, portul serial si paralel încep sa nu mai fie prezente pe placile
de baza ale calculatoarelor, fiind considerate învechite, locul lor fiind luat treptat de
magistrala USB. Totusi, exista înca echipamente care se pot interfata cu PC-ul prin
aceste porturi, încât cunoasterea lor este înca necesara.

Portul Video


Portul Video reprezinta iesirea placii sau adaptorului video si este destinat conectarii monitorului. Este caracterizat printr-o cupla DE 15 mama, cu contacte pe 3 rânduri.
 La aceasta cupla se conecteaza printr-un cablu adecvat (cu o cupla DE 15 tata)
monitorul.





                Magistrale interne
  


  Magistrala PCI
Magistrala ISA devenise prea lenta în raport cu noile versiuni de UCP, ale caror frecvente de tact treceau de 33 MHz. În plus magistrala de date avea 32 de biti. Asa ca devenise imperios necesar ca o noua magistrala sa fie inclusa în PC-uri. Asa a aparut magistrala PCI (Peripheral Component Interconnect) impusa de firma Intel.

Magistrala PCI înseamna regândirea modului de interconectare a partilor unui PC. Initial erau luate în calcul numai partile interne ale unitatii de sistem, dar apoi modelul PCI a inclus si modalitatile de conectare ale pieselor exterioare acelei cutii. S-a dorit ca PCI sa fie un mijloc mai eficient de conectare a circuitelor din jurul UCP,
iar aceasta interconectare sa devina mai putin dependenta de tipul UCP.
  Initial, magistrala PCI avea de doua ori mai multe linii de date si putea opera de 4 ori mai repede decât magistrala ISA (adica 32 de biti de date si o frecventa de tact de 33 MHz), rezultând o rata de transfer (se mai numeste largime de banda) de 133 MB/s.
  Rata de transfer se calculeaza prin relatia:
ftact x N, unde N reprezinta numarul de octeti al magistralei de date.
În acest caz 1MB/s reprezinta 106 octeti/sec.
Conectoarele aveau 120 de conexiuni. Variantele ulterioare puteau lucra cu o frecventa de 66 MHz sau 133 MHz (varianta PCI-X) si magistrala de date de 64 biti. În acest caz, conectorul mai contine o sectiune cu înca 64 de contacte. Ca si unele dintre placile ISA mai noi, magistrala PCI accepta configurarea automata a sistemului (plug-and-play). Fiecare placa PCI trebuie sa dispuna de o unitate de stocare a propriilor date de configurare. În procesul de configurare, sistemul citeste si scrie datele stocate aici.
Multi producatori de PC-uri au introdus-o în calculatoarele lor si multi alti producatori au început sa faca placi de extensie PCI (placi video, interfete de hard disc, placi de retea, acestea fiind placile pentru care viteza mai mare a magistralei PCI este într-adevar vitala).În ultimul timp a aparut o magistrala numita PCI Express, compatibila software cu PCI, dar diferita din punct de vedere hardware, deoarece datele circula
serial (!). Se stie ca, teoretic transferul serial al datelor este mai lent decât cel paralel din simplul motiv ca se desfasoara pe o singura linie (de fapt doua, daca se considera si masa). Totusi, transferul paralel are doua dezavantaje, la viteze foarte mari: apar interferente între linii, datorate cuplajelor magnetice, respectiv apar întârzieri, ceea ce face ca la receptie datele sa poata fi eronate. Pentru a înlatura aceste dezavantaje, magistrala PCI Express foloseste transferul serial, care poate avea o frecventa de tact suficient de mare. Astfel, viteza de transfer realizata de varianta standard (care contine o pereche de linii, una pentru un sens, alta pentru celalalt numita lane – ulita!) este de 250 MB/s. Exista si în acest caz versiunile PCI Express x 2, x 4,..., x 32 care se obtin prin combinarea mai multor elemente standard (lane).

Imaginea de mai sus prezinta comparativ conectorii magistralei PCI Express cu cel de tip
PCI.

   Magistrala AGP (Accelerated Graphics Port)
În varianta initiala (1996), magistrala AGP lucra cu un tact de 66 MHz si o magistrala de date de 32 de biti, transferând o data (adica 32 biti) pe ciclu (o perioada a frecventei de tact). A rezultat o viteza de transfer de 264 MB/s. Urmatoarea varianta, chiar daca folosea tot o magistrala de date de 32 biti si-a dublat viteza prin aceea ca putea transfera 2 date pe durata unui ciclu (o data pe front crescator, cealalta pe front descrescator). A fost notata AGP 2x. Ulterior au fost create modelele AGP 4x si AGP 8x.

În placile de baza ale PC-urilor poate fi gasit un conector de tipul AGP, unde se introduce placa video. În ultimul timp însa conectorul de tip PCI Express tinde sa-l înlocuiasca, având an vedere si tendinta producatorilor de placi video.






     Magistrala IDE
  Magistrala IDE (Integrated Device Electronics) este o parte a magistralei ISA, care trebuie sa accepte unitati de disc sau alte asemenea dispozitive (unitati de CD, DVD, unitati de banda magnetica), redirijata spre un conector special, pentru a economisi sloturile ISA. Este cunoscuta si sub numele IDE/EIDE (Extented IDE) sau ATA (Advanced Technology Attachment).

  Un „canal” IDE este destinat utilizarii în interiorul unitatii de sistem a PC-ului (spre deosebire de SCSI care permite o extindere externa).
La început, hard discurile, desi aveau înglobate ceva componente electronice, mai aveau nevoie si de un controler situat pe o placa speciala, care era situata într-un slot de extensie si era legata la hard disc printr-un cablu de tip panglica. Apoi, aproape tot ce era necesar pentru functionarea si interfatarea cu PC-ul a fost pus pe unitatea de disc, dar a rezultat o placa mare care ocupa un slot ISA si mai obtura înca unul. În fine, circuitele electronice si-au redus si mai mult dimensiunea, încât puteau fi puse în totalitate pe unitatea de disc. Astfel, unitatea s-a numit Integrated Device Electronics (IDE), si se conecteaza la placa de baza printr-un cablu panglica cu 40 de fire.Pe un astfel de cablu se pot conecta doua unitati IDE, dintre care una trebuie sa fie principala (master), iar cealalta secundara (slave). Pe cutia fiecarui dispozitiv IDE exista jumperi (contacte) care permit stabilirea functiei de master sau slave.
  Exista sisteme BIOS care permit alocarea automata, daca fiecare dispozitiv IDE are pus jumperul in pozitia „cable select”. O placa de baza are doua conectoare pentru dispozitive IDE, încât pot fi conectate pâna la 4 astfel de dispozitive. Tot pe placa de baza, în apropierea celor 2 cuple pentru canalele IDE exista cupla cu 34 de contacte destinata unitatii de discheta, al carui controler este situat pe placa de baza.
  Când sunt instalate doua unitati (doua controllere), ambele receptioneaza toate comenzile sistemului, dar fiecare raspunde doar la comenzile adresate ei.. Adica, controllerul unei unitati nu raspunde atâta timp cât lucreaza cealalta unitate. IDE este o interfata paralela pe 16 biti.
Rata de transfer a interfetei IDE a crescut continuu, în functie de versiunile aparute. Astfel, rata are valori în gama 4...16 (modul PIO sau modul DMA), sau 16, 33, 66, 100 sau 133 în modurile ultra-DMA, toate valorile fiind în MB/s.

       Magistrala SATA (serial ATA)


Aceasta magistrala a aparut în anul 2004, fiind versiunea seriala a magistralei IDE (ATA sau parallel ATA) pe care tinde sa o înlocuiasca.
Pe placa de baza a unui PC exista 4-6 conectori SATA, fiecare conector având 7 pini Aceasta interfata elimina folosirea jumperilor pentru Master Slave, permite deconectarea/conectarea hard discului si când calculatorul este sub tensiune. Este realizata în 3 variante, având urmatoarele rate de transfer 1,5 Gb/s, 3 Gb/s, 6 Gb/s. Aceste rate sunt potrivite în special pentru dispozitivele de stocare de tip SSD, care au rate de circa 240 MB/s la citire si 70 MB/s la scriere.
Pentru conectarea hard discurilor dotate cu interfata IDE pe o placa de baza cu conectori SATA, exista adaptoare SATA-IDE. Este disponibila de asemenea în varianta e-SATA (external SATA), care permite conectarea exterioara a hard discurilor.

   Magistrala SCSI 
SCSI (Small Computer System Interface) este o varianta alternativa pentru conectarea hard discurilor în interiorul unui calculator, folosita initial la calculatoarele Macintosh, dar apoi si la PC-uri.
Avantajele utilizarii hard discurilor SCSI sunt doua: rata de transfer mai mare si posibilitatea conectarii mai multor hard discuri la calculator. Magistrala SCSI exista în varianta pe 8 biti sau pe 16 biti.
Pentru a implementa o astfel de magistrala, este necesar un controlor SCSI, introdus într-o cupla ISA (PCI). La acest controlor se poate conecta intern (în calculator) un hard disc SCSI, iar extern, la o cupla a controlorului accesibila în exteriorul calculatorului, înca maxim 7 dispozitive SCSI (alte hard discuri, unitati de CD-ROM sau CD-RW, chiar si imprimante). Fiecare astfel de dispozitiv are un identificator unic (adresa) între 0 si 7. De asemenea, fiecare dispozitiv are doi conectori, unul pentru intrare si unul pentru iesire. Iesirea unui dispozitiv este conectata prin cablu la intrarea urmatorului, adica dispozitivele sunt conectate în serie. Ultimul dispozitiv trebuie sa contina un terminator pentru a preveni interferenta dintre reflexiile de la sfârsitul magistralei SCSI si alte date de pe magistrala (acesta absoarbe energia undei). Daca magistrala este pe 16 biti, numarul dispozitivelor care se pot conecta este 16 (inclusiv controlorul).
Controlorul SCSI poate permite dispozitivelor SCSI sa comunice între ele în

sensul transferului de date, fara ca acesta sa mai intervina. Mai mult, toate
dispozitivele SCSI pot rula în acelasi timp. IDE sau EIDE permit ca numai un singur
dispozitiv sa fie activ la un moment dat.
Cablul cel mai des întâlnit pentru SCSI are 50 de fire.

Rata de transfer are valori de tipul 4, 8,..., si pâna la 320 sau 640 MB/s.
Hard discurile SCSI sunt folosite în majoritatea statiilor de lucru UNIX de tip SUN, în calculatoarele Macintosh dar si în PC-urile profesioniste, în special în serverele de retea.

       Magistrala USB

Din cele prezentate pâna în prezent rezulta ca exista destul de multe posibilitati de a
conecta diferitele echipamente de intrare-iesire la un PC. Unele necesita desfacerea
cutiei calculatorului (care bineînteles ca trebuie sa fie deconectat de la reteaua de
alimentare) si introducerea unei placi de extensie într-unul din conectorii PCI sau ISA. Daca placile nu sunt de tip PnP, acestea au comutatoare sau jumpere care trebuie configurate. Apoi trebuie reconectat calculatorul. Altele pot fi conectate la una din cuplele magistralelor standard (paralel, serial), însa numarul acestora este limitat, si în plus nu asigura o viteza de transfer suficienta. Apoi, exista nenumarate tipuri de conectori si, respectiv, cabluri. În concluzie, conectarea acestor echipamente era dificila.
Magistrala USB (Universal Serial Bus) a fost introdusa pentru a înlatura toate aceste neajunsuri.
Obiectivele pe care si le-au propus realizatorii acestei magistrale (companiile Compaq, IBM, Intel, Microsoft, etc.) au fost:

1. Utilizatorii nu trebuie sa aibe de pozitionat comutatoare sau jumpere pe placi sau echipamente.
2. Pentru a instala noi dispozitive de I/O, utilizatorii nu trebuie sa deschida cutia calculatorului.
3. Trebuie sa existe un singur tip de cablu, pentru conectarea tuturor dispozitivelor.
4. Atasarea a pâna la 127 de dispozitive la un singur calculator.
5. Dispozitivele trebuie sa poata fi instalate în timp ce calculatorul functioneaza (hot
plug and play).
6. Dupa instalarea unui nou dispozitiv sa nu trebuiasca sa fie repornit calculatorul.
USB îndeplineste toate aceste conditii. Este proiectata pentru dispozitive de viteza redusa si medie (tastaturi, mouse-uri, camere de luat vederi, scanere, imprimante).
Dispozitivele care se conecteaza sunt de doua tipuri:
-functii, care sunt dispozitive care se ataseaza individual la magistrala USB (tastatura,
mouse, camera digitala, imprimanta);
-distribuitoare (imaginea alaturata), care pun la dispozitie puncte suplimentare de conectare la
magistrala USB, permitând atasarea mai multor dispozitive distribuitoare sau functii;
fiecare punct de atasare se numeste port, existând distribuitoare cu 4 sau 8 porturi.

Calculatoarele sunt dotate cu 4-8 conectori USB.
Fiecare astfel de conector este considerat un distribuitor radacina (root hub), care este legat în interiorul PC-ului, la placa de baza. La fiecare conector USB se pot conecta prin cabluri dispozitive de tip functie sau distribuitoare. Astfel, topologia unui sistem USB este sub forma de arbore, cu radacina în conectorul calculatorului.

Cablul de conexiune contine 4 fire: doua pentru transmiterea datelor, unul pentru

alimentare (+5V), unul pentru masa. Alimentarea poate fi folosita de dispozitivele
care au consum redus (de exemplu, mouse-ul), iar cele care au un consum mare (de
exemplu, un difuzor) trebuie sa aibe alimentare proprie.
Cablurile de conexiune au doua tipuri de conectori: A (pentru conectare la PC sau la portul unui distribuitor, având o forma dreptunghiulara în sectiune) si B (pentru conectare la dispozitiv, având o forma patrata în sectiune).
Au fost realizate 3 variante ale standardului care defineste aceasta magistrala:

USB 1.0, USB 1.1 (foarte apropiate)
Permitea rate de transfer de 1,5 Mb/s (valoarea minima) si 12 Mb/s (valoarea
maxima).
USB 2.0
În acest caz, rata maxima de transfer a ajuns la 480 Mb/s. Când se conecteaza un nou dispozitiv de I/O hub-ul radacina detecteaza acest eveniment si întrerupe sistemul de operare. Apoi, sistemul de operare interogheaza dispozitivul, pentru a determina ce este si ce latime de banda necesita. Daca sistemul de operare accepta banda, asociaza dispozitivului o adresa unica (între 1 si 127) si încarca adresa în registrul de configurare. Toate dispozitivele partajeaza latimea de banda, adica pentru fiecare dispozitiv adaugat, magistrala va fi mai lenta.
Indiferent câte dispozitive sunt conectate, se foloseste o singura întrerupere IRQ. USB suporta trei moduri de lucru:
-întrerupere, pentru dispozitive care nu necesita viteza mare: tastatura, mouse-ul;
-izocron, pentru dispozitive care lucreaza în timp real: microfoane, difuzoare;
-bulk, pentru dipozitive care necesita cantitati mari de date, si permit corectia erorilor, dar nu lucreaza în timp real, cum ar fi imprimantele.

   Magistrala IEEE 1394 sau FireWire a fost a doua magistrala alaturi de USB,

introdusa pentru a compensa dezavantajele celorlalte. Este asemanatoare cu USB.
Este tot o interfata seriala, dar care functioneaza cu rate de transfer mai mari.
Ratele de transfer tipice sunt: 400 Mb/s, 800 Mb/s si 3200 Mb/s.
Cablul de conexiune contine 6 linii: 2 pentru alimentare, si 2 perechi de 2 fire pentru
semnal (numite Signal Pair A si Signal Pair B). Exista si varianta cu 4 linii, în care nu exista alimentarea.


Este folosita în special în domeniul multimedia (camere video digitale).
A fost introdusa de Apple Computer sub numele FireWire, care nu a permis si altor
firme sa o foloseasca sub acest nume.
Se pot conecta pâna la 63 de dispozitive.
Conectarea dispozitivelor se face în serie, prin înlantuire, fiecare având doi conectori.
Se pot folosi si distribuitoare, daca se doreste schimbarea dispozitivelor în timpul
functionarii. Nu necesita un calculator (host), adica pot fi conectate de exemplu doar
doua dispozitive.