sisteme de operare - islavici.ro · sistem de fisiere ... extensii ale so clasice xerox parc (palo...
TRANSCRIPT
CUPRINS
Definitii
Structura
Utilizatori
Responsabilitati
Istorie
Sisteme de introducere/extragere
Sisteme cu prelucrare in loturi
Sisteme cu divizarea timpului
Sisteme cu memorie virtuala
Sisteme de operare pentru mini/micro calculatoare
Retele de calculatoare si sisteme de calcul distribuite
Perspective
SISTEM DE OPERARE
SO = sistem de calcul compus din
echipamente fizice (hardware)
programe si date (software)
Programele
Utilitare
Translatoare (compilatoare, interpretoare), editoare de
texte, editoare de legaturi, interpretoare de comenzi
Sistem de operare – responsabil pentru controlul
sistemului, comunicatia cu utilizatorii
Programele de sistem = masina virtuala intre
Echipamentele fizice complexe
Utilizatori si programatori
STRUCTURA IERARHIZATA A UNUI SISTEM
DE CALCUL
Calculul salariilor Proiectarea rotilor
dinatate
Compilator Editor texte Interpretor
comenzi
Sistem de operare
Limbaj masina
Echipamente fizice
Aplicatii
Programe
sistem
Hardware
DEFINITIE
SO = set de programe care:
Asigura gestionarea resurselor unui sistem de calcul
Realizeaza o interfata intre utilizator si sistemul de
calcul extinzand si simplificand setul de operatii
posibile
Resursele
Fizice
Procesor, memoria principala, echipamente de memorie
externa, introducere/extragere
Logice
Unitatile de lucru (joburi), sesiuni interactive, procese
(programe in executie), fisierele (colectii de informatii pe
suport extern idenfiticare prin nume), proceduri ce executa
servicii
UTIIZATORII SISTEMELOR DE CALCUL
Utilizatori propriu zisi
Folosesc aplicatiile scrise de altii
Cunostinte minimale despre sistemul de calcul
Programatorii de aplicatii
Limbaje de nivel inalt
Acees indirect la serviciile oferite de SO
Programatorii de sistem
Limbaje de nivel inalt sau asamblare
Utilizeaza serviciile oferite de sistemul de operare
Proiectantii si implementatorii de SO
Cunoastere buna a facilitatilor hardware
RESPONSABILITATILE UNUI SO
Interfata cu utilizatorul
Gestionarea fisierelor
Gestionarea perifericelor
Gestionarea memoriei
Gestionarea proceselor
Tratarea erorilor
Gestionarea sistemului
INTERFATA CU UTILIZATORUL
Comenzi
introduse de utilizatori de la terminale
prelucrate de interpretorul de comenzi
Apeluri sistem
Folosite
direct de programatorii de sistem
Indirect de programatorii de aplicatii
Se declanseaza in timpul executiei programelor
Se aseamana cu apelurile de procedura
Text / Grafica
Apelurile sistem = arhitectura unui SO
GESTIONAREA FISIERELOR
Forma de pastrare pe termen lung a informatiei
Discuri magnetice, benzi magnetice, discuri
optice
modulul de gestionare
creare
stergere
controlul accesului
citirea
scrierea
organizarea colectiei
securitate
GESTIONAREA PERIFERICELOR
varietate de echipamente periferice
operatii intrare/iesire
pregatirea operatiilor
lansarea cererilor de transfer
transferuri independete de procesor
GESTIONAREA MEMORIEI
utilizarea memoriei interne
o parte utilizata de SO
restul pentru programe utilizator
probleme de protectie / cooperare
memoria externa poate extinde memoria interna
prin
swapping
memorie virtuala
GESTIONAREA PROCESELOR
proces=program in executie sub controlul SO
problema:
existenta simultana a mai multor procese
modul in care procesele utilizeaza procesorul
interactiuni cu alte echipemente
exista mecanisme pentru gestionarea detaliata a
proceselor
problema gestionarii proceselor implica/include
gestionarea procesorului
TRATAREA ERORILOR
origini
hardware
software
detectare
revenire
tipul
transparente utilizatorului
opace
siguranta + protectia informatiilor
GESTIONAREA SISTEMULUI
utilizarea SO ca un intreg
instalarea, ajustarea la configuratie hardware
pornirea / oprirea sistemului
contabilizarea resurselor folosite de utilizatori
mecanisme de monitorizare si “acordare” pentru
performante mai bune
interfetele uniforme asigura portabilitate ->
trecerea unui program de pe un SO pe altul fara
modificari
portabilitatea SO pe diferite platforme hardware
PUTINA ISTORIE…
SO dintre cele mai complexe creatii umane
evolueaza in paralel cu hardware-ul
evolutia hardware:
mainframes
minicalculatoare
microcalculatoare
calculatoare + comunicatii = SO de retea sau SO
distribuite
alte caracteristici incluse in SO
multimedia
mobile
SISTEME DE INTRODUCERE / EXTRAGERE
anii 1945 primele calculatoare
fara OS fara si program sistem
programare in cod masina
introducerea cu butoane si registre (1/0)
banda perforata / cartele perforate
aparitia asambloarelor: programe simbolice si nu binare
asamblor
intrare: program sursa
iesire: program obiect
combinarea cu functiile de biblioteca: editor de legaturi
SUPERVIZOARE
Univac I si II IBM 701, 704
in 1953 primul SO “program supervisor” pentru
IBM 701 produs la General Motors – IOS (input
output system)
cod rezident pt echipamentele fizice
programele executa salt la codul rezident pentru
incarcarea programului urmator
SOS SHARE Operating System
limbaj de asamblare simbolic
FMS (Fortran Monitor System) pt IBM 709
programare la nivel inalt
SISTEME CU PRELUCRARE IN LOTURI
TOS – tape operating system
DOS – disk operating system
pachetele de cartele ce contin programele sunt
grupate in loturi => sisteme cu prelucrare in loturi
(batch processing systems)
multiprogramarea
mai multe programe active in memorie la un moment dat
Master Control Program (MCP) pt Burroughs 5000 in
1964
OS/360 pentru IBM System/360 in 1965
OS/MFT – memorie interna fixa
OS/MVT – memorie interna variabila
SISTEME CU DIVIZAREA TIMPULUI
utilizatorii interactioneaza prin terminale
procesorul alocat pe rand in cuante de timp
swapping = transfer programe din memoria
operativa in memoria externa
CTTS (Compatible Time-Sharing System) la MIT
pe IBM 7094
TSS/360 pentru IBM System 360/67
MULTICS AT&T Bell Labs+General Electric pe
GE635
memorie virtuala cu segmentare, editare de legaturi
dinamica, incarcarea segmentelor la cerere, sistem de
fisiere ierarhic, redirectarea operatiilor de IE, …
SISTEME CU MEMORIE VIRTUALA
memoria resursa critica: scumpa si putina
calculatorul Atlas de la Universitatea
Manchester Anglia
intreruperi
extracod
memoria cu un singur nivel
memorie virtuala
discul devine suport pentru extinderea memoriei interne
implementat pe IBM System 360/67 si IBM
System 370
OS/MVS (Multiple Virtual Spaces)
VM/370 Virtual Machine for 370
SISTEME DE OPERARE PENTRU
MINICALCULATOARE
firma DEC (Digital Equipment Corporation)
PDP-1, … ,PDP-8, VAX
pe PDP-11 ruleaza sistemul RT-11
un singur utilizator
multiprogramare foreground/background
pe PDP-11 ruleaza sistemul RSX-11
limbaj de comanda
sistem de fisiere
gestionarea memoriei prin partitii
multiprogramare
pe VAX ruleaza VAX/VMS
UNIX
creat de Thompson & Ritchie la Bell Labs pePDP-7
portat pe PDP-11
inspirat din Multics
lucru simultan al mai multor utilizatori
procese concurente
comunicare intre procese
sistem ierarhic de fisiere
limbaj de comanda flexibil
in prezent acopera toate arhitecturile majore de la microprocesoare la supercalculatoare
va fi studiat in detaliu in acest curs
SISTEME DE OPERARE PENTRU
MICROCALCULATOARE, CALCULATOARE
PERSONALE, ECHIPAMENTE MOBILE
firma Intel 8008, 8080, Z80
firma Motorola M6800
pe 8 biti CP/M creat de Digital Research monoutilizator, interfata de comanda simpla, sistem de fisiere
mononivel, interfata I/E
pe 16 biti Intel 8086, Motorola 68000 – baza calculatoarelorpersonale MSDOS
Windows 95,98,Me
pe 32 biti Windows NT,2000, XP
pe 64 biti Windows XP, Vista, Seven
Apple MacOS – interfete grafice bine dezvoltate
echipamente mobile: PDA, Smart Phone, … Symbian (Nokia), Windows for Mobile (Microsoft)
RETELE DE CALCULATOARE SI SISTEME DE
CALCUL DISTRIBUITE
ARPANET al DoD = interconectareacalculatorelor prin linii telefonice
Comunicarea intre calculatoare:
operatii I/E speciala
combinatie de tehnici hard/soft
Sistem de operare de retea =
reteaua multime unificata de resurse
extensii ale SO clasice
Xerox PARC (Palo Alto Research Center)
retele locale de calculatoare LAN (Local Area Network)
Sistem de operare distribuit = nu se deosebescunde sunt localizate resursele utilizate
PERSPECTIVE
sisteme multiprocesor cu paralelism masiv
SMP – multiprocesare simetrica
interfete cu utilizatorul
recunoasterea directa a vorbirii
integrarea mediilor de comunicare text, voce, animatie
sisteme de comunicatii mobile – proiectul Emucode la UPT
sisteme deschise – cu specificatii publice sistandardizate
limbaje orientate spre programare distribuita
ex. Java
utilizeaza facilitatile SO distribuite