600 likes | 862 Views
Sisteme de operare. Curs 4 Caracteristicile unui SO modern. Comenzi de ba ză Unix/Linux. cd (change directory) – comandă folosită pentru a naviga prin sistemul de fişiere cd .. cd c d ~ c d $HOME c d /etc/opt. Comenzi de ba ză Unix/Linux.
E N D
Sisteme de operare Curs 4 Caracteristicile unui SO modern
Comenzi de bază Unix/Linux • cd (change directory) – comandă folosită pentru a naviga prin sistemul de fişiere • cd .. • cd • cd ~ • cd $HOME • cd /etc/opt
Comenzi de bază Unix/Linux • pwd (print working directory) – comandă folosită pentru afişarea directorului curent de lucru • ls (list) – comandă folosită pentru listarea conţinutului unui director • ls • ls -ls • ls -la • ls -R • ls –lR > lista.txt
Comenzi de bază Unix/Linux • mv (move) – comandă folosită pentru redenumirea unui fişier • mv file1 file2 • mv file1 dir1 • cp (copy) – comandă folosită pentru copierea unui fişier • cp file1 file2
Comenzi de bază Unix/Linux • rm (remove) – comandă folosită pentru ? unui fişier • rm file2 • rmdir (remove directory) – comandă folosită pentru ? unui director, dacă acesta este gol • rmdir dir_gol • rm –r dir_care_nu_este_gol
Test 1 • ls –l | pause • cat files > pause • cat files | more • ls –l | more Care dintre următoarele comenzi va face listarea conţinutului directorului curent ecran cu ecran ?
Test 2 • -w • -i • -r • -F Dacă dorim să copiem sau să mutăm un fişier în altă locaţie şi să fim avertizaţi pentru a nu şterge accidental un fişier existent, ce opţiune trebuie să folosim ?
Test 3 • copy test /dir3 • cp test ../dir3 • copy test ../dir3 • cp /notes dir3 Directorul curent este /home/stud1/dir2. Dacă dorim să copiem fişierul test din directorul curent în directorul dir3, ce comandă putem utiliza ?
Test 4 • whoisloggedon | sort • who |sort • whois | sort • id | sort Pentru a vedea cine este conectat la sistem, iar rezultatul să fie sortat după user id, ce comandă putem folosi ?
Test 5 • chmod 742 fisier • chmod 754 fisier • chmod 764 fisier • chmod 731 fisier Care dintre comenzile anterioare va acorda drept de citire, scriere, execuţie pentru utilizator, drept de citire şi scriere pentru grup şi drept de citire pentru ceilalţi ?
Test 6 • chmod g+x fisier • chmod u-e fisier • chmod g+e fisier • chmod o+x fisier Care dintre comenzile anterioare va acorda permisiune de execuţie pentru grup ?
Caractere de control în UNIX • Aşa numitele caractere de control sunt utilizate pentru a îndeplini anumite funcţii, precum oprirea sau continuarea afişării pe ecran, terminarea execuţiei unui program, etc. • Majoritatea tastaturilor de PC au două taste de control (inscripţionate cu Ctrl), în stânga jos, respectiv dreapta jos. Atunci când este afişată pe ecran, tasta Ctrl este reprezentată de semnul ^ Exemple de caractere de control: -Ctrl-s – opreşte afişarea textului pe ecran -Ctrl-q – reia afişarea textului pe ecran (oprită cu Ctrl-s) -Ctrl-c– întrerupe activitatea curentă şi se foloseşte de regulă pentru a opri procese sau afişări pe ecran. -Ctrl-d– semnifică sfârşitul fişierului sau ieşire, fiind utilizat pentru a ieşi din unele utilitare Unix, ieşirea unei ferestre terminal sau pentru logout. -Ctrl-u– şterge întreaga linie de comandă, fiind o modalitate rapidă de a şterge o linie de comandă pe care ne-am decis să nu o mai executăm. -Ctrl-w– şterge ultimul cuvânt introdus la linia de comandă -Ctrl-h – şterge ultimul caracter introdus la linia de comandă, fiind folosit atunci când tasta <BACKSPACE> nu funcţionează
Determinarea tipului de fişier • Comanda file Sintaxa generală: file nume_fisier Rezultatul comenzii anterioare poate fi: text, executabil, date. -bash-3.00$ file I* ICR.pdf: Adobe Portable Document Format (PDF) v1.4
Afişarea conţinutului unui fişier ASCII (text) • Comanda cat Sintaxa generală: cat nume_fisier • Comanda more Sintaxa generală: more nume_fisier • Comanda head Sintaxa generală: head [-n] nume_fisier • Comanda tail Sintaxa generală: tail [-n] nume_fisier
Alte comenzipentru lucrul cu fişiere • Comanda wc (word count) –utilizată pentru a număra linii, cuvinte, octeţi sau caractere într-un fişier Sintaxa generală: wc [optiune] nume_fisier unde optiunile sunt: -l linii -w cuvinte -c octeţi -m caractere wc pico.save 4 13 64 pico.save 4 linii, 13 cuvinte, 64 de octeţi
Alte comenzipentru lucrul cu fişiere • Comanda diff (difference) –utilizată pentru a compara două fişiere text şi a afla diferenţele dintre ele Sintaxa generală: diff [optiune] fisier_1 fisier_2 Rezultatul comenzii afişează diferenţele linie cu linie dintre cele două fişiere text Putem folosi două optiuni: -i ignoră diferenţele între litere mari şi mici -c oferă o comparare detaliată: întâi sunt afişate datele referitoare la creare pentru cele două fişiere, apoi liniile din fisier_1, cu semnul – in faţa celor diferite faţă de cele din fisier_2. La fel pentru fisier_2, cu semnul + pentru liniile diferite faţă de fisier_1
Comenzi Unix • http://www.computerhope.com/unix.htm
Caracteristicile unui SO modern • Arhitectură microkernel • Multithreading • Multiprocesare simetrică • Sisteme de operare distribuite • Proiectare orientată obiect
Introducere Prezentare generală a caracteristicilor unui sistem de operare de reţea • Funcţia de bază a unui sistem de operare este aceea de a controla hardware-ul calculatorului, mediul de execuţie al programelor şi interfaţa utilizator. • Sistemul de operare asigură îndeplinirea acestor funcţii pentru un singur utilizator sau pentru mai mulţi utilizatori ce partajează calculatorul într-o manieră mai degrabă secvenţială decât concurentă.
Introducere Prezentare generală a caracteristicilor unui sistem de operare de reţea • Spre deosebire, sistemele de operare de reţea asigură o distribuţie a funcţiunilor de-a lungul unor calculatoare conectate în reţea. Un sistem de operare de reţea depinde de sistemul de operare existent pe fiecare calculator în parte. Apoi adaugă funcţii ce permit accesul la resursele partajate. Figura 1 ne prezintă relaţiile de tip pereche, client-serverşi mainframe. • Calculatoarele cu sisteme de operare de reţea au roluri specializate pentru a îndeplini accesul partajat la resurse. Sistemele client posedă software specializat ce permite ca acestea să acceseze resursele partajate ce sunt controlate de către sisteme server ce oferă răspunsuri cererilor client. • Figura 2 ne prezintă conceptul prin care datele sunt stocate pe servere şi sunt disponibile cererilor client.
Introducere Diferenţele dintre SO-PC şi SO de reţea • Calculatoarele PC funcţionează într-o reţea ca nişte clienţi. Folosind funcţionalităţile sistemului de operare nativ PC-ului, utilizatorul este în măsură să acceseze resursele locale ale PC-ului.Aceste pot fi: aplicaţii, fişiere şi echipamente direct conectate la calculator (scanner, imprimantă, etc.) • În momentul în care un PC devine client într-un mediu de reţea, un software specializat va permite utilizatorului local să acceseze resurse care nu sunt locale (la distanţă – remote ) într-o manieră asemănătoare cu aceea în care aceste resurse ar fi locale. Sistemul de operare de reţea extinde capacitatea de conexiune a unui client PC prin asigurarea accesului la servicii la distanţă disponibile ca extensii ale sistemului de operare local.
Introducere Diferenţele dintre SO-PC şi SO de reţea • În cazul unui sistem de operare local, cu toate că mai mulţi utilizatori pot avea conturi pe acelaşi PC, unul singur dintre aceste conturi poate fi activ la un moment dat. • Spre deosebire de acest caz, un sistem de operare de reţea permite accesul la mai multe conturi utilizator în acelaşi timp şi permite accesul concurent la resurse partajate de către mai mulţi clienţi. Serverele trebuie să ofere suport pentru mai mulţi utilizatori şi să acţioneze drept depozite de resurse ce sunt partajate pentru mai mulţi clienţi utilizator. Serverele necesită software specializat şi echipament hardware adiţional. • Serverul trebuie săasigure existenţa mai multor conturi utilizator şi să fie capabil să permită mai multor utilizatori să acceseze resursele de reţea la un moment dat.
De asemenea, un sistem de operare de reţea este un sistem multitasking. Acest lucru semnifică faptul că, intern, sistemul de operare este capabil să execute mai multe sarcini (tasks) sau procese în acelaşi timp. Sistemele de operare server realizează acest lucru printr-un cod software de planificare ce este integrat în mediul de execuţie. Acest planificator are rolul de a aloca timpul procesorului, memoria şi alte elemente ale sistemului pentru mai multe sarcini în aşa fel încât această alocare să permită partajarea resurselor sistemului. • Fiecare utilizator de pe un sistem multiutilizator are ca suport un task sau un proces separat pe server. Aceste sarcini interne sunt create în mod dinamic pe măsură ce utilizatorii se conectează la sistem sau, dimpotrivă, sunt şterse atunci când utilizatorii se deconectează de la server.
Multitasking şi multithreading Figura anterioară ilustrează un server multitasking tipic, ce rulează mai multe instanţe de servicii de reţea ce sunt accesate de către mai multe sisteme client. Serverele de acest tip se regăsesc, de regulă, sub denumirea de servere de întreprindere (enterprise servers) datorită capacităţii mari de a administra date şi servicii complexe. Serverele de tip enterprise sunt capabile să ruleze copii concurente ale unei comenzi. Acest fapt permite execuţia mai multor instanţe ale aceluiaşi serviciu sau fir de execuţie al unui program. Termenul “fir de execuţie” (thread) descrie un program ce are capacitatea de a se executa independent de altele. Sistemele de operare ce suportă “multithreading” permit programatorilor să proiecteze programe ale căror părţi divizate în fire de execuţie să fie executate concurenţial.
Servere multiprocesor • O altă caracteristică a sistemelor capabile să acţioneze ca sisteme de operare de reţea se referă la puterea de procesare. În mod obişnuit, calculatoarele personale posedă o singură unitate centrală de procesare (UCP) ce execută instrucţiunile ce alcătuiesc o anumită sarcină sau un anumit proces. • Pentru a lucra în mod eficient şi a oferi răspunsuri prompte cererilor clienţilor, un sistem de operare ce funcţionează ca sistem de operare de reţea necesită o unitate UCP foarte puternică pentru a executa mai multe sarcini sau programe. Sistemele cu unic procesor pot face faţă majorităţii sistemelor de operare de reţea dacă acestea au o viteză de execuţie suficient de mare.
Servere multiprocesor • Pentru a ajunge la viteze superioare de execuţie, unele sisteme sunt echipate cu mai multe procesoare. Aceste sisteme se numesc sisteme multiprocesor, fiind capabile să execute mai multe sarcini în paralel prin atribuirea fiecărui task unui procesor diferit. • În acest mod, cantitatea agregată de procesare pe care un sistem server poate să o realizeze într-un interval de timp este mult îmbunătăţită în cazul sistemelor multiprocesor.
Componentele de bază ale unui SO Toate sistemele de operare (fie pentru calculatoare standalone, fie pentru servere de reţea) includ următoarele componente: • Kernel-ul • Interfaţa utilizator • Sistemul de fişiere Kernel-ul (nucleul) este cel mai utilizat termen referitor la partea centrală a sistemului de operare. Nucleul reprezintă o porţiune relativ mică de cod ce este încărcată în memorie în momentul pornirii calculatorului. Acest cod cuprinde instrucţiuni ce permit kernel-ului să administreze echipamente hardware (hard-disk, mouse, etc.). Kernel-ul administrează şi controlează, de asemenea, modalitatea de alocare a memoriei, procesele de sistem şi alte programe. Software-ul de aplicaţie şi alte componente ale sistemului de operare se bazează pe kernel pentru a oferi serviciile de bază de planificare şi acces la hardware-ul şi perifericele calculatorului.
Componentele de bază ale unui SO • Pe un sistem UNIX sau Linux, kernel-ul este reprezentat, de regulă, de către un fişier denumit “kernel”. În unele cazuri, codul kernel-ului trebuie să fie adaptat şi compilat. Dacă acest fişier devine corupt, sistemul nu va mai funcţiona. • Pe un sistem Windows întâlnim fişiere ce conţin cuvintele “kernel” sau “kern”, precum fişierul “kernel32.dll”. Acestea reprezintă fişiere deosebit de importante utilizate de către sistemul de operare. Ele constituie “baza” sistemului de operare.
Interfaţa utilizator • Interfaţa utilizator (IU) reprezintă partea “cea mai vizibilă” a unui sistem de operare. IU este componenta SO prin care utilizatorul interacţionează cu acesta din urmă. • IU acţionează ca o punte de legătură între utilizator şi kernel. IU este asemenea unui interpretor ce translatează apăsările tastelor, click-urile de mouse sau alte forme de input. Output-ul programelor poate fi organizat şi afişat de către IU. Pe sisteme UNIX sau Linux, IU se numeşte “shell”. IU pot fi grupate în două mari categorii: • IU linie de comandă (CLI - Command-Line Interface) • IU grafică (GUI – Graphical User Interface)
Interfaţa utilizator • Primele sisteme de operare pentru PC-uri desktop utilizau în exclusivitate o IUde tip linie de comandă. Interfaţa linie de comandă oferă utilizatorului un prompter, iar utilizatorul introduce comenzile prin tastarea lor. Un mediu linie de comandă reprezintă un mediu text iar utilizatorul poate obţine un rezultatdoar prin introducerea comenzilor cu ajutorul tastaturii. • Utilizatorii de UNIX şi Linux pot alege dintr-o varietate de sisteme CLI (shell-uri), precum Bourne shell (sh), Korn shell (ksh), C shell (csh) sau Bourne Again Shell (bash).
Interfaţa utilizator • În zilele noastre toate sistemele de operare cunoscute oferă suport pentru interfeţe utilizator grafice. O IU de tip grafic permite utilizatorilor să administreze software-ul prin utilizarea unor obiecte vizuale precum ferestre, meniuri de tip “pull-down”, pointeri, icon-uri, etc. • Interfaţa grafică permite utilizatorului să introducă comenzi prin intermediul unui mouse sau a altui echipament de intrare de tipul “point-and-click”. Utilizatorii obişnuiţi preferă o interfaţă grafică deoarece aceasta face ca operarea să se facă mai uşor şi intuitiv. Un utilizator poate executa operaţii simple prin intermediul unei interfeţe grafice chiar fără să ştie să citească. • Preţul plătit pentru simplificarea intefeţei utilizator constă în performanţă. Sistemele grafice consumă de sute de ori mai mult spaţiu de stocare decât interfeţele linie-de-comandă. Deoarece interfeţele grafice sunt mai complicate decât cele linie-de-comandă, acestea necesită şi mult mai multă memorie RAM şi timp de execuţie din partea UCP.
Interfaţa utilizator • Datorită faptului că utilizatorul mediu preferă (şi în acelaşi timp îşi doreşte) o interfaţă grafică atunci când foloseşte un computer, interfeţele grafice sunt considerate în momentul de faţă o necesitate pentru sistemele de operare desktop. Cu toate acestea, în mod tradiţional, sistemele de operare server nu necesită suport pentru utilizatori mai puţin experimentaţi. Unele sisteme de operare de reţea pot să nu ofere suport total pentru interfeţe grafice. • În zilele noastre, majoritatea sistemelor NOS oferă suport pentru interfeţe grafice prin oferirea de module separatece pot fi încărcate şi utilizate precum orice alt program ce rulează pe sistem. Majoritatea nu necesită ca aceste interfeţe grafice să funcţioneze, dar modulele grafice atrag utilizatorii mai puţin experimentaţi. • Administratorii de sisteme lucrează în mod tipic în medii linie-de-comandă, preferând să economisească resursele serverului şi să nu încarce modulele interfeţei grafice, mari consumatoare de resurse.Spre exemplu, UNIX-ulşi Linux-ul oferă suport grafic, dar în momentul în care sunt instalate ca sisteme NOS, deseori sunt configurate fără componente grafice. Spre deosebire de acestea, serverele Windows includ automat interfaţă grafică, încărcând astfel sistemul.
Sistemul de fişiere • Sistemul de fişiereal unui SO determină modalitatea în care fişierele sunt denumite, modul şi locul în care acestea sunt stocate pe hard-disk sau pe alt mediu de stocare. SO Windows, Macintosh, UNIX şi Linux posedă sisteme de fişiere ce utilizează o structură ierarhică. • Într-un sistem de fişiere ierarhic, fişierele sunt plasate în aşa numite “containere logice” ce sunt aranjate într-o structură de arbore. Sistemul de fişiere porneşte cu rădăcina arborelui. UNIX şi Linux denumesc containerul din vârful structurii arborescente “director”. Containerele din cadrul fiecărui director se numesc“subdirectoare”. Windows şi Macintosh utilizează termenele de“folder”şi“subfolder”pentru a descrie directoarele şi subdirectoarele.
Sistemul de fişiere • Sistemul de fişiere al unui SOdetermină modul în care fişierele şi directoarele sunt organizate din punct de vedere logic. Tipul sistemului de fişiere utilizat de către calculator determină modul în care fişierele pot fi securizate (sau nu) faţă de alţi utilizatori sau programe. Sistemul de fişiere defineşte, de asemenea, modul în care datele sunt aranjate în mod fizic pe mediul de stocare. Unele sisteme de fişiere utilizează spaţiul de stocare într-o manieră mai eficientă decât altele. • Un sistem de fişiere clasic este File Allocation Table (FAT). Sistemele FAT sunt administrate pe disc de către SO. Tabela FAT conţine o hartă de fişiere precum şi modul în care acestea sunt stocate pe disc. Sistemul FAT conţine referinţe către clusterele de pe disc. Clusterul este unitatea de bază a stocării logice pe disc. Un fişier poate fi stocat pe mai mulţi clusteri, dar un cluster poate conţine date provenind de la un singur fişier. Clusterii pot fi aranjaţi (sau nu) unul lângă celălalt. SO utilizează sistemul FAT pentru a identifica toţi clusterii de pe disc în care un fişiere este stocat.
Sistemul de fişiere • Există trei tipuri de sisteme FAT. Versiunea originală este aceea ce a păstrat numele de FAT, iar versiunile FAT16 şi FAT32 reprezintă versiuni îmbunătăţite ale acesteia. • Sistemul FAT original a fost folosit prima oară pe primele versiuni de MS-DOS, nefind capabil să fie utilizat pentru hard discuri mai mari sau pe sisteme de operare mai avansate precum Windows 3.1, Windows 95/98. Sistemul original FAT avea limitări şi în privinţa numelor de fişiere, putând recunoaşte nume de fişiere până la 8 caractere în lungime. Alte limitări erau cele legate de imposibilitatea utilizării hard discurilor de capacităţi mari şi de nerecunoaşterea de către SO avansate. Sistemul FAT nu putea să utilizeze în mod eficient spaţiul de pe discurile cu capacităţi mai mari. Această modalitate de utilizare ineficientă a reprezentat aceeaşi problemă cu care s-a confruntat şi FAT16 (şi a determinat apariţia lui FAT32). Spre exemplu, FAT16 a fost creat pentru a putea utiliza partiţii până la 4 GB.
Sistemul de fişiere • Cu toate că discurile mari pot fi formatate folosind FAT16, această manieră este ineficientă deoarece partiţiile mari au şi dimensiuni mai mari de clusteri. Spre exemplu, la o partiţie de 512 MB, dimensiunea clusterilor este de 8 KB. Asta înseamnă că fie şi pentru un fişier de dimensiune 1 KB, el va folosi 8 KB de spaţiu pe disc, deoarece doar un fişier poate fi stocat într-un cluster. Rezultă deci 7 KB irosiţi. Pentru a rezolva această problemă, afost dezvoltat FAT32. Acest sistem de fişiere pe 32 de biţi utilizează clusteri de dimensiuni mai mici şi oferă suport pentru partiţii până la 2 TB.
Sistemul de fişiere SO diferite utilizează sisteme de fişiere diferite iar unele SO pot utiliza mai multe sisteme de fişiere. Spre exemplu, deşi Windows 3.x poate utiliza doar sistemul FAT16, Windows 2000 poate utiliza FAT16, FAT32 sau NTFS (New Technology File System). Sistemul de fişiere determină convenţiile pentru denumirea fişierelor şi formatul pentru specificarea căii (drumului) către locaţia fişierului. Aceste reguli pentru stabilirea numelor fişierelor variază în funcţie de sistemul de fişiere şi cuprind următoarele probleme: • Numărul maxim de caractere permise în numele fişierului • Numărul maxim de extensii sau sufixe • Dacă sunt admise sau nu spaţii în numele fişierelor • Dacă numele fişierelor sunt “case sensitive” • Ce caractere pot fi utilizate pentru numele fişierelor • Formatul de specificare a căii către fişier
SO desktop În ultimii 20 de ani, SO desktop au evoluat permanent astfel încât acum includ interfeţe grafice sofisticate precum şi componente avansate de conectare la reţea. • Microsoft Disk Operating System (MS-DOS) este acum un SO învechit care încă este utilizat în anumite medii pentru a se asigura compatibilitatea cu vechile aplicaţii de business. Versiunile de Windows înainte de Windows 95 erau interfeţe grafice pentru DOS. • Microsoft Windows include versiunile Windows 95, 98, ME, NT, 2000 şi XP. • SO Apple Macintosh (Mac OS) include versiunile OS 8, OS 9 şi OS X (OS 10). • SO Linux include distribuţii din partea mai multor companii şi grupuri de dezvoltare software, precum Red Hat, Caldera, Santa Cruz Operation (SCO), SuSE, Slackware, Debian, etc. • SO UNIX include versiuni precum HP-UX (de la HP), Sun Solaris (de la Sun Microsystems), Berkeley System Distribution (BSD), AIX (de la IBM), etc.
SO desktop În zilele noastre, atât dezvoltatorii cât şi utilizatorii de SO recunosc faptul că Internetul reprezintă centrul atenţiei. Deoarece reţelele de calculatoare şi Internetul au devenit o parte integrantă a modului de utilizare a unui computer personal, sistemele de operare desktop au evoluat rapid către SO de reţea. Microsoft Windows şi Mac OS îşi regăsesc rădăcinile în cadrul primelor SO pentru PC-uri desktop. Ultimele versiuni ale acestor SO au însă integrate în nucleu componente avansate de reţea. Windows XP este construit pe tehnologia NT şi 2000 de la Microsoft (care este o tehnologie NOS), în timp ce Mac OS este contruit pe baza nucleului UNIX. UNIX este considerat a fi primul sistem de operare NOS. Precum UNIX, industria IT (Information Technology) a considerat întotdeauna Linux-ul ca un NOS în primul rând şi ca sistem de operare desktop în al doilea rând. Sunt Windows, Linux şi UNIX SO desktop sau SO NOS? Răspunsul la această întrebare depinde de mai mulţi factori, în care includem versiunea de SO, componentele instalate şi configurarea sistemului.
Familia Windows MS-DOS • Microsoft a scos pe piaţă primul produs Windows (Windows 1.0)în 1985. A urmat Windows 2.0 în 1987. Prima dintre versiunile Windows funcţiona ca o interfaţă grafică ce rula “peste ” SO nativ, care era DOS (Disk Operating System). Windows era un shell ce permitea unui utilizator să administreze software-ul DOS. • Versiunea Microsoft a lui DOS (MS-DOS) a fost construită pe baza unui SO denumit 86-DOS sau QDOS (Quick and Dirty Operating System), scris de către firma Seattle Computer Products pentru a rula pe procesorul Intel 8086. IBM a utilizat pentru noua linie de PC-uri procesorul 8088, o versiune mai ieftină. Microsoft a cumpărat drepturile de comercializare QDOS şi a oferit SO MS-DOS în 1981. • MS-DOS a pornit drept un simplu SO cu o interfaţă linie-de-comandă. Proiectat pentru a rula pe procesorul pe 16biţi (cu 8biţimagistrala de date) Intel 8088, MS-DOS a reprezentat un SO pe 16 biţi, ce putea procesa doar 16 biţi la un moment dat.
Familia Windows • MS-DOS şi procesarea pe 16 biţi sunt învechite în era Internet şi în lumea SO cu interfaţă grafică de astăzi. • Standardul de astăzi îl constituie sistemele de operare pe 32 de biţi, existând de asemenea, şi câteva SO pe 64 de biţi. Cu toate acestea, există diverse companii ce mai utilizează încă MS-DOS pentru a rula aplicaţii de business mai vechi ce funcţionează ireproşabil. O aplicaţie veche (“legacy”) reprezintă un software depăşit ce rămâne în uz datorită investiţiei iniţiale. Unele companii au efectuat o puternică investiţie în hardware, software şi şcolarizarea angajaţilor şi găsesc că aplicaţiile MS-DOS îşi fac încă datoria cu brio.
Familia Windows Avantajele MS-DOS: • MS-DOS este un SO simplu, ce poate fi utilizat cu resurse hardware minime. • MS-DOS este ieftin. Nu numai SO în sine, cât şi costul hardware-ului compatibil. • MS-DOS este stabil şi fiabil. Deoarece nu este un SO multitasking, nu trebuie să ne îngrijorăm de apariţia conflictelor sau supra-adresărilor de memorie ce pot duce la căderea sistemului (Ca în versiuni mai vechi de Windows, spre exemplu). • MS-DOS este uşor de învăţat şi utilizat. Cu toate că nu este la fel de intuitiv precum un SO cu interfaţă garfică, odată de un utilizator stăpâneşte sintaxa comenzilor, DOS este relativ uşor de utilizat. • Există multe programe disponibile pentru MS-DOS, având în vedere că a fost un standard timp de mulţi ani. Unele companii continuă să ruleze sistemul de operare datorită programelor proprietare sau a celor scrise special pentru MS-DOS.
Familia Windows Dezavantaje: • MS-DOS nu poate rula programe grafice sofisticate scrise pentru sistemele moderne Windows pe 32 de biţi. Sistemul FAT al lui MS-DOS este nesecurizat şi nu face faţă mediilor multi-utilizator de astăzi. • Conectarea la reţea folosind clienţi MS-DOS este o problemă. În unele cazuri, un utilizator MS-DOS poate fi în imposibilitatea de a se conecta la resurse de reţea ce folosesc nume lungi de fişiere (peste 8 caractere). • Interfaţa linie-de-comandă este, de asemenea, hotărâtoare. Evoluţia interfeţelor grafice Windows a pornit cu versiunile Windows 1.0 şi 2.0.
Evoluţia Windows Începând cu Windows 3.0 (1990) Microsoft a început să îşi manifeste forţa deosebită în domeniu prin interfaţa utilizator. În 1992 a apărut varianta Win 3.1 iar imediat după aceea, Win 3.1.1, ca actualizare gratuită la Windows 3.1. Rularea MS-DOS cu Windows 3.x va adresa multe dintre lipsurile lui MS-DOS. Shell-ul Windows 3.x oferea o interfaţă grafică şi suport pentru multitasking cooperativ, ceea ce permitea utilizatorilor să ruleze mai multe programe simultan. Windows 3.x avea şi dezavantaje. Unul dintre acestea era implementarea multitasking-ului sub forma celui cooperativ. De asemenea, fiind un SO pe 16 biţi nu oferea securitate fişierelor sau facilităţi de reţea integrate care începeau să fie cerute de către utilizatori.