Universitatea Babeş-Bolyai Cluj-Napoca
Facultatea de Matematică şi Informatică
Ciclul de studii: Licenţă
FIŞA DISCIPLINEI

Codul	Disciplina	
MID0003	Sisteme de operare	

Specializarea	Sem.	Ore: C+S+L	Categoria	Statutul	
Informatică	2	2+0+2	fundamentala	obligatorie	
Matematică informatică	4	2+0+2	specialitate	obligatorie	
Ingineria informatiei	4	2+0+2	specialitate	obligatorie	

Titularii de disciplină	Prof. Dr. BOIAN Florian Mircea, florin@cs.ubbcluj.ro
Conf. Dr. ROBU Judit, robu@cs.ubbcluj.ro
Lect. Dr. BOIAN Rares Florin, rares@cs.ubbcluj.ro
Asist. Dr. DRAGOS Sanda Maria, sanda@cs.ubbcluj.ro
Lect. Dr. TRÎMBITAS Gabriela, gabitr@cs.ubbcluj.ro	
Obiective	Insuşirea teoriei generale a sistemelor de operare. Prezentarea, ca studiu de caz, a principalelor facilităţi oferite de către sistemul de operare Unix. Formarea deprinderilor de programare tip Shell si de prelucrare a fisierelor text sub Unix. Prezentarea, prin comparaţie, a facilitatilor oferite de sistemele de operare din familia Windows: XP, Vista, Vindows 7. Gestiunea aplicatiilor multitasking folosind procese sub Unix şi sub Windows.	
Conţinutul	Curs
Săpt. 1 - 3
1. Sistemul de operare Unix: interfete exterioare
	Structura generală a sistemului de operare
	Expresii regulare, specificarea fişierelor, specificări generice
	Filtre; principii generale sort, awk, sed, grep (restul la laborator)
	Procesoare de comenzi shell:sh, csh, ksh, bash; prezentări generale
	Comenzi utile în context shell şi gestiunea exterioară a proceselor
	Programarea în shell; aplicaţii shell
	Structura superioară a sistemului de directoare Unix
	Conceptul de montare
	Legături hard şi legături simbolice

Săpt. 4 - 6
2. Sistemul de operare Unix: apeluri sistem, structuri interne
	Fişiere şi procese sub Unix: schema de legare între ele
	I/O folosind handle: open, close, lseek, read, write, dup, dup2 
	Protecţia fişierelor
	Blocarea fişierelor
	Procese sub Unix; structura unui proces
	Apeluri sistem de gestiune a proceselor: fork, wait, exit, exec*
	Comunicatii intre procese: pipe, popen, FIFO
	Elemente de administrare Unix

Săpt. 7 - 8
3. Sistemul de operare Windows:
	Structura generală a sistemului de operare
	Procese sub Windows
	Comunicarea între procese sub Windows
	Blocarea fişierelor sub Windows
	Elemente de administrare Windows

Săpt. 9 - 10
4. Sistemele de fişiere pentru sistemele de operare Unix si Windows
	Structura internă a discului şi a sistemului de fişiere DOS; tabela FAT
	Structura internă a discului şi a sistemului de fişiere Windows (20003, XP, Vista); mecanismul NTFS, fişierul MFT
	Structura internă a discului şi a sistemului de fişiere Unix; mecanismul i-node
	Sisteme RAID

Săpt. 11 - 14
5. Teoria generală a sistemelor de operare
	Tipuri de sisteme de calcul şi de sisteme de operare. Clasificări
	Canal I/O, zone tampon multiple. Multiprogramare. 
	Structura generală şi funcţiile unui sistem de operare
	Conceptul de proces: specificări, concurenţă, semafoare, impas
	Planificarea proceselor

Laborator:
1.	Comenzi UNIX pentru lucrul cu fişiere (a) C Tutorial: sections 1-5 (b)
2.	Programe Shell(I) (a) C Tutorial: sections 6-8 (b)
3.	Utilitarele SED şi  GREP (a) C Tutorial: sections 9-11 (b)
4.	Programe AWK 
5.	Programe Shell (II) (a) Utilitarul MAKE utility. Lucru cu fişiere UNIX în C (b)
6.	Procese UNIX 
7.	Blocarea fişierelor sub UNIX 
8.	Comunicarea între procese UNIX prin PIPE şi POPEN 
9.	Comunicarea între procese UNIX prin FIFO 
10.	Procese Windows 
11.	Comunicarea între procese Windows prin PIPE 
12.	Rezerva
13.	Incheierea activităţii de laborator
14.	Examen practic	
Bibliografie	1. BACON J. Concurrent Systems: Operating Systems, Database and Distributed Systems - an integrated approach. Addison-Wesley, 1998
2. BOIAN F.M. Sisteme de operare interactive. Ed. Libris, Cluj, 1994.
3. BOIAN F.M. De la aritmetica la calculatoare. Ed. Presa Universitara Clujeana, Cluj, 1996.
4. BOIAN F.M. FERDEAN C.M., BOIAN R.F., DRAGOS R.C. Programare concurentă pe platforme Unix, Windows, Java. Ed. Albastră, grupul Microinformatica, Cluj, 2002.
5. IGNAT I. KACSO A. Unix: generarea proceselor. Ed. Albastra, grupul Microinformatica, Cluj, 1995.
6. ROCHKIND M.J. Advanced Unix Programming. Prentice Hall, 1985.
7. STALLINGS W. Operating Systems: Internal and Design Principles. Prentice Hall, 1998.
8. TANENBAUM A.S. Distributed Operating Systems. Prentice Hall, 2002 
9. .	Ubuntu - The Complete Reference; Richard Petersen (MCGraw-Hill, 2009)
10.	. Windows 7 User Guide. Microsoft, 2009/ 
	
Evaluare	Nota finala este medie ponderata a trei note componente:
Examen scris şi practic la finele semestrului:
-	nota de la lucrarea scrisă 40%;
-	nota la lucrarea practică 40%;
Activitatea de laborator: calitatea programelor, documentaţii etc. 20%

Daca din motive intemeiate nu s-a putut preda satisfacator activitatea de laborator, atunci partea practica a examenului final va avea pondere 60% cu cerinte marite cu 50% 

Cerintele cursului sunt postate la:
http://www.cs.ubbcluj.ro/~florin/SO