Document, comentariu, eseu, bacalaureat, liceu si facultate
Top documenteAdmitereTesteUtileContact
      
    


 


Ultimele referate adaugate

Adauga referat - poti sa ne ajuti cu un referat?

Politica de confidentialitate



Ultimele referate descarcare de pe site
  CREDITUL IPOTECAR PENTRU INVESTITII IMOBILIARE (economie)
  Comertul cu amanuntul (economie)
  IDENTIFICAREA CRIMINALISTICA (drept)
  Mecanismul motor, Biela, organe mobile proiect (diverse)
  O scrisoare pierduta (romana)
  O scrisoare pierduta (romana)
  Ion DRUTA (romana)
  COMPORTAMENT PROSOCIAL-COMPORTAMENT ANTISOCIAL (psihologie)
  COMPORTAMENT PROSOCIAL-COMPORTAMENT ANTISOCIAL (psihologie)
  Starea civila (geografie)
 

Ultimele referate cautate in site
   domnisoara hus
   legume
    istoria unui galban
   metanol
   recapitulare
   profitul
   caract
   comentariu liric
   radiolocatia
   praslea cel voinic si merele da aur
 
despre:
 
Introducere in sistemul de operare MS-DOS
Colt dreapta
Vizite: ? Nota: ? Ce reprezinta? Intrebari si raspunsuri
 

 

Sistemul de operare DOS este destinat gestionarii resurselor hardware si software ale microcalculatoarelor cu arhitectura compatibila IBM PC, bazate pe microprocesoarele din familia 8086. Este un sistem de operare monoutilizator (un singur utilizator il poate folosi la un moment dat) si monotasking (la un anumit moment, poate rula un singur proces si el utilizeaza toate resursele masinii) si asigura o interfata relativ simpla om - sistem de calcul. Acest sistem se compune din :

- nucleu z9v12vp
- programe de prelucrare

Nucleul are doua nivele:

- ROMBIOS, rezident in memoria operativa (ROM)
- o serie de trei fisiere, rezidente pe disc si care se incarca in memorie la initializarea sistemului:

- IBMBIO.COM (IO.SYS-aprox 33 ko)
- IBMDOS.COM (MSDOS.SYS-aprox 38 ko)
- COMMAND.COM (aprox 48 ko)

Dupa ce sistemul de operare a fost incarcat, se incarca si se preda controlul fisierului executabil COMMAND.COM. Acest program este numit interpretor de comenzi si este destinat prelucrarii comenzilor DOS, actionind ca o interfata intre utilizator si sistemul de operare.

Printre operatiile cele mai folosite ale acestui sistem de operare sint:

- formatarea discurilor, compararea, copierea, stergerea, redenumirea fisierelor;
- executarea programelor de sistem, cum este EDLIN si DEBUG, ca si a programelor utilizator;
- selectarea diverselor optiuni pentru imprimanta sau ecran; transferul sistemului de operare pe un alt disc;
- recuperarea unui anumit fisier sau a unui grup de fisiere de pe un disc cu anumite zone distruse accidental;
- tiparirea imaginii de pe ecran la imprimanta sistemului;
- tiparirea unor fisiere la imprimanta, in timp ce sistemul de operare executa alte comenzi.

Structura sistemului de operare MS-DOS

Acest sistem de operare are o structura ierarhizata, cu mai multe nivele de referinta:




- Nivelul 0, corespunde nivelului fizic, la care se lucreaza numai in limbaj de asamblare. Acesta este nivelul cel mai dependent de hard si, prin urmare, cel mai putin portabil. La acest nivel se asigura, insa, viteza cea mai mare de prelucrare, ca si posibilitatea definirii unor functii noi, inexistente in sistemul de operare.

- Nivelul 1 este nivelul logic 8086/80286, care include functiile BIOS
(Basic Input Output System). Aceste functii reprezinta o interfata intre masina
(hardware) si utilizatorul de nivel imediat superior. Ele sint dependente de hard, nefiind portabile.

- Nivelul 2 este nivelul logic, implementat prin functiile DOS (Disk Operating
System). Aceste functii sint total independente de hard, variind ca numar dar nu si ca semnificatie, de la o versiune la alta. Ele pot fi apelate direct, atit din programe scrise in limbaj de asamblare, cit si din programe de nivel inalt si sint total portabile.

- Nivelul 3 este nivelul conceptual, cel mai putin dependent de hard, prin urmare de mare portabilitate. Practic, cererile de nivel 3 se transforma de catre compilatoare in cereri de nivel 2, acestea implicit in cereri de nivel 1, iar acestea sint realizate fizic folosind nivelul 0.

Nucleul MS-DOS

Principalele functii ale nucleului sint: interfata cu utili zatorul, gestiunea dispozitivelor periferice, controlul programe lor si gestiunea fisierelor disc.
IBMBIO.COM este un fisier rezident pe disc, care nu este vizibil la executia unei comenzi de afisare. Aceasta componenta, puternic dependenta de hardware, contine o colectie de programe-driver, care asigura gestiunea perifericelor standard. Utilizatorul are posibilitatea de a proiecta si instala propriile programe-driver.
IBMDOS.COM este tot un fisier rezident pe disc, care contine o serie de programe apelabile prin intreruperi software (declansate prin executia unor instructiuni masina specifice). Aceasta componenta asigura: dialogul cu tastatura si consola, functia de tiparire la imprimanta, ca si functiile de I/E cu calea de comunicatie seriala, gestionarea fisierelor de pe disc, functii de gestionare a memoriei, etc.
COMMAND.COM, sau interpretorul de comenzi, asigura dialogul cu utilizatorul si functiile de editare a liniei de comanda. Lucreaza cu doua categorii de comenzi:

- interne
- externe

Comenzile interne se executa imediat ce sint invocate, deoarece sint incarcate in memorie odata cu nucleul sistemului de operare (din care fac parte).
Cele mai multe comenzi interne sint simple si usor de utilizat, in contrast cu cele externe.
Comenzile externe sint rezidente pe disc ca fisiere program, de aceea conditia de executie este ca in prealabil sa fie incarcate in memorie. Aceasta inseamna ca discul care contine comanda apelata trebuie sa se gaseasca in unitate, altfel sistemul de operare nu este capabil sa o execute. Comenzile externe au ca fisiere una din extensiile: .COM, .EXE, sau .BAT. Fisierele cu extensia .COM sint fisiere imagine memorie, ele constind din cod nerelocabil
(cod fix). Programele .COM au multe restrictii, printre care aceea ca nu pot depasi 64 KB, nu accepta nici o referinta externa la nici un alt segment, se incarca la o adresa fixa, etc. Fisierele cu extensia .EXE specifica programe in cod obiect realocabil. Nu au nici o restrictie din cele mentionate pentru fisierele de tip .COM. Fisierele .BAT nu indica un fisier in format cod obiect, ci un fisier ASCII. Contin, de regula, comenzi DOS, interne sau externe, eventual parantezate, precum si instructiuni proprii ce fac parte din asa-numitul limbaj de comanda BATCH. Aceste fisiere se folosesc pentru a creste eficienta modului de lucru cu sistemul de operare, respectiv reducerea la minimum a dialogului dintre utilizator si sistem. Un fisier special de acest tip este AUTOEXEC.BAT, creat de catre utilizator si executat de sistemul de operare in cadrul fazei de initializare a sistemului.
COMMAND.COM are preferinte in analiza unei comenzi: intii o cauta in lista comenzilor interne, daca nu o gaseste cauta un fisier .COM, daca nu o gaseste cauta un fisier .EXE, iar daca nu, o cauta ca fisier .BAT.
Urmatoarele informatii se aplica tuturor comenzilor DOS:

- mesajul normal al interpretorului de comenzi este litera asociata unitatii de disc selectate (unitatea implicita), plus caracterul ">"; acest mesaj poate fi schimbat insa de catre utilizator, cu ajutorul comenzii PROMPT;

- comenzile sint urmate de obicei de unul sau mai multi parametri; ele trebuie separate prin delimitatori (spatiu, virgula, doua puncte, egal, TAB); delimitatorii pot fi diferiti in interiorul comenzii. De exemplu:

COPY oldfile.rel; newfile.rel
RENAME,thisfile thatfile

- cele trei parti ale spec_fisier (d:nume-fisier.ext) trebuie sa nu fie separate de nici un delimitator. Doua puncte (:) si punctul (.) servesc deja drept delimitatori;

- comenzile devin efective numai dupa ce a fost apasata tasta ENTER. Daca nu a aparut nici un mesaj de eroare inainte de reaparitia mesajului sistem, inseamna ca s-a introdus corect comanda si s-a executat corect;

- unitatile de disc vor fi referite ca unitati sursa si unitati destinatie.

In timpul introducerii comenzilor DOS, sint recunoscute urma toarele functii de control:

CTRL-N anuleaza ecoul iesirii la imprimanta

CTRL-C reintrare in sistemul de operare

CTRL-M sterge ultimul caracter introdus

CTRL-P trimite iesirea in ecou la imprimanta

CTRL-S suspenda afisarea iesirii pe ecranul terminalului.

Orice tasta afisata reia afisarea.

Urmatoarele nume sint pentru echipamente rezervate:

CON consola sistemului

AUX(COM1) port de comunicatii asincrone

COM2 al doilea port de comunicatii asincrone

LPT1(PRN) prima imprimanta paralela

LPT2 a doua imprimanta paralela

NUL echipament fictiv

Cu aceste denumiri sistemul DOS lucreaza exact ca si cu fisierele.
Intr-un nume de fisier se poate folosi caracterul "?" care indica faptul ca orice caracter poate ocupa aceasta pozitie si caracterul "*" care indica faptul ca orice caracter poate ocupa aceasta pozitie si tot restul pozitiilor in numele de fisier sau extensie.

Functiile speciale de editare

Daca se foloseste zona buffer pentru linia de comanda si se folosesc functiile speciale de editare, se beneficiaza de avantajele urmatoare:

1. o linie de comanda poate fi repetata imediat numai prin apasarea a doua taste;

2. o linie de comanda eronata poate fi editata si reincercata, fara a mai introduce intreaga linie de comanda;

3. o linie de comanda similara cu cea precedenta poate fi editata si executata cu un numar minim de caractere introduse.

Functiile speciale de editare sint:

F1 - copiaza un caracter din buffer si il afiseaza;

F2 - copiaza toate caracterele pina la caracterul specificat (caracterul introdus dupa F2);

F3 - copiaza pe ecran toate caracterele care au mai ramas in buffer;

DEL - salt peste un caracter din buffer (cursorul nu este mutat);

F4 - salt peste toate caracterele din buffer pina la un caracter specificat
(F4 este opusul lui F2);

ESC - anuleaza linia afisata curenta(zona buffer ramine nemodificata);

F5 - accepta o linie editata pentru continuarea editarii;

F6 - insereaza caracterul de sfirsit de fisier in buffer;

INS - permite comutarea modului de inserare caractere.

Lansarea in executie a sistemului de operare

Sistemul de operare MS-DOS poate fi lansat in executie in doua moduri distincte:

1. implicit, la punerea sub tensiune;

2. explicit, prin resetarea sistemului.

La punerea sub tensiune, se lanseaza in executie o secventa din ROM-BIOS,
STARTUP ROUTINES care:

- face teste de memorie;

- face teste de interfete periferice;

- creeaza tabelul vectorilor de intreruperi;

- initializeaza lucrul cu dispozitivele periferice.

La initializare, in caz de eroare pot fi auzite un numar de beepuri in difuzorul calculatorului, corespunzind unui cod de eroare in functie de numarul lor.

Numar beepuri Semnificatie
________________________________________________________________
1 eroare refresh DRAM
2 eroare paritate
3 eroare in primii 64K RAM
4 eroare timer sistem
5 eroare procesor
6 eroare controller tastatura, A20
7 eroare exceptie mod virtual
8 eroare test R/W memorie ecran
9 eroare suma de control ROM-BIOS

La initializare sistemul foloseste informatii din memora CMOS (nevolatila,SRAM)
Aici se retin informatii precum tipul discurilor (HDD+FDD) si unitatile logice aferente, marimea memoriei. La schimbarea dimensiunii memoriei calculatorul trebuie resetat pentru a se inscrie noua dimensiune.
Apoi, controlul este preluat de componenta BOOT ROUTINE, care identifica discul sistem. Daca a raspuns unul din discuri, se citeste primul sector, care contine programul incarcator. O data transferat in memorie, acesta este lansat in executie. Rolul lui este de a incarca partea nerezidenta a nucleului: IBMBIO,
IBMDOS si COMMAND. Tot in aceasta faza este cautat in directorul radacina un fisier de configurare, CONFIG SYS. Daca acesta este gasit, este executat. Apoi, dupa lansarea in executie a interpretorului de comenzi, acesta cauta pe disc, in directorul radacina, fisierul de comenzi AUTOEXEC.BAT. Daca este gasit, se executa automat comenzile pe care le contine.In caz contrar, COMMAND lanseaza un dialog pentru introducerea datei si orei curente, dupa care afiseaza mesajul sistem.

2.Explicit, se face prin apasarea simultana a trei taste:
aCTRLi-aALTi-aDELi. In urma apasarii acestor taste, se lanseaza in executie componenta BOOT ROUTINE. Resetarea mai este posibila prin actionarea unui buton
"RESET", acolo unde acesta prezent.

In concluzie, structura sistemului de operare poate fi pusa in evidenta ca in figura ce urmeaza:

DOS

+------------------------------------------------------+
| +-------------+ |
| | COMMAND.COM | |
| +-------------+ |
| +-------------+ |
| | DOS.COM | |
| +-------------+ |
| | | |
| | +-------------+ |
| | | BIO.COM |----------+ |
| | +-------------+ | | | | | |
+------------|-------------------|-|-|-|-|-------------+
| Resurse | | | | |
=============|===================|=|=|=|=|================
| | | | | +-> Imprimanta
| | | | +---> Tastatura
+----------------------+ | | +-----> Display
| | | +-------> Alte echipamente
| | V
| | +--------------------------+
| Restul memoriei | | |
| | | Spatiu disc |
| | | |
| | +--------------------------+
+----------------------+

Gestiunea fisierelor pe disc este asigurata prin doua elemente:

- tabela de alocare a fisierelor (FAT);

- structurile de directori.

Unitatea de baza in operatiile de I/O cu discul este sectorul care are o lungime fixa de 512 octeti. Unitatea de alocare a fisierelor pe disc (bloc de alocare) se numeste CLUSTER. El are o lungime fixa, functie de tipul discului.
(8 la HDD, 1 la FDD)
Dimensiunea clusterului se poate afla cu ajutorul utilitarelor.
Un fisier ocupa un numar intreg de clustere. Tabela de alocare a fisierelor contine harta de ocupare a discului plus informatii necesare regasirii pe suport a fisierelor. Tabela de alocare a fisierelor are atitea intrari cite clustere are volumul de disc respectiv. Dimensinea tabelei de alocare este fixa la nivel de volum dar variabila in functie de tipul discului.
Un fisier este un mod de inmagazinare si organizare a datelor pe un dispozitiv de stocare extern (de exemplu disc dur, disc flexibil, banda magnetica, etc.). Orice fisier este identificat printr-o specificare de fisier.
In DOS, aceasta specificare contine si secventa "numea.extensiei"
(ceea ce apare scris intre paranteze drepte are semnificatia de "optional", deci prezenta extensiei nu este obligatorie), unde:
- nume este numele fisierului, compus din 1-8 caractere;
Aceste caractere pot fi oricare dintre caracterele ASCII, mai putin
. " / \ a i : < > + = ; , si cele cu codul mai mic decit 21h.

- extensie este numele extensiei fisierului, compus din
1-3 caractere, precedate de un punct. Caracterele nepermise in numele unei extensii sunt aceleasi ca in numele unui fisier

De notat ca diferenta intre literele mari si cele mici este irelevanta, atita timp cit literele mici din numele unui fisier sunt convertite la litere mari.
De asemenea, numele unui fisier trebuie sa fie suficient de sugestiv asupra continutului sau (mai ales pentru cel care il foloseste). De exemplu, fisierul pe care il cititi acum are numele "socn1.txt", relevant asupra faptului ca el contine caractere ASCII (este fisier text - txt) si ca se refera la al doilea laborator SO.

Pentru identificare pe suport, orice fisier este inregistrat intr-un director al sistemului de operare. MS-DOS accepta o structura arborescenta de directoare, conform schemei:

+---------------+
|Radacina (ROOT)|
+---------------+
+----------------------------------- - - --------+
+--------+ +--------+ +--------+ +--------+
| Fis 1 | | sub 1 | | Fis 2 | | Fis n |
+--------+ +--------+ +--------+ +--------+
|
+------------------ - ----+
+--------+ +--------+ +--------+
| Fis | | Sub | | |
+--------+ +--------+ +--------+
+------------------ - ----+

Directorul radacina este o tabela rezidenta pe disc. Aceasta tabela are o dimensiune totala fixa, dar dependenta de tipul discului. Spatiul alocat acestei tabele se imparte in intrari; o intrare are intotdeauna 32 octeti.
Fiecare intrare contine informatii despre un fisier sau are informatii despre un subdirector sau informatii de eticheta. Un subdirector este un fisier disc obisnuit care are insa structura directorului radacina. Lungimea oricarui subdirector este teoretic nelimitata.
Structura arborescenta de directoare a aparut ca o necesitate dictata de capacitatea mare a discului si pentru a optimiza regasirea fisierelor.
Presupunind ca la un moment dat ajungeti sa manevrati un numar foarte mare de fisiere, este foarte posibil sa aveti nevoie sa le grupati, functie de anumite criterii. Sistemul de operare DOS va pune la dispozitie posibilitatea de a grupa fisierele, organizindu-le in directoare. Practic, un director este tot un fisier, dar informatia sa se refera la numele fisierelor pe care le contine.
Orice disc formatat contine macar un fisier director, directorul radacina notat cu "\". Directorul radacina poate sa contina numele altor directoare (pe linga nume de fisiere, eventual), iar acestea pot contine la rindul lor subdirectoare, s.a.m.d., numarul fiind limitat doar de spatiul pe disc. Este evident ca structura directoarelor pe disc este o structura de arbore. Numele directoarelor respecta aceleasi reguli ca numele de fisiere.

Fiecare dintre dv. lucreaza intr-un anumit director, complet specificat la prompterul sistem. Acesta poarta numele de director curent.

Exista o limita de adincime a arborilor, limita dictata de doua considerente:


1. timpul necesar regasirii unui fisier;

2. restrictia ca un lant de subdirectoare sa se poata exprima prin maxim 64 de caractere.

Fiecare intrare in director sau subdirector care se asociaza unui fisier pe disc contine:

- numele fisierului

- lungimea fisierului

- atributele fisierului.

Tabela FAT asigura inlantuirea adreselor clusterelor asociate unui fisier. Cea mai importanta informatie de pe un volum disc este FAT, de aceea
MS-DOS tine doua copii de FAT pe disc (lucreaza numai cu una). Se poate recupera cu restrictii mari, un disc al carui director radacina a fost distrus (vezi utilitare).

Este acum momentul sa introducem ce inseamna o specificare completa de fisier :
ad:i acalei numea.exti unde nume si ext au fost detaliate mai sus, iar
- d: - este unitatea de disc pe care se afla fisierul, specificata printr-o litera. De exemplu, unitatea de disc flexibil de 3 inch pe statiile pe care lucrati are atribuita litera "a". Daca unitatea de disc nu este specificata, atunci se considera implicit a fi cea afisata in prompterul sistem.
- cale - este calea (pe structura arborescenta) catre directorul in care se afla fisierul specificat. Aceasta cale este formata dintr-un sir de nume de directoare, separate prin caracterul
"\" (backslash). In cazul in care cautarea se face incepind cu directorul radacina, primul caracter tiparit este "\". Daca acesta lipseste, cautarea se face incepind cu directorul curent.
Exista o restrictie la numele unei cai: ea nu trebuie sa depaseasca 63 de caractere.

Observatie: pot exista doua fisiere sau doua directoare cu acelasi nume daca ele au cai de specificare diferite.

In cele ce urmeaza, vom vorbi despre caracterele speciale (asa numitele
wildcard-uri, inlocuitori a orice) care pot apare in numele unui fisier, in anumite contexte. De exemplu, dati comanda DIR. Rezultatul va fi afisarea unei liste a fisierelor si directoarelor continute in directorul curent. Dar poate ca pe dv. nu va intereseaza intreaga lista ci doar citeva fisiere care au caracteristici comune (in numele lor). De pilda, v-ar putea interesa doar lista fisierelor executabile (cu extensia ".exe") ori fisierele al caror nume incepe cu secventa "ab", s.a.m.d. Exista doua caractere speciale destinate acestui scop: "*" si "?". Pentru a explica semnificatia lor ne vom folosi tot de comanda DIR. De exemplu:

dir ab?de.exe

va lista toate intrarile din directorul curent care au numele de fisier compus din 5 caractere, incepind cu AB, urmatorul caracter putind fi oricare, urmat de DE si avind extensia EXE.
Prezenta caracterului * intr-un nume de fisier sau extensie de fisier indica fapul ca, incepind cu pozitia marcata de *, orice sir de caracter poate apare.
De exemplu:

dir ab*.*

va lista toate intrarile din directorul curent care incep cu AB si au orice extensie.

Atribute

R/O - protejat la scriere:
- atributul se seteaza prin comanda externa ATTRIB si prin utilitare.

HIDDEN - face ca fisierul respectiv sa nu apara intr-o lista de fisiere afisate cu comanda DIR.
- atributul se seteaza cu utilitare.

SYS
- atribut care nu trebuie modificat. El este asociat standard componentelor
DOS. Poate fi modificat cu utilitare speciale.

ARC
- arhivare, are urmatoarea semnificatie: se numeste bit de arhivare si este resetat (pus pe 0) ori de cite ori un fisier a fost copiat (salvat) cu comanda externa BACKUP. Atributul se seteaza (se pune pe 1) ori de cite ori se fac modificari in fisier, respectiv chiar si in urma unei operatii de creare prin copiere.

Structura unui disc DOS

Piste, Octeti si Sectoare

Informatia este scrisa pe disc de-a lungul unor cercuri concentrice numite piste. Capul de citire/scriere al unitatii de disc se misca inainte si inapoi de la o pista la alta in timp ce discul flexibil se roteste in jurul lui.
Aceasta permite capului de citire sa gaseasca anumite date pentru a fi citite sau sa gaseasca locul in care sint scrise noile informatii. Spatiul pe disc ca si spatiul de memorie este masurat in octeti. Fiecare pista este impartita in opt sau noua sectoare de lungime 512 octeti. Atita timp cit utilizati functiile
DOS, nu trebuie sa cunoasteti fata, pista sau sectorul informatiei scrise/citite pe disc. Aceasta gestiune se realizeaza automat de sistemul de operare.
Orice disc DOS pentru a fi recunoscut trebuie premarcat. Operatia de premarcare se face cu o comanda externa de FORMAT. Comanda FORMAT este distructiva pentru un disc fix (distruge FAT). Pentru discuri flexibile scrie in toate pistele o constanta E6 (formatare).

Intrebari

- ce reprezinta MS-DOS ?
- care sint principalele nivele ale sistemului de operare ?
- care sint tipurile de comenzi DOS ?
- cum se poate incarca sistemul ?
- care sint elementele ce asigura gestiunea fisierelor pe disc ?
- care sint atributele fisierelor ?
- care este modul de specificare a fisierelor ?

Lucrari practice

- sa se testeze cele doua moduri de lansare in executie a sistemului;
- sa se formateze un disc sistem, care sa aiba o eticheta oarecare;
- sa se foloseasca functiile de editare a unei linii de comanda.

In cele ce urmeaza, aveti descrise citeva dintre comenzile sistemului de operare DOS cel mai des utilizate.

___ Comenzi de lucru cu fisiere ___

COPY - comanda interna

Descriere: permite copierea unuia sau mai multor fisiere; optional, numele fisierelor pot fi schimbate ori se poate realiza concatenarea unor fisiere. De asemenea, comanda COPY poate fi folosita pentru transferul datelor intre oricare dintre echipamentele periferice.

Forma generala: copy ad:iacaleinume_fisier_sursaa.exti
ad:iacaleianume_fis_destinatiea.extii copy ad:iacaleinume_fisier_sursaa.exti
a+ad:iacaleianume_fis_destinatiea.extii...i
ad:iacaleianume_fis_destinatiea.extii

Exemple: copy a:test.txt copie fisierul test.txt de pe unitatea "a" in directorul curent, cu acelasi nume, test.txt copy a:\subdir\test1.txt c:\subdir1 copie fisierul test1.txt de pe unitatea "a", din directorul "subdir" directorul "subdir1" aflat pe unitatea "c" copy program.bak program.pas copie fisierul din directorul curent numit "program.bak" in acelasi director, dar cu numele program.pas. copy *.pas a:\programe copie toate fisierele cu extensia ".pas" din directorul curent pe unitatea "a", in directorul "programe" copy prog1.pas+prog2.pas+prog3.pas final.pas creeaza un fisier nou, numit "final.pas" al carui continut va fi concatenarea fisierelor prog1.pas, prog2.pas si prog3.pas copy prog1.asm+prog2.asm adauga continutul fisierului "prog2.asm" la sfirsitul lui
"prog1.asm"; deci rezultatul este in "prog1.asm".


DEL - comanda interna

Descriere: sterge unul sau mai multe fisiere

Forma generala:
DEL ad:iacaleianume_fisiera.extii

Exemple: del prog.exe sterge fisierul "prog.exe" din directorul curent del a:\surse\*.pas sterge toate fisierele cu extensia ".pas" aflate pe unitatea "a", in directorul "surse" del \test sterge toate fisierele ca intrari ale subdirectorului "test" al directorului radacina. del *.* sterge toate fisierele din directorul curent. Sistemul de operare emite un mesaj "Are you sure(Y/N)?" pentru a verifica daca intr-adevar utilizatorul doreste stergerea fisierelor. Daca da, se apasa Y (yes); altfel N (no).

DIR - comanda interna

Descriere: afiseaza toate intrarile, sau numai cele specificate, intr-un fisier director. Informatia afisata include numele unitatii de disc, informatii legate de dimensiunea fisierelor (in octeti), data si ora la care au fost create ori modificate ultima oara, precum si dimensiunea spatiului liber pe disc.

Forma generala:
DIR ad:iacaleianume_fisieria.extia/Pia/Wi

Parametrul /P determina executia unei pauze atunci cind ecranul este plin; continuarea se face prin apasarea oricarei taste.
Parametrul /W produce o afisare condensata a listei intrarilor din director, continind doar numele fisierelor si subdirectoarelor.

MORE - comanda externa

Descriere: este un filtru care citeste date de la echipamentul standard de intrare si le trimite la echipamentul standard de iesire. Cind ecranul este plin, se executa o pauza semnalata de mesajul --More--; apasarea oricarei taste are ca efect reluarea afisarii.

Forma generala:

ad:iacaleiMORE

Exemple: more <test.asm afiseaza continutul fisierului "test.asm" ecran cu ecran.

REN - comanda interna

Descriere: schimba numele unui fisier; dupa redenumire, fisierul va ramine in acelasi director.

Forma generala:
REN ad:iacaleinume_fisiera.exti nume_fisiera.exti

Exemple: ren a:prog.pas aplic.pas redenumeste fisierul "prog.pas" de pe unitatea "a", in "aplic.pas"

TYPE - comanda interna

Descriere: afiseaza continutul unui fisier la dispozitivul standard de iesire. Observatie: comanda se aplica unui singur fisier, deci folosirea caracterelor * si ? nu este permisa. De obicei aceasta comanda se foloseste pentru afisarea unor fisiere ASCII de dimensiune mica.

Forma generala:
TYPE ad:iacaleinume_fisiera.exti

___ Comenzi de lucru cu directoare ____


CD (Change Directory) - comanda interna

Descriere: permite schimbarea directorului curent

Forma generala:
CD ad:iacalei

Exemple: cd \ schimba directorul curent in directorul radacina cd .. schimba directorul curent in directorul parinte al actualului director curent cd a:\subdir1\subdir2 schimba directorul curent pe unitatea "a", pe cale director_radacina->subdir1->subdir2.

MD (Make Directory) - comanda interna

Descriere: permite crearea unui director nou.

Forma generala:
MD ad:iacalei

Exemple: md \subdir creeaza o intrare noua in directorul radacina de pe unitatea curenta pentru subdirectorul "subdir" md subdir creeaza o intrare noua in directorul curent pentru subdirectorul
"subdir"

PATH - comanda interna

Descriere: permite specificarea unei liste de cai pe care pot fi cautate fisiere. Motivatia este imediata: de obicei, fisierele executabile - comenzi externe ale sistemului de operare DOS se afla intr-un director numit "DOS". Apelul unei comenzi ar trebui facut prin specificarea completa a numelui fisierului, adica incluzind unitatea de disc si calea.
Daca fisierele de comenzi nu sunt precedate de un nume de cale, cautarea lor este facuta doar in directorul curent. Prin comanda
PATH se inlesneste cautarea unui fisier si in alte cai, astfel incit sa nu mai fie necesara specificarea completa a caii.

Forma generala:
PATH ad:iacaleia;ad:iacalei...i

Observatie: elementele listei de directoare sunt separate prin ";".
Cautarea in directoare se face in ordinea in care au fost specificate in lista. Directorul curent nu este modificat.

Exemple:

path afiseaza lista directoarelor in care se face cautarea, lista anterior setata printr-o comanda PATH. path c:;a:\subdir determina cautarea in directorul curent al unitatii "c:", apoi in subdirectorul "subdir" al directorului radacina, de pe unitatea
"a:"


RD (Remove Directory) - comanda interna

Descriere: sterge un director

Forma generala:
RD ad:icale

Observatie: directorul care va fi sters trebuie sa fie vid (sa nu contina nici un fisier; practic, acest lucru poate fi usor vazut cu un DIR pe calea spre directorul in cauza, care va afisa doar doua intrari: "." si ".."). Ultimul director specificat in cale va fi sters.

Exemple: rd \subdir1\subdir2 va sterge subdirectorul "subdir2" al subdirectorului "subdir1" al directorului radacina de pe unitatea de disc curenta.

TREE - comanda externa

Descriere: listeaza toate caile de pe discul specificat, optional si numele fisierelor din fiecare subdirector.

Forma generala:
ad:iacaleiTREEad:ia/Fi

Numele de unitate si calea introduse inaintea numelui comenzii reprezinta locul unde se afla fisierul "tree.com" (de mentionat ca aceasta cale nu mai trebuie specificata daca ea a fost anterior prinsa intr-o comanda PATH). Parametrul ad:i de dupa comanda
TREE specifica unitatea de disc a carei structura de directoare se doreste a fi vizualizata. Daca se utilizeaza optiunea /F, vor fi listate si numele fisierelor - intrare in fiecare subdirector.

___ Indirectarea intrarii/iesirii standard ___

Implicit, echipamentul de intrare standard pe care il folositi este tastatura, iar cel de iesire este monitorul. Comanda DIR, de exemplu, afiseaza la iesirea standard lista fisierelor si directoarelor dintr-o cale specificata. Sistemul de operare DOS va pune la dispozitie posibilitatea de a indirecta intrarea sau iesirea standard. De exemplu, puteti trimite iesirea comenzii DIR intr-un fisier cu numele "fisier.txt" astfel: dir >fisier.txt
Fisierul in cauza va contine ceea ce in mod normal ar fi afisat pe monitor, deci iesirea standard a fost indirectata.
De asemenea, mai multe programe pot fi inlantuite, iesirea unuia fiind intrare pentru urmatorul. Inlantuirea este notata prin caracterul
"|". De exemplu, comanda dir|sort determina ca iesirea generata de comanda DIR sa fie tratata drept intrare pentru comanda SORT (descrisa mai jos). De fapt, aceasta comanda va genera lista intrarilor sortate (!) ale directorului curent.
Un alt exemplu: dir|sort > fis.txt va trimite lista fisierelor sortata in fisierul "fis.txt".
In cazul comenzilor care asteapta introducerea unor date de la tastatura, intrarea standard poate fi indirectata. De exemplu, sort <fis1.txt citeste datele din "fis1.txt", le sorteaza, apoi le trimite la iesirea standard sort <fis1.txt >fis2.txt face acelasi lucru, doar ca iesirea standard este indirectata spre fisierul
"fis2.txt".

___ Filtre DOS ___

Exista anumite comenzi DOS care citesc date de la echipamentul standard de intrare, le modifica, apoi afiseaza rezultatul la echipamentul standard de iesire. Aceste comenzi se numesc "filtre". Exista 3 filtre DOS:
SORT - care sorteaza date text, FIND - care cauta intr-un fisier aparitia unui sir de caractere specificat, MORE (detaliata mai sus).

SORT - comanda externa

Descriere: filtru care citeste datele de la echipamentul standard de intrare, le sorteaza, apoi le scrie la echipamentul standard de iesire.

Forma generala:

ad:iacaleiSORT a/Ria/+ni
Sortarea este facuta crescator in ordinea codurilor ASCII, la nivel de linie de text. Parametrul /R determina efectuarea sortarii in ordine descrescatoare. Parametrul /+n, cu n intreg pozitiv, determina inceperea sortarii din coloana n (daca nu este specificat, se incepe sortarea din coloana 1); dimensiunea maxima a fisierului care poate fi sortat este de 63 Kocteti.

Exemple: sort /r <nesort.txt >sortat.txt sorteaza in ordine descrescatoare liniile fisierului "nesort.txt" si trimite iesirea in fisierul "sortat.txt" dir|sort /+3 >list.srt determina sortarea iesirii comenzii DIR din coloana 3, si redirectarea iesirii in fisierul "list.srt".

FIND - comanda externa

Descriere: trimite la echipamentul standard de iesire toate liniile din fisierele specificate in linia de comanda care contin un sir de caractere specificat

Forma generala:
ad:iacaleiFIND a/Via/Cia/Ni "sir" aad:iacaleinume_fisa.exti ...i
Sirul de caractere cautat este scris intre ghilimele (in cazul in care sirul insusi contine caracterul ", acesta trebuie dublat).
Comparatia tine cont de diferenta intre literele mici si cele mari.
Parametrul /V determina afisarea tuturor liniilor care nu contin sirul specificat. Parametrul /C determina afisarea unui contor cu numarul de aparitii al sirului specificat in fiecare fisier, fara a mai afisa liniile care contin sirul specificat. Parametrul /N determina o numerotare a liniilor care contin sirul.Numarul de linie se afiseaza in fata fiecarei linii scrise. Primul caracter CTRL/Z
(care marcheaza sfirsit de fisier) va determina sfirsitul cautarii.

Exemple: find "test" fis1.txt fis2.txt fis3.txt afiseaza toate liniile din fisierele "fis1.txt", "fis2.txt" si
"fis3.txt" (in aceasta ordine) care contin sirul "test".

INTREBARI SI EXERCITII

1. Mentionati care este directorul dv. curent?
2. Copiati un fisier de la tastatura, apoi afisati-i continutul, utilizind comenzi ale sistemului de operare DOS (nota: dupa ce ati terminat de introdus textul, tipariti CTRL-Z, caracter ce marcheaza sfirsitul unui fisier ASCII, apoi ENTER).
3. Copiati fisierul "socn1.txt" in directorul dv. curent.
4. Creati un subdirector al directorului curent, numit TEMPORAR, schimbati directorul curent astfel incit sa puteti avea acces la intrarile in acest director si apoi mutati in el fisierul socn1.txt copiat anterior.
5. Stergeti directorul TEMPORAR.
6. Completati raspunsurile exercitiilor din laboratorul precedent in trei fisiere diferite (de exemplu, r1.txt, r2.txt, r3.txt), folosindu-va de un editor oarecare. La sfirsit, concatenati cele trei fisiere in r1.txt.
7. Concatenati fisierele r1.txt, r2.txt, r3.txt intr-un fisier nou, cu un nume la alegerea dv.
8. Afisati continutul fisierului creat la exercitiul 7, folosind comenzile
TYPE si MORE. Ce sesizati?
9. Care este directorul parinte al directorului radacina?
10. Care dintre comenzile urmatoare sunt comenzi interne si care externe?
DIR, CD, TREE, COPY, MORE
11. Folositi comanda PATH, astfel incit cautarea fisierelor sa se poata face si in directorul dv. curent.

Sistemul Unix

O intrebare care revine persistent in ultima vreme este De ce Unix ?
Ce elemente determina implicarea acestui sistem de operare in obiectul de activitate al foarte multor standarde? De ce nu se opteazeaza pentru alte medii? Un raspuns poate fi dat privind inapoi in istoria acestui sistem de operare. Cand au inceput eforturile de standardizare, chiar utilizatorii de sistem UNIX au fost aceia care au asigurat suportul pentru comisiile nationale sau internationale de standardizare. Pentru ca au fost mult mai multi producatori de sisteme, si produse pentru UNIX si mult mai multi utilizatori decat cei dedicati platformelor proprietare, ei au putut sa se impuna.
Partizanii sistemului UNIX au avut de asemenea si avantajul ca au inceput activitatea inaintea celor apartinand sistemelor proprietare.In plus, cei care au impus sistemul UNIX au sesizat un avantaj deosebit al acestuia: el nu este asociat cu un singur producator. Toti acesti factori s-au alaturat efortului pentru standardizarea a ceea ce era in 1981 un sistem de operare nepopular.
Astazi standardele, la fel de bine ca eforturile de comercializare ale producatorilor, dau sistemului UNIX puterea si complexitatea necesare pentru a castiga acceptarea sa ca sistem de operare, nu numai in laboratoarele de cercetare ci si in afara lor, in instalatii sau birouri. Cu toate acestea perspectivele sistemului UNIX raman inca cetoase. In acest moment ne aflam intr-un punct crucial din ciclul sau de viata, iar urmatorii ani vor arata daca el poate supravietui testelor care i se vor impune. Optiuni exista in continuare in favoarea sistemelor MS-DOS, OS/2, sisteme care continua sa absoarba importante resurse banesti si valoroase resurse de dezvoltare sau programare.
Chiar si sistemele Macintosh sau Next (ultimul dintre ele avand un sistem de operare UNIX-like), dispunand de o interfata utilizator prietenoasa si de un suport hardware puternic, pot fi luate in consideratie ca alternative.
Poate UNIX sa fie un sistem de operare competitiv intr-o lume in care ceea ce este miniatural este frumos si in care apropierea fata de utilizator este cel putin la fel de importanta ca performanta de ansamblu a sistemului?
Foarte multe companii producatoare sau distribuitoare spera din toata inima sa fie asa. Piata comerciala UNIX creste rapid, an de an si in ciuda lipsei continue a aplicatiilor de uz curent si a pretului mare al software-ului si hardware-ului, comparativ cu ceea ce se ofera pe platformele OS/2 sau MS-DOS, se prevad noi salturi spectaculoase. Foarte mult din succesul sistemului UNIX este datorat perceptiei sale ca o relativ ieftina solutie departamentala, in acele medii in care este necesar sa se asigure accesul multiutilizator. Un sistem mic UNIX poate fi utilizat cu diferite terminale asigurand tot atatea functionalitate ca si o statie personala de lucru sau o retea. Sistemele care ruleaza UNIX asigura un raport cost/performanta mai bun decat sistemele mai mici, de tip desktop.
Pentru a rezista asaltului sistemelor PC, din ce in ce mai bune, producatorii
UNIX utilizeaza ca o arma, standardizarea. De la companiile independente pana la holdingurile industriale, producatorii si distribuitorii promoveaza noile medii standardizate pentru a convinge potentialii clienti ca sistemul
UNIX ii elibereaza de dependenta de un singur producator si ca aceeasi interfata utilizator sau software poate fi intalnita pe un numar de masini diferite.
Asigurand o multitudine de solutii pentru clientii lor, acesti producatori si distribuitori spera sa demonstreze astfel ca portabilitatea si compatibilitatea dintre diferitele masini UNIX este intr-adevar posibila si ca, in consecinta,
UNIX promite un nivel de portabilitate mai mare decat cel asigurat in mediul
MS-DOS si mult mai mare, raportat la prelucrarea realizata.

UNIX - O privire de ansamblu

Pentru a da un raspuns cat mai concludent la intrebarea De ce UNIX? vom realiza in paragraful de fata o privire generala asupra acestui sistem de operare.
Conceptia sistemului UNIX se bazeaza pe cateva elemente esentiale ce asigura mijloacele necesare pentru rezolvarea problemelor unor largi categorii de utilizatori, de la programatori la operatori ai resurselor sistemului.
O colectie de rutine, numite kernel, formeaza nucleul UNIX. Kernel-ul asigura resurselor sistemului interactiunea directa cu hardware-ul calculatorului.
In sistemul UNIX numai rutinele kernel-ului pot interactiona cu hardware- ul calculatorului. Programele si aplicatiile utilizeaza aceste rutine numite apeluri sistem (sau directive sistem) pentru a-si putea realiza functiile.
De exemplu, exista o astfel de rutina numita open. Pentru a examina continutul unui anumit fisier, acesta trebuie deschis. Apelul rutinei open realizeaza operatiile necesare sistemului pentru a deschide fisierul. O alta rutina este read, care permite programelor sa citeasca in memorie continutul fisierelor.
Exista aproximativ 100 de apeluri sistem. UNIX si kernel nu sint sinonime.
Exista programe scurte numite utilitare care realizeaza prelucrarile de baza prin apeluri de rutine kernel, in anumite secvente. In conceptia UNIX toate aceste componente, kernel-ul si colectia de utilitare, opereaza impreuna si formeaza un sistem puternic si flexibil.
Un alt concept fundamental UNIX este modularitatea. Interfata utilizator permite operatorilor terminali sa interactioneze cu sistemul de operare UNIX pentru a realiza o anumita sarcina. In majoritatea sistemelor de operare interfata utilizator este parte integranta a sistemului. Modificarea ei necesita astfel un volum foarte mare de munca. In cadrul sistemului de operare UNIX, interfata utilizator este pur si simplu alt program, numit shell. Tendinta este sa se realizeze shell-uri cit mai prietenoase. Pentru ca shell este alt program, el poate fi inlocuit cu un program interactiv, mai intuitiv grafic.
Aceasta modularitate in proiectarea UNIX permite nenumarate moduri de configurare a sistemului de operare.
Sistemul UNIX a evoluat de-a lungul a aproape trei decenii. In 1965 MIT si General Electric au demarat dezvoltarea unui sistem de operare foarte interesant numit Multics. Sistemul Multics , desi promitator ca performante nu a fost finalizat pina la o versiune comerciala. Unul din cercetatorii care au lucrat la proiectul Multics, Ken Thompson, a utilizat Multics ca model pentru scrierea unui program numit Calatorie Spatiala (Space Travel).
Pentru rularea acestui program, Thompson a gasit un suport hardware in masinile Digital Equipment PDP-7 si de aici a inceput implementarea unei versiuni mai performante a programului sau. Thompson a avut ideea sa inlocuiasca sistemul de operare rudimentar al masinilor PDP-7, cu altul nou, mai evoluat, bazat in esenta pe mecanismele sistemului Multics si in primul rind pe sistemul ierarhizat de fisiere al acestuia din urma. De aici, evolutia acestui nou sistem de operare a continuat progresiv. Ken Thompson a sezizat ca dezvoltarea sistemului de operare va fi mai eficienta daca se va folosi in locul limbajului de asamblare, un limbaj de nivel inalt. In urma unor tentative nereusite cu limbajul Fortran si mai apoi BCPL (Basic Combined
Programming Language) el a implementat un nou limbaj numit B. Cu acest limbaj a inceput sa scrie noi utilitare pentru masinile PDP-7, care ulterior au fost transferate pe PDP 11/20. Avand ca platforma hardware tot masinile
PDP, si alti cercetatori s-au implicat in dezvoltarea noului sistem de operare.
Un pas important s-a realizat prin intermediul lui Dennis Ritchie de la Bell
Laboratories. Ritchie a depistat inconsistentele limbajului B si a dezvolata un limbaj propriu, numit C, un limbaj succesor al lui B. Aparitia limbajului C reprezinta un jalon in evolutia sistemului de operare UNIX. In 1973 majoritatea componentelor sistemului de operare UNIX erau rescrise in limbaj C.
Mai usor de utilizat decat limbajul de asamblare, limbajul C a asigurat fundamentele dezvoltarii viitoare a sistemului UNIX. Limbajul C este relativ
"mic" ca volum, el poate fi astfel transportat relativ usor pe alte sisteme.
Capacitatea de a muta cod UNIX de la un sistem la altul,numita portabilitate este unul dintre motivele principale pentru care UNIX este utilizat pe scara larga. De-a lungul anilor '70 s-au produs multe schimbari revolutionare in cadrul sistemului UNIX. In 1974 AT&T, principala companie realizatoare,a a permis institutiilor educationale sa ruleze versiunea V a sistemului UNIX; de aici inevitabil, s-au produs noi dezvoltari ale sistemului si s-a largit considerabil clasa utilizatorilor acestui sistem de operare.
Pentru potentialul utilizator de sistem UNIX al anilor '90 este utila o prezentare a versiunilor de UNIX existente, inclusiv a celor oferite de piata comerciala si, de asemenea, o evaluare a standardelor admise de fiecare.

Alternative Unix

Berkeley UNIX (BSD)

Un nucleu de dezvoltare foarte important al sistemului UNIX a fost grupul de la Computer Systems Research, al Universitatii California din
Berkeley. Aici au venit sa lucreze si un numar de cercetatori de la Bell Labs.
Grupul de experti UNIX sintetizat aici a promovat noi directii de dezvoltare pentru UNIX, concretizate in versiunea Berkeley Software Distribution,cunoscuta mult sub acronimul BSD. Grupul Berkeley a avut acces la un numar de calculatoare DEC VAX, care rulau Versiunea 7 a sisten
DEC VAX, care rulau Versiunea 7 a sistemului de operare UNIX. Aceasta versiune era numita 32lV deoarece calcul era numita 32/V deoarece calculatoarele VAX utilizau un procesor pe 32 de biti.
Grupul UNIX de la UC Berkeley a realizat modificari importante la versiunea 32/V.
O modificare importanta se refera la procedura de gestiune a memoriei.
Kernel-ul a fost modificat pentru a utiliza gestiunea memoriei virtuale, cu paginare (pana in acel moment UNIX folosea mecanismul de swapping al memoriei pentru a asigura facilitatile de multiprogramare). Prin swapping, unui program i se va permite rularea numai o cuanta de timp, la sfarsitul careia, daca alt program a solicitat accesul la resursele sistemului, atunci programului planificator va transfera informatia curenta din memorie pe disc. Evident, numarul programelor rulate simultan, fara a bloca sistemul, este relativ redus.
Mecanismul de paginare a memoriei utilizeaza resursele hardware ale calculatorului pentru a tine evidenta spatiului de memorie utilizat, altfel spus numarul de pagini utilizate.
Alta contributie majora a fost adusa de grupul Berkeley la indemnul
Departamentului Apararii al SUA. In 1979 DARPA, Agentia pentru cercetare in domeniul apararii a Statelor Unite, a evaluat procesoarele VAX utilizate in doua dintre proiectele sale majore. Ca parte a acestei evaluari s-a inscris si examinarea sistemelor de operare VAX, si UNIX. In primul rand comunicatiile
UNIX trebuiau sa fie mai eficiente. DARPA a sprijinit financiar cercetarile in urma carora au rezultat specificatiile protocolului TCP/IP pentru UNIX.
Acest protocol asigura interconectarea dintre retele diferite de calculatoare, conectabile prin linii telefonice sau prin alte tipuri de sisteme (ARPANET,
Internet si alte retele de comunicatie s-au dezvoltat pe intreg teritoriul SUA, permitand cercetatorilor sa comunice usor unii cu ceilalti).
La Berkeley s-a dezvoltat, de asemenea, un mecanism general de asigurare a comunicatiior, numit mecanism de comunicatie interprocese; in acest mod se puteau stabili modalitati de comunicare intre orice tipuri de procese, nu numai intre procesele conectate prin mecanismul de pipe, asa cum se asigura in versiunile de UNIX System 7. Grupul Berkeley a decis sa implementeze un nou mecanism de comunicatie intre procese, numit socket; se permite astfel comunicatia bidirectionala intre procese. Aceasta facilitate a deschis noi posibilitati pentru realizarea de programe sofisticate. Mecanismul socket este deosebit de util in mediile de retea. De exemplu, o baza de date multiutilizator presupune ca pot exista mai multe cereri de accesare a bazei, la un moment dat. Daca doi utilizatori vor sa modifice o inregistrare, programul de gestiune a accesului in retea va trebui sa tina evidenta si sa controleze cererile multiple de accesare a inregistrarilor.

Mecanismul socket aduce informatii in plus referitoare la rezolvarea acestui gen de problema si faciliteaza scrierea de programe sigure. Vom trata in capitolele urmatoare mai pe larg acest concept.
Doua alte extinderi pe care le aduce versiunea Berkeley sunt: vi si csh. vi este un editor de text conceput si implementat de Bill Joy impreuna cu alti cercetatori de la Berkeley. El este un editor in mod ecran, foarte utilizat de atunci in mediile UNIX. csh (C-shell) a fost realizat tot de Bill Joy. Shell-ul standard AT&T (/bin/sh) a fost proiectat de Stephen Bourne de la Bell Shell, bazate pe limbajul Algol. C-shell, realizat de Joy, aduce un numar de extensii la shell-ul standard. Multe dintre aceste extinderi au fost realizabile numai datorita modificarilor facute de grupul Berkeley asupra kernel-ului. Pentru a determina cate programe ruleaza simultan la un moment dat, in prim plan sau in in fundal, utilizatorul shell-ului Bourne va tasta comanda ps. Shell-ul C aduce comanda jobs pentru a realiza acest lucru; sub C-shell utilizatorul poate suspenda sau relua procesele care sunt rulate in fundal. De asemenea, C-Shell poseda un limbaj de programare inspirat din limbajul C (dupa cum ii spune si numele).
Sistemul de fisiere, care permite accesul mai rapid, si facilitatile de lucru in retea aduse sistemului UNIX de grupul Berkeley, au permis salturi semnificative ale performantei. Ulterior, toate extinderile Berkeley au fost incluse si de AT&T in implementarile sale de UNIX, System V.

UNIX System V

AT&T a realizat transformari majore ,si a definitivat versiunea UNIX
System V, numele sub care aceasta platforma UNIX este cunoscuta in mod curent.
O modificare fundamentala a constituit-o introducerea conceptului de stream, care aduce procedeele de comunicatie interprocese la un nivel comparativ cu mecanismul socket BSD. Prin stream se asigura o tratare modularizata, performanta, a comunicatiilor interprocese. Acest mecanism implementeaza un protocol de comunicatie in retea numit RFS. Acest protocol asigura utilizatorilor posibilitati de interconectare si partajare a resurselor.
Pentru a-si asigura un succes pe piata sistemelor de operare si a se impune ca proprietar de drept al UNIX System V, AT&T a initiat o alianta cu compania Sun Microsystems.
Astfel, in 1989, s-a sintetizat versiunea System V 4.0, din analiza versiunilor System V, Berkeley 4.x BSD, si Xenix.
Simultan, dorind sa se mentina in competitia sistemelor UNIX, un grup de companii printre care Digital Equipment, Hewlett-Packard, IBM si Apollo, impreuna cu concernurile europene Bull, Siemens si Nixdorf au format OSF-Open
Software Foundation. OSF a fost initial un sistem de operare bazat pe AIX, versiunea de UNIX dezvoltata de IBM pe masinile sale.
In ciuda concurentei OSF, UNIX System V s-a impus ca singura implementare importanta de UNIX. Ea a castigat si mai multi adepti in momentul in care Departamentul apararii al SUA l-a specificat ca referinta intr-unul dintre contractele sale, prin impunerea SVID (System V Interface Definition), un set de norme dezvoltate de AT&T, care respectate, asigura portabilitatea aplicatiilor in cadrul platformei
System V.

UTS-UNIX timesharing

In 1980, compania Amdahl, un producator de calculatoare de tip mainframe compatibile IBM, a decis sa dezvolte o versiune de UNIX pentru piata de mainframe. Grupul Amdahl a realizat o versiune UNIX pentru calculatoarele din clasa 370. Rularea UNIX-UTS pe calculatoarele Amdahl suporta sute de sesiuni utilizator cu timp de raspuns rezonabil.Performantele sunt semnificative in raport cu sistemele minicalculator,care erau "sufocate" la accesul a mai mult de 50 de utilizatori. Este, de asemenea mai economic sa se achizitioneze un singur mainframe, sa se utilizeze o singura echipa de gestiune si intretinere decat sa se cumpere patru sau cinci minicalculatoare care sa faca aceleasi functii. Sistemele Amdahl au fost utilizate si de AT&T pentru continuarea cercetarilor asupra sistemului UNIX la laboratoarele Bell.

Au fost realizate zeci de versiuni de UNIX pentru calculatoarele personale
Prima dintre ele a aparut in 1980 si s-a numit Onyx. Ea a fost implementata pe o masina cu procesor Zilog Z8000. Procesoarele care au urmat lui Z8000 au constituit si ele suportul pentru versiuni de sistem de operare UNIX.
Motorola 68000 si ulterior 68030 sunt procesoare care dispun de registre pe 32 de biti si au posibilitatea de a accesa pe 32 de biti, devenind astfel microprocesoare etalon pentru proiectantii de sisteme UNIX. Un alt motiv care a determinat popularitatea componentelor Motorola, ca disponibilitate pentru
UNIX, a fost existenta a numeroase case de software, care aveau pusa la punct portarea UNIX pe sistemele 68000/68030 (Unisoft,Human computing Resourxes
-HCR,Philips).
Cand a aparut pe piata primul IBM-PC, s-au initiat si cerecetarile pentru portarea UNIX pe microcalulatoarele bazate pe procesoarele Intel Interactive
Systems a realizat o versiune de UNIX pentru IBM-PC numita PC/ix iar Microsoft a lansat pe piata Xenix. La scurt timp dupa introducerea sistemului Xenix, un grup de programatori au format o companie de servicii si instalari de sisteme UNIX, numita Santa Cruz Operation(SCO).SCO a incheiat cu Microsoft un acord de distributie si actualizare pentru sistemul Xenix. Cresterea performantelor microprocesoarelor din familia Intel a determinat extinderea facilitatilor versiunilor de UNIX implementate pe PC-uri .Procesoarele Intel 386/486, dispunand de registre pe 32 de biti si de posibilitatea de a accesa date pe 32 de biti, au insemnat un pas inainte.A fost eliminat un obstacol major, acela al segmentarii memoriei, utilizata ca procedura de alocare de procesoarele anterioare. Intel 80386/80486 permite scrierea de cod eficient ,si ofera astfel posibilitatea de a rula versiuni complexe UNIX.O alta facilitate a acestor procesoare este capacitatea lor de a rula programe MS-DOS sub UNIX, integrand astfel un numar mare de aplicatii utilizate intens pe piata. S-au dezvoltat ,si s-au lansat pe piata cu succes relativ multe versiuni UNIX pe microcalculatoarele cu procesoare Intel 80386/
80486. Un alt competitor major in piata 80386/80486 este Interactive Systems prin versiunile sale 386/ix de UNIX. Interactive Systems a portat UNIX pe diferite masini, de-a lungul anilor; 386/ix aduce un numar de extinderi sistemului
UNIX specific acestei categorii de suport hardware.
Un program dezvoltat initial de Phoenix Technologies si comercializat de Interactive Systems, numit Vp/ix, permite rularea programelor DOS sub UNIX.
Impreuna cu Microsoft si AT&T, Interactive Systems a determinat dezvoltarea versiunii UNIX Sistem V/386 care reprezinta o referinta dupa care alti producatori isi pot dezvolta propriile versiuni de UNIX,pentru suportul lor hardware. UNIX
System V/386 permite aplicatiilor Xenix sa ruleze fara nici o modificare. 386/ix este una dintre cele mai puternice varsiuni de UNIX ce ruleaza pe PC-uri. De asemenea, Santa Cruz Operation s-a impus ca un lider in productia de sisteme de operare UNIX pentru PC-uri prin versiunile sale SCO UNIX V/386 si prin produsele dezvoltate pentru aceasta platforma.

Un producator de luat in consideratie este si firma Apple. Apple Computer a dezvoltat pentru microcalculatoarele Macintosh, construite in jurul micropro cesoarelor Motorola 68030/68040, o versiune proprie de UNIX numitaA/UX.
Ultima versiune a acestui sistem, A/UX 3.0.1, lansata in 1993 se doreste un punct de reper pe piata UNIX. A/UX 3.0.1 admite standardele generale UNIX(System
V si BSD 4.3). Elementul sau caracteristic este compatibilitatea cu Interfata
Grafica ca Utilizator Macintosh ,si posibilitatea de a rula in mod dual sistemele de operare UNIX si Macintosh Sistem 7.Este primul sistem de operare UNIX care ofera o sansa de adaptare rapida pentru nespecialisti sau pentru cei care nu au experienta in utilizarea sistemului UNIX.Acestia pot rula comenzile prin intermediul unor ferestre speciale interactive, dispunand de mesaje informative.

SunOS - prototipul UNIX pentru statiile de lucru

O statie de lucru reprezinta un calculator monoutilizator care asigura facilitati grafice complexe si resurse puternice. Firma Sun Microsystems produce o intreaga gama de statii de lucru, foarte populare in universitati sau in departamentele de proiectare, mai ales pentru disponibilitatile lor grafice.
Sun utilizeaza o varianta de UNIX numita SunOS, care include in egala masura facilitati UNIX System V si BSD. Extensiile ,si imbunatatirile aduse Kernel-ului si utilitarelor au facut din platforma SunOS o puternica baza pentru dezvoltarea de software. Una dintre extinderile remarcabileale SunOS este NFS - Network File system, un protocol de retea care permite utilizatorilor sa partajeze datele si echipamentele periferice, in mod eficient,transparent. De exemplu, statiile Sun nu au de regula un hard-disc intern. Aceste situatii, in functie de reteaua la care se conecteaza, incarca software-ul si aplicatiile in memoria lor locala; mai multe statii de lucru partajaza acelasi hard-disk, de mare capacitate; in plus, capacitatea de prelucrare a fiecarei statii de lucru este locala, independenta.
Acest mecanism asigura un mediu puternic si de cost relativ scazut.

UNIX-like, o alta viziune asupra sistemului UNIX

In arena UNIX a intrat in anul 1986 un sistem de operare UNIX-LIKE numit
Mach. Mach a fost dezvoltat de Departamentul de Calculatoare a universitatii
Carnegie-Mellon din Pittsburgh. Utilizatorii sistemului Mach nu sesizeaza diferente intre modul in care ei interactioneaza cu UNIX sau cu Mach.
UNIX-like inseamna ca acelea, si comenzi sunt disponibile ,si pe UNIX si pe
Match. Diferenta majora consta in modul in care cele doua sisteme sint implemen tate.
Modularitatea este una dintre facilitatile sistemului Mach. Mach este gandit in ideea programarii orientate pe obiecte. Programarea orientata pe obiecte izoleaza programatorul de informatia interna a rutinelor individuale.De exemplu, programatorul vrea sa genereze un dreptunghi pe ecran, inainte de a procesa o intrare. In programarea orientata pe obiecte programatorul va selecta un obiect, va apela functia generatoare pentru a afisa sau primi informatii. Un alt avantaj al acestei tehnici de programare este faptul ca mecanismele interne ale obiectelor pot fi modificate fara ca programatorul sa actualizeze sau sa reproiecteze codul program. Reutilizabilitatea modulelor program este asemanatoare cu folosirea utilitarelor in UNIX si asigura o mare productivitate. Match mai aduce un mecanism important, ce al mesajelor. Utilizarea mecanismului de transfer de mesaje in Match deriva din implementarea sa orientata pe obiecte. Daca un mediu orientat pe obiecte izoleaza programatorul de sectiunea interna a rutinelor, cum poate atunci programatorul sa utilizeze aceste rutine? Mecanismul de transfer al mesajelor asigura aceasta posibilitate. Transmiterea unui mesaj catre un obiect este similara cu conceptul de apelare a unei proceduri, in limbajele traditionale. Mesajele asigura un grad mare de flexibilitate. Mesajele realizeaza mai mult decat o simpla comanda; ele indica ce resurse poate utiliza comanda in timp ce se executa. Astfel, transferul mesajelor intre calculatoare cu procesoare multiple permite acestor calculatoa sa-si utilizeze procesoarele la capacitatea maxima.
Implementarea unor mecanisme esentiale ale sistemului Mach este sesizata in sistemul de operare al calulatoarelor NeXT. Introduse la sfarsitul anului 1988, calculatoarele NeXT utilizeaza Match pentru a coordona capacitatile de prelucrare ale diferitelor subsisteme. Firma Sun a inclus si ea concepte Mach in versiunile recente de SunOS.

Versiuni de sistem UNlX-alike

Exista diverse sisteme de operare care sunt denumite generic UNIX-alike.
Ele utilizeaza conceptul de sistem de fisiere UNIX si/sau conceptele legate de ges tiunea proceselor, care au fost dezvoltate de-a lungul anilor. Compania MicroWare produce un UNIX-alike numit OS-9. OS-9 a fost dezvoltat pe procesoarele Motorola
(6809, 68000 si 68030). OS-9 are cateva atribute unice. Kernel-ul este scris pentru prelucrarile de timp real, se permit astfel anumitor sectiuni din kernel sa fie blocate in memorie si nu este necesar ca ele sa fie incarcate de pe disc. Aceasta facilitate permite sistemului OS-9 sa fie utilizat efectiv in sistemele de supra veghere si conducere a proceselor fizice; controlerele bazate pe Motorola 6808 pot utiliza o versiune OS-9 incarcata in ROM. Un alt UNIX-alike este QNX, realizat de Quantum Software. QNX este, de asemenea, o versiune destinata prelucrarilor de tip real utilizand procesoarele din familia Intel. De,si nu toate comenzile sunt similare cu cele ale UNIX, un numar considerabil al acestora asigura aproape aceleasi servicii.

Ce perspective sunt ?

AT&T, devenita Novell/USL - UNIX Systems Laboratories, a continuat sa perfec tioneze produsele UNIX ingloband modificarile majore aduse de alti mari producatori.
Exista un efort conjugat de standardizare a platformei UNIX, inclusiv cu norme acceptate la nivel guvernamental. Standardele FIPS/POSIX (Federal Information
Procesing Standard) specifica cerintele pentru sistemele de calcul guvernamentale.
Standardul POSIX descrie ce trebuie sa asigure un producator de UNIX la nivelul programelor si serviciilor computationale. Un sistem care a trecut normele POSIX a facut primul pas pentru o posibila achizitionare a sa in scop guvernamental.
Alt punct important in standardizare il constituie compatibilitatea aplicatiilor
(procesoare de text, spreadsheet, baze de date sau alte genuri de aplicatii). Cele doua versiuni de UNIX, System V de la AT&T si BSD UNIX se conformeaza specificatiei numita SVID (System V Interface Definition), care specifica ce resurse sistem trebuie sa asigure furnizorii pentru a numi produsele lor - sistem UNIX. Cu acest sistem de definitii combinate,atributele majore ale ambelor variante vor fi puse la dispozitia programatorilor. SVID a impulsionat dezvoltarea de software in platforma de UNIX, intr-o maniera controlabila.
Un alt obiectiv al standardelor UNIX este dezvoltarea unei Interfete pentru
Aplicatii - ABI (Application Binary Interfaces). O interfata ABI descrie modul in care codul executabil specifc unui anumit microprocesor poate fi stocat si manipulat de o anumita versiune de UNIX. Acest standard permite programelor sa fie mutate de pe un sistem 80386 care ruleaza XENIX, de exemplu, pe un sistem 80386 care ruleaza 386/ix, fara a recompila aplicatiile. Astfel si sistemul UNIX si aplicatiile program care ruleaza sunt portabile. Exista ABI dezv


Colt dreapta
Creeaza cont
Comentarii:

Nu ai gasit ce cautai? Crezi ca ceva ne lipseste? Lasa-ti comentariul si incercam sa te ajutam.
Esti satisfacut de calitarea acestui document, eseu, cometariu? Apreciem aprecierile voastre.

Nume (obligatoriu):

Email (obligatoriu, nu va fi publicat):

Site URL (optional):


Comentariile tale: (NO HTML)


Noteaza documentul:
In prezent fisierul este notat cu: ? (media unui numar de ? de note primite).

2345678910

 
Copyright© 2005 - 2024 | Trimite document | Harta site | Adauga in favorite
Colt dreapta