Projecte de Sistemes Operatius (ProSO)

Curs 2009/2010 (quadrimestre primavera)

 

Professors

Descripció de l'assignatura

Capacitats Prèvies

Metodologia docent

Planificació

Descripció dels Projectes i Entregues

Avaluació

Documentació i Enunciats dels Projectes

Bibliografia

 


Professors

Per consultes sempre confirmeu prèviament per e-mail. Totes les adreces d'e-mail acaben amb @ac.upc.edu

Yolanda Becerra (coordinadora, email: yolandab)

   Despatx: C6-206

   Consultes: Dilluns de 12:00 a 13:00 i de 15:00 a 18:00, i Dimarts de 12:00 a 13:00 i de 15:00 a 16:00

Julita Corbalán (email: juli)

   Despatx: C6-203

   Consultes:

 Juan Jose Costa (email: jcosta )

    Despatx:  C6-117
    Consultes: Dilluns de 14:00 a 15:00 i de 17:00 a 19:00, i Dimarts de 15:00 a 17:00 i de 19:00 a 20:00

Marisa Gil (email: marisa )

   Despatx: C6-110

   Consultes: Dilluns i Dijous de 12:00 a 14:00

Amador Millàn (email: amillan )

   Despatx: C6-122

   Consultes:

 

 

Tornar


Descripció de l'assignatura

Aquesta assignatura té 7.5 crèdits assignats, això implica un total de 150 hores de treball per curs. Recordeu que té un alt component de treball extra pel tipus d'assignatura. No és recomanable matricular-se conjuntament amb altres assignatures de projecte.

Per a consultar una descripció completa dels objectius de l'assignatura visiteu la pàgina de ProSO a la web de la FIB.

Utilitzarem el Racó de la FIB per a publicar les notes i tots els avisos referents a l'assignatura. També al Racó els estudiants disposeu d'un fòrum de discussió dedicat a l'assignatura.

Tornar


Capacitats prèvies

Test d'autoavaluació de conceptes previs: abans de començar els projectes de ProSO els estudiants han de saber respondre a totes les preguntes d'aquest test.

Les capacitats prèvies necessàries per a fer aquesta assignatura són:


Per tant, les assignatures que s'haurien de cursar abans d'aquesta són SO, EC2 i PRED.

Tornar


Metodologia docent

A les classes de teoria es repassaran els conceptes bàsics de sistemes operatius que es necessiten pel projecte i es farà una descripció de l’enunciat del projecte.
A les classes de laboratori s’anirà implementant el projecte, generalment amb el suport del professor de laboratori. Tanmateix, l’alumne disposarà d’una quantitat d’hores de laboratori per continuar i acabar el projecte. El professor anirà a unes hores de laboratori prèviament concertades.

El projecte de sistemes operatius consta de dues parts:

Durant el curs es faran dues entregues parcials (de seguiment) pel projecte 1 i una entrega final per a cada projecte. Totes les entregues puntuen, tot i que cap és imprescindible (si no es fa una entrega determinada, es puntua amb un 0). Després de cada entrega, el tutor farà saber a cada estudiant els aspectes del seu projecte que són incorrectes i que s'han de corregir/millorar de cara a les properes entregues. També després de cada entrega, l'estudiant haurà de validar el codi que ha entregat responent per escrit al seu tutor una sèrie de preguntes sobre els conceptes que ha hagut d'aplicar per al seu desenvolupament. L'avaluació de cada projecte tindrà en compte tres components: la correcció del codi entregat, una valoració global de l'evolució de l'estudiant i les respostes donades al seu tutor per validar el codi. El primer projecte tindrà dues entregues de seguiment parcials i una entrega final. El segon projecte tindrà una només una entrega final.


Tornar


Planificació

Aquesta és la planificació del curs per setmanes. Si durant el curs es necessari modificar-la es notificaria penjant un avís al Racó

 

 

Els estudiants han de preparar previament les classes de teoria. Això vol dir haver llegit prèviament la documentació d’aquesta part i haver repassat aquells conceptes d’assignatures anteriors que no es tinguin clars.


Tornar


Descripció dels Projectes i Entregues

Entregues P1

P0: La primera es una sessió introductòria, en la qual s’introdueixen les eines que s’utilitzaran  durant el projecte i es treballa el mecanisme d’arrencada del sistema. Tot i que aquesta primera sessió no té nota associada és obligatori fer-la. Als qüestionaris del projecte es podran preguntar aspectes relacionats amb aquesta entrega. El fet de no saber utilitzar l'entorn de treball, per exemple el debugger o comandes com l'objdump podria suposar perdre punts a la nota del projecte.

E1.1: La segona part correspon als mecanismes d'entrada al sistema: interrupcions (rellotge i teclat), excepcions i crides a sistema. Aquesta part correspon a la primera entrega parcial que es farà el dia 26/2 que es farà via Racó.

E1.2: La tercera part correspon principalment a la gestió de processos. Aquesta part correspon a la segona entrega que es farà el dia 26/3 via Racó

E1.3:La quarta part correspon a la gestió d’Entrada/sortida. En aquesta entrega s'haurà d'entregar també una documentació on expliqueu els aspectes de disseny i implementació més rellevants d'aquesta part. A més a més haureu d'entregar el codi de tot el projecte (fitxer .tar.gz),i fer una entrevista amb el vostre tutor. Aquesta entrega es farà el dia 30/4 via Racó.

Entrega P2

E2.1 (entrega única P2): La del segon projecte es farà el dia 21/5.


Tornar


Avaluació

Normativa còpies

El codi font de les vostres pràctiques ha de ser totalment original. Si en algun cas consulteu algun codi que no és original vostre, heu d'incloure una referència indicant el seu origen. Si no apareix aquesta referència es considerarà un cas de còpia i aquella entrega tindrà una nota de 0.

A final de cada entrega els estudiants hauran de validar el codi que han entregat responent per escrit un conjunt de preguntes sobre els conceptes necessaris per a desenvolupar el codi dels seus projectes. El resultat d'aquest qüestionari farà mitja amb la nota treta amb les entregues de cada projecte.

Projecte 1: 70%

 

    El projecte 1 té tres entregues:


   

Projecte 2: 30%



Tornar


Documentació i Enunciats dels Projectes

PROJECTE 1

- Fitxers bàsics de Zeos

- Enunciat Projecte 1

- Transparencies del Projecte 1

- Per la entrega final: Descripció de la documentació a entregar amb la tercera entrega del projecte 1

- Llibreries amb tests : Aquest paquet conté unes llibreries amb uns tests que us poden ajudar a validar el vostre codi. Tingueu en compte que hi han coses que no es poden control.lar amb un joc de proves genèric per tothom (això vol dir que hi poden haver errors en el vostre codi que aquestes llibreries no detecti). Per executar els tests només heu de cridar la rutina runjp des del user.c i enllaçar l'executable d'usuari amb la llibreria corresponent (al paquet hi trobareu un fitxer README amb unes instruccions d'us més detallades).

- Apèndix assemblador i386

- Apèndix preprocessador C

- Apèndix programació en C: Convencions i punters

PROJECTE 2

- Enunciat Projecte 2

- Transparències Projecte 2


Tornar


 

Bibliografia

Bibliografia bàsica

Bibliografia complementària

Links d’utilitat

Sobre bochs

En aquest link trobareu un video sobre com instalar bochs 2.3 en Ubuntu. Es cortesia d'un company vostre del curs 2006-2206Q1 (Lluis M. García)
     http://www.labav1.org/bochs_proso/bochs_proso.html

Bochs debugging

Instal.lació de Bochs

Sobre Linux

The Linux Documentation project

Linux i386 Boot Code HOWTO

Linux 2.4.x Initialization for IA-32 HOWTO

Linux kernel online book

Linux Cross-Reference

Linux source code

Linux kernel coding style

Sobre S.O en general

Pàgina web de Willian Stallings (amb transparencies del llibre i altres links molt interesants)

Sobre arquitectura

Transparencias de las asignatura ec2 de plan nuevo. Código ensamblador

Manuals sobre l'arquitectura del PC i manuals tècnica de Intel 80x86

Intel, Intel Architecture Software Developer's Manual, vol 3: System programming

Sobre compiladors

Manuales GCC

Manual us Makefile

 

Tornar


Creative Commons License
Aquesta obra està subjecta a una Llicència de Creative Commons.

Última modificació:24 abril, 2008