Sunteți pe pagina 1din 12

SO Curs 3

Comenzi de baz Unix/Linux

cd (change directory) comand folosit pentru a naviga prin


sistemul de fiiere
cd ..
cd
cd ~
cd $HOME
cd /etc/opt
pwd (print working directory) comand folosit pentru afiarea
directorului curent de lucru
ls (list) comand folosit pentru listarea coninutului unui director
ls
ls -ls
ls -la
ls -R
ls lR > lista.txt
mv (move) comand folosit pentru redenumirea unui fiier
mv file1 file2
mv file1 dir1
cp (copy) comand folosit pentru copierea unui fiier
cp file1 file2
rm (remove) comand folosit pentru ? unui fiier
rm file2
rmdir (remove directory) comand folosit pentru ? unui director,
dac acesta este gol
rmdir dir_gol
rm r dir_care_nu_este_gol

1
TEST 1
Care dintre urmtoarele comenzi va face listarea coninutului directorului
curent ecran cu ecran?
ls l | pause
cat files > pause
cat files | more
ls l | more

TEST 2
Dac dorim s copiem sau s mutm un fiier n alt locaie i s fim
avertizai pentru a nu terge accidental un fiier existent, ce opiune
trebuie s folosim?
-w
-i
-r
-F

TEST 3
Directorul curent este /home/stud1/dir2. Dac dorim s copiem fiierul
test din directorul curent n directorul dir3, ce comand putem utiliza?
copy test /dir3
cp test ../dir3
copy test ../dir3
cp /notes dir3

TEST 4
Pentru a vedea cine este conectat la sistem, iar rezultatul s fie sortat
dup user id, ce comand putem folosi?
whoisloggedon | sort
who |sort
whois | sort
id | sort

TEST 5
Care dintre comenzile anterioare va acorda drept de citire, scriere,
execuie pentru utilizator, drept de citire i scriere pentru grup i drept
de citire pentru ceilali?
chmod 742 fisier
chmod 754 fisier
chmod 764 fisier
chmod 731 fisier

TEST 6
2
Care dintre comenzile anterioare va acorda permisiune de execuie
pentru grup?
chmod g+x fisier
chmod u-e fisier
chmod g+e fisier
chmod o+x fisier

Caractere de control n UNIX

Aa numitele caractere de control sunt utilizate pentru a ndeplini


anumite funcii, precum oprirea sau continuarea afirii pe ecran,
terminarea execuiei unui program, etc.
Majoritatea tastaturilor de PC au dou taste de control
(inscripionate cu Ctrl), n stnga jos, respectiv dreapta jos. Atunci
cnd este afiat pe ecran, tasta Ctrl este reprezentat de semnul ^

Exemple de caractere de control:


-Ctrl-s oprete afiarea textului pe ecran
-Ctrl-q reia afiarea textului pe ecran (oprit cu Ctrl-s)
-Ctrl-c ntrerupe activitatea curent i se folosete de regul pentru a
opri procese sau afiri pe ecran.
-Ctrl-d semnific sfritul fiierului sau ieire, fiind utilizat pentru a iei
din unele utilitare Unix, ieirea 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 executm.
-Ctrl-w terge ultimul cuvnt introdus la linia de comand
-Ctrl-h terge ultimul caracter introdus la linia de comand, fiind folosit
atunci cnd tasta <BACKSPACE> nu funcioneaz

Determinarea tipului de fiier

Comanda file
Sintaxa general:
file nume_fisier
Rezultatul comenzii anterioare poate fi: text, executabil, date.
-bash-3.00$ file I*
3
ICR.pdf: Adobe Portable Document Format (PDF) v1.4

Afiarea coninutului unui fiier 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 comenzi pentru lucrul cu fiiere

Comanda wc (word count) utilizat pentru a numra linii, cuvinte,


octei sau caractere ntr-un fiier
Sintaxa general:
wc [optiune] nume_fisier
unde optiunile sunt:
-l linii
-w cuvinte
-c octei
-m caractere

wc pico.save
4 13 64 pico.save

4
4 linii, 13 cuvinte, 64 de octei

Comanda diff (difference) utilizat pentru a compara dou fiiere


text i a afla diferenele dintre ele
Sintaxa general:
diff [optiune] fisier_1 fisier_2
Rezultatul comenzii afieaz diferenele linie cu linie dintre cele dou
fiiere text
Putem folosi dou optiuni:
-i ignor diferenele ntre litere mari i mici
-c ofer o comparare detaliat: nti sunt afiate datele
referitoare la creare pentru cele dou fiiere, apoi liniile din fisier_1, cu
semnul in faa 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


Multithreading
Multiprocesare simetric
Sisteme de operare distribuite
Proiectare orientat obiect

Introducere

Prezentare general a caracteristicilor unui sistem de operare de


reea
Funcia de baz a unui sistem de operare este aceea de a
controla hardware-ul calculatorului, mediul de execuie al
programelor i interfaa utilizator.
Sistemul de operare asigur ndeplinirea acestor funcii pentru un
singur utilizator sau pentru mai muli utilizatori ce partajeaz

5
calculatorul ntr-o manier mai degrab secvenial dect
concurent.
Spre deosebire, sistemele de operare de reea asigur o distribuie a
funciunilor de-a lungul unor calculatoare conectate n reea. Un
sistem de operare de reea depinde de sistemul de operare existent
pe fiecare calculator n parte. Apoi adaug funcii ce permit accesul
la resursele partajate. Figura 1 ne prezint relaiile de tip pereche,
client-server i mainframe.
Calculatoarele cu sisteme de operare de reea 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 ctre sisteme server ce
ofer rspunsuri cererilor client.
Figura 2 ne prezint conceptul prin care datele sunt stocate pe
servere i sunt disponibile cererilor client.

Figure 1 Figure 2

Diferenele dintre SO-PC i SO de reea
Calculatoarele PC funcioneaz ntr-o reea ca nite clieni. Folosind
funcionalitile sistemului de operare nativ PC-ului, utilizatorul este
n msur s acceseze resursele locale ale PC-ului. Aceste pot fi:
aplicaii, fiiere i echipamente direct conectate la calculator
(scanner, imprimant, etc.)
n momentul n care un PC devine client ntr-un mediu de reea, un
software specializat va permite utilizatorului local s acceseze
resurse care nu sunt locale (la distan remote ) ntr-o manier

6
asemntoare cu aceea n care aceste resurse ar fi locale. Sistemul
de operare de reea extinde capacitatea de conexiune a unui client
PC prin asigurarea accesului la servicii la distan disponibile ca
extensii ale sistemului de operare local.

Sisteme multiutilizator

Pentru a putea oferi suport pentru mai muli utilizatori simultan i pentru a
putea accesa resursele partajate ale reelei (servicii, echipamente, diverse
resurse), serverele de reea trebuie s ruleze sisteme de operare cu
caracteristici extinse fa de sistemele de operare clasice (de tip client).
Dintre sisteme de operare cele mai cunoscute ce ofer servicii de reea
enumerm: Unix/Linux, Windows NT/2000/XP/2003/Vista/7 i Novell
NetWare.
Un sistem capabil s funcioneze ca server NOS trebuie s ofere suport
pentru mai muli utilizatori simultan. Administratorul de reea creaz cte
un cont pentru fiecare utilizator n parte, fapt ce permite ca fiecare
utilizator s se conecteze pe sistemul server.
Un cont utilizator permite serverului s autentifice utilizatorul i s aloce
resursele la care acel utilizator are acces. Sistemele ce ofer aceast
funcionalitate se numesc sisteme multiutilizator. UNIX, Linux i
Windows NT/2000/XP/2003/Vista/7 sunt exemple de astfel de sisteme.

Sisteme multitasking

De asemenea, un sistem de operare de reea este un sistem


multitasking. Acest lucru semnific faptul c, intern, sistemul de
operare este capabil s execute mai multe sarcini (tasks) sau
procese n acelai timp. Sistemele de operare server realizeaz
acest lucru printr-un cod software de planificare ce este integrat n
mediul de execuie. Acest planificator are rolul de a aloca timpul
procesorului, memoria i alte elemente ale sistemului pentru
mai multe sarcini n aa fel nct 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 msur ce utilizatorii se conecteaz la
sistem sau, dimpotriv, sunt terse atunci cnd utilizatorii se
deconecteaz de la server.

7
Multitasking i multithreading

Figura anterioar ilustreaz un server multitasking tipic, ce ruleaz mai


multe instane de servicii de reea ce sunt accesate de ctre mai multe
sisteme client. Serverele de acest tip se regsesc, de regul, sub
denumirea de servere de ntreprindere (enterprise servers) datorit
capacitii mari de a administra date i servicii complexe.
Serverele de tip enterprise sunt capabile s ruleze copii concurente ale
unei comenzi. Acest fapt permite execuia mai multor instane ale
aceluiai serviciu sau fir de execuie al unui program. Termenul fir de
execuie (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 cror pri divizate n
fire de execuie s fie executate concurenial.

Componentele de baz ale unui SO

Toate sistemele de operare (fie pentru calculatoare standalone, fie pentru


servere de reea) includ urmtoarele componente:
Kernel-ul
Interfaa utilizator
Sistemul de fiiere
Kernel-ul (nucleul) este cel mai utilizat termen referitor la partea central
a sistemului de operare. Nucleul reprezint o poriune relativ mic de cod
ce este ncrcat n memorie n momentul pornirii calculatorului. Acest
cod cuprinde instruciuni 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 aplicaie 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.
Pe un sistem UNIX sau Linux, kernel-ul este reprezentat, de regul,
de ctre un fiier denumit kernel. n unele cazuri, codul kernel-ului

8
trebuie s fie adaptat i compilat. Dac acest fiier devine corupt,
sistemul nu va mai funciona.
Pe un sistem Windows ntlnim fiiere ce conin cuvintele kernel
sau kern, precum fiierul kernel32.dll. Acestea reprezint fiiere
deosebit de importante utilizate de ctre sistemul de operare. Ele
constituie baza sistemului de operare.

Interfaa utilizator

Interfaa utilizator (IU) reprezint partea cea mai vizibil a unui


sistem de operare. IU este componenta SO prin care utilizatorul
interacioneaz cu acesta din urm.
IU acioneaz ca o punte de legtur ntre utilizator i kernel. IU este
asemenea unui interpretor ce translateaz apsrile tastelor, click-
urile de mouse sau alte forme de input. Output-ul programelor poate
fi organizat i afiat de ctre IU. Pe sisteme UNIX sau Linux, IU se
numete shell. IU pot fi grupate n dou mari categorii:
IU linie de comand (CLI - Command-Line Interface)
IU grafic (GUI Graphical User Interface)
Primele sisteme de operare pentru PC-uri desktop utilizau n
exclusivitate o IU de tip linie de comand. Interfaa 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 obine un rezultat doar 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).
n zilele noastre toate sistemele de operare cunoscute ofer suport
pentru interfee 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.
Interfaa grafic permite utilizatorului s introduc comenzi prin
intermediul unui mouse sau a altui echipament de intrare de tipul
point-and-click. Utilizatorii obinuii prefer o interfa grafic
deoarece aceasta face ca operarea s se fac mai uor i intuitiv. Un

9
utilizator poate executa operaii simple prin intermediul unei
interfee grafice chiar fr s tie s citeasc.
Preul pltit pentru simplificarea intefeei utilizator const n
performan. Sistemele grafice consum de sute de ori mai mult
spaiu de stocare dect interfeele linie-de-comand. Deoarece
interfeele grafice sunt mai complicate dect cele linie-de-comand,
acestea necesit i mult mai mult memorie RAM i timp de
execuie din partea UCP.
Datorit faptului c utilizatorul mediu prefer (i n acelai timp i
dorete) o interfa grafic atunci cnd folosete un computer,
interfeele grafice sunt considerate n momentul de fa o
necesitate pentru sistemele de operare desktop. Cu toate acestea,
n mod tradiional, sistemele de operare server nu necesit suport
pentru utilizatori mai puin experimentai. Unele sisteme de operare
de reea pot s nu ofere suport total pentru interfee grafice.
n zilele noastre, majoritatea sistemelor NOS ofer suport pentru
interfee grafice prin oferirea de module separate ce pot fi ncrcate
i utilizate precum orice alt program ce ruleaz pe sistem.
Majoritatea nu necesit ca aceste interfee grafice s funcioneze,
dar modulele grafice atrag utilizatorii mai puin experimentai.
Administratorii de sisteme lucreaz n mod tipic n medii linie-de-
comand, prefernd s economiseasc resursele serverului i s nu
ncarce modulele interfeei 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 fr componente grafice. Spre deosebire de acestea,
serverele Windows includ automat interfa grafic, ncrcnd astfel
sistemul.

Sistemul de fiiere

Sistemul de fiiere al unui SO determin modalitatea n care


fiierele 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 fiiere ce utilizeaz o structur
ierarhic.
ntr-un sistem de fiiere ierarhic, fiierele sunt plasate n aa numite
containere logice ce sunt aranjate ntr-o structur de arbore.
Sistemul de fiiere pornete cu rdcina arborelui. UNIX i Linux
denumesc containerul din vrful structurii arborescente director.
Containerele din cadrul fiecrui director se numesc subdirectoare.

10
Windows i Macintosh utilizeaz termenele de folder i subfolder
pentru a descrie directoarele i subdirectoarele.
Sistemul de fiiere al unui SO determin modul n care fiierele
i directoarele sunt organizate din punct de vedere logic.
Tipul sistemului de fiiere utilizat de ctre calculator determin
modul n care fiierele pot fi securizate (sau nu) fa de ali
utilizatori sau programe. Sistemul de fiiere definete, de asemenea,
modul n care datele sunt aranjate n mod fizic pe mediul de stocare.
Unele sisteme de fiiere utilizeaz spaiul de stocare ntr-o manier
mai eficient dect altele.
Un sistem de fiiere clasic este File Allocation Table (FAT). Sistemele
FAT sunt administrate pe disc de ctre SO. Tabela FAT conine o
hart de fiiere precum i modul n care acestea sunt stocate pe
disc. Sistemul FAT conine referine ctre clusterele de pe disc.
Clusterul este unitatea de baz a stocrii logice pe disc. Un fiier
poate fi stocat pe mai muli clusteri, dar un cluster poate conine
date provenind de la un singur fiier. Clusterii pot fi aranjai (sau nu)
unul lng cellalt. SO utilizeaz sistemul FAT pentru a identifica toi
clusterii de pe disc n care un fiiere este stocat.
SO diferite utilizeaz sisteme de fiiere diferite iar unele SO pot utiliza mai
multe sisteme de fiiere. Spre exemplu, dei Windows 3.x poate utiliza
doar sistemul FAT16, ncepnd cu Windows 2000 acesta poate utiliza
FAT16, FAT32 sau NTFS (New Technology File System).
Sistemul de fiiere determin conveniile pentru denumirea fiierelor i
formatul pentru specificarea cii (drumului) ctre locaia fiierului. Aceste
reguli pentru stabilirea numelor fiierelor variaz n funcie de sistemul de
fiiere i cuprind urmtoarele probleme:
Numrul maxim de caractere permise n numele fiierului
Numrul maxim de extensii sau sufixe
Dac sunt admise sau nu spaii n numele fiierelor
Dac numele fiierelor sunt case sensitive
Ce caractere pot fi utilizate pentru numele fiierelor
Formatul de specificare a cii ctre fiier

Multitasking cooperativ vs. preemptiv

Multitasking-ul cooperativ reprezint un mediu n care programele


partajeaz adrese de memorie i pot schimba informaii ntre ele.

11
ntr-un mediu multitasking, aplicaiile partajeaz utilizarea procesorului
prin metoda time-slicing.
Programele sunt scrise astfel nct s renune la utilizarea procesorului
dup un anumit timp pentru a permite altor programe s foloseasc
procesorul.
Dac un program este prost scris, poate monopoliza ntreaga activitate a
procesorului; de asemenea, dac un program se blocheaz, poate duce la
blocarea altor programe.
O form mult mai eficient de multitasking este implementat ncepnd
cu Windows 9x i se numete multitasking preemptiv. n acest caz, SO
controleaz alocarea timpului procesorului, iar programele pe 32 de bii
ruleaz n spaii separate de memorie. n cazul multitasking-ului
preemptiv, un program ce nu respect regula nu poate monopoliza
sistemul, iar dac se blocheaz, nu va afecta alte programe.
n Windows Task Manager (ncepnd cu Win 2000/XP) utilizatorii pot vedea
toate procesele i programele ce ruleaz pe sistem precum i
identificatorii de proces (PID) pe care SO le folosete pentru a face
distincie ntre procesele ce ruleaz pe sistem.

12

S-ar putea să vă placă și