Sistemes Operatius ( SO )
| Crèdits: |
Departament: |
Tipus: |
Requisits: |
| 9.0 |
AC |
Obligatòria per l'EI
Obligatòria per l'ETIS
|
|
EC2
- Pre-requisit per l' EI , ETIS
|
|
|
PRED
- Pre-requisit per l' EI
|
|
|
PS
- Pre-requisit per l' ETIS
|
|
|
Professors
| Responsable: | David López Álvarez (david ac.upc.edu). |
| Altres: | Alejandro Durán González (aduran ac.upc.edu) Josep Ramon Herrero Zaragoza (josepr ac.upc.edu) Manuel A. Pajuelo Gonzalez (mpajuelo ac.upc.edu). |
Objectius Generals
L'estudiant ha de conèixer els serveis i utilitats que ofereix un sistema operatiu, així com la gestió dels recursos que ofereixen aquests serveis. Això inclou els següents conceptes: intèrpret de comandes, crida al sistema, seguretat, protecció, biblioteca de sistema, biblioteca dinàmica, procés, multiprocés, temps compartit, concurrència, exclusió mútua, thread, planificació de processos, entrada/sortida, canal, sistema de fitxers, gestor de dispositius, comunicació entre processos (pipe, event, semàfor), sockets, memòria compartida, memòria virtual, paginació, àrea de swap.
Així mateix, l'estudiant ha de saber els trets bàsics de les implementacions dels conceptes anteriors en els sistemes Linux i Windows.
Objectius Específics
Coneixements
- Conèixer els serveis que ofereix un SO des del punt de vista d'un usuari, d'un programador i d'un administrador
- Conèixer i saber utilitzar diferents sistemes d'interacció amb el SO (comandes, scripts, biblioteques, crides a sistema, ...) i conèixer la seva implementació.
- Saber descriure la necessitat d'un sistema de fitxers i els serveis que n'ha d'oferir. Conèixer diferents formes d'implementació en sistemes actuals (particions, fat, inodes, ntfs, raid)
- Saber quines operacions ha d'oferir un SO a un programador respecte a l'entrada / sortida. Ser capaç de descriure els conceptes i necessitats de dispositius, així com la gestió i implementació (part dependent i independent, descriptors de dispositius,...)
- Conèixer els conceptes de procés, multiprocés, temps compartit, concurrència i threads. Conèixer els problemes que pot donar l'ús de processos i threads i maneres de solucionar-los. Saber gestionar processos i threads. Saber descriure com s'implementen aquests conceptes a sistemes actuals
- Conèixer i saber fer servir mecanismes de sincronització i comunicació entre processos/threads, com ara pipes, named pipes, memòria compartida, semàfors, ...
- Saber descriure i gestionar events i excepcions. Implementacions.
- Saber descriure els conceptes més bàsics sobre la visió del SO de les xarxes de computadors. Saber fer servir mecanismes per la comunicació(sockets). Enllaçar els conceptes de SO amb els de xarxes
- Conèixer mecanismes de gestió de memòria que fan servir SO actuals, poder descriure els conceptes de paginació, memòria virtual, swap,...
- Saber descriure els problemes bàsics de seguretat i protecció, i conèixer mecanismes implementats en sistemes actuals
- Tenir unes nocions bàsiques sobre rendiment i tècniques d'optimització al sistema operatiu
Habilitats
(Informació no introduïda)
Competències
(Informació no introduïda)
Continguts
Hores estimades de:
| T |
P |
L |
Alt |
L Ext. |
Est |
A Ext. |
| Teoria |
Problemes |
Laboratori |
Altres activitats |
Laboratori extern |
Estudi |
Altres hores fora d'horari fixat |
|
1. Introducció
|
| T |
P |
L |
Alt |
L Ext |
Est |
A Ext |
Total |
| 2,0 |
0 |
0 |
0 |
0 |
0 |
0 |
2,0 |
|
|
2. Visió general d'un S.O
|
| T |
P |
L |
Alt |
L Ext |
Est |
A Ext |
Total |
| 8,3 |
0 |
4,1 |
0 |
0 |
7,6 |
0 |
20,0 |
|
|
3. Sistema de fitxers
|
| T |
P |
L |
Alt |
L Ext |
Est |
A Ext |
Total |
| 11,0 |
0 |
5,3 |
0 |
0 |
8,7 |
0 |
25,0 |
|
|
4. Entrada/sortida
|
| T |
P |
L |
Alt |
L Ext |
Est |
A Ext |
Total |
| 6,4 |
0 |
3,2 |
0 |
0 |
5,4 |
0 |
15,0 |
|
|
5. Processos
|
| T |
P |
L |
Alt |
L Ext |
Est |
A Ext |
Total |
| 11,0 |
0 |
6,0 |
0 |
0 |
7,0 |
0 |
24,0 |
|
|
6. Fluxos
|
| T |
P |
L |
Alt |
L Ext |
Est |
A Ext |
Total |
| 8,3 |
0 |
4,1 |
0 |
0 |
7,6 |
0 |
20,0 |
|
|
7. Gestió de memòria
|
| T |
P |
L |
Alt |
L Ext |
Est |
A Ext |
Total |
| 5,3 |
0 |
2,7 |
0 |
0 |
4,0 |
0 |
12,0 |
|
|
8. Visió global d'un S.O.
|
| T |
P |
L |
Alt |
L Ext |
Est |
A Ext |
Total |
| 8,3 |
0 |
4,3 |
0 |
0 |
7,4 |
0 |
20,0 |
|
| - Total per tipus |
T |
P |
L |
Alt |
L Ext |
Est |
A Ext |
Total |
| 60,6 |
0 |
29,7 |
0 |
0 |
47,7 |
0 |
138,0 |
- Hores addicionals dedicades a l'avaluació:
|
8,0 |
- Total hores de treball per l'estudiant |
146,0 |
|
Metodologia docent
L'assignatura té 6 hores de classe a la setmana. Quatre d'elles seran de teoria i dues de problemes/laboratori. Les classes de problemes/laboratori es faran en aules de laboratori, de manera que l'estudiant tingui un terminal a la seva disposició. En aquestes classes, el professor explicarà conceptes pràctics, mapejant els conceptes explicats a teoria sobre el sistema operatiu en que es vagi a treballar. Es faran exercicis tant a la pissarra com als terminals. No hi ha una pràctica associada, sinó exercics resolts al laboratori.
Les primeres setmanes de teoria s'explicarà el punt de vista d'usuari/programador, que serà el que es provarà al laboratori. A partir d'aquestes setmanes, a teoría s'explicaran idees d'implementació, com a base de l'assignatura PSO.
Mètode d'avaluació
La nota de l'assignatura es calcularà a partir de dues notes:
- nota de continguts teòrics (pes 70%)
- la nota de laboratori o continguts pràctics (pes 30%)
Cal treure un mínim d'un 3.5 a la nota de laboratori. Altrament, la nota màxima de l'assignatura serà un 4.
La nota de continguts pràctics s'obtindrà com el màxim entre la nota de seguiment de les sessions de pràctiques i la nota d'un control que es farà en l'última sessió de laboratori.
La nota de continguts teòrics es pot obtenir per controls al llarg del curs o bé en l'examen final. Al llarg del curs es realitzaran entre 2 i 4 (per decidir) controls teòrics. L'alumne que superi la part de continguts teòrics per mitjà dels controls quedarà alliberat, si vol, de l'examen final.
Bibliografía bàsica
- STALLINGS, William Sistemas Operativos 4a. edición, Prentice Hall, 2001.
- KERNIGHAN Brian W., PIKE Rob EL entorno de programación UNIX, Prentice Hall, 2000.
- KERNIGHAN Brian W., PIKE Rob La Práctica de la Programación, Prentice Hall, Pearson Educación, 2000.
Bibliografía complementària
- SILBERSCHATZ, Abraham; GALVIN, Peter B. Operating Systems Concepts, Addison Wesley, 2003.
- STEVENS, W. Richard Advanced Programming in the UNIX Environment, Addison Wesley, 1992.
Enllaços web
(Informació no introduïda)
Capacitats prèvies
Concurrència (desitjable)
Estructures de dades
Idees d'entrada/sortida
Memòria virtual
Correspondència C- assemblador
Entorn Linux / C
|