Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
SistemasOperativos
EjerciciospropuestosrelacionadosconlaPrctica1
Curso2009/2010 http://www.arcos.inf.uc3m.es/~ii_ssoo
Ejercicio1Accesoaficheros
Se pide realizar un programa capaz de realizar la copia de un fichero. El programa denominadomycp,deber emularelcomportamientodelcomandocpyseejecutar conlamisma sintaxis.
$./mycp<fichero_entrada><fichero_salida>
El programa deber tener una funcin llamada copia_fichero que devuelva 0 en caso de realizarcorrectamentelacopiaconlasiguientefirma:
intcopia_fichero(char*entrada,char*salida);
Paralarealizacindelejercicio,serecomiendautilizarlassiguientesfunciones:
intopen(constchar*pathname,intflags); intclose(intfd); intcreat(constchar*pathname,mode_tmode); ssize_tread(intfd,void*buf,size_tcount); ssize_twrite(intfd,constvoid*buf,size_tcount);
Ejercicio2Creacindeprocesos
2de3
Paralarealizacindelejercicio,serecomiendautilizarlassiguientesfunciones:
pid_tfork(void); pid_twait(int*status); WEXITSTATUS(status); voidexit(intstatus);
Ejercicio3Creacindepipes
Sepiderealizarunprogramaqueamplelafuncionalidaddelprogramacreadoenelejercicio 2,paraaadirlafuncionalidaddeenvodemensajesmediantepipesentreelprocesopadreyel procesohijo.Elprocesopadreescribirunmensajedetexto,queelhijodebermostrarporlasalida estndar. El programa eneste casodeber tener dos funciones codigo_padre y codigo_hijo con la siguientefirma:
intcodigo_padre(intpipe); voidcodigo_hijo(intpipe);
Paralarealizacindelejercicio,serecomiendautilizarlassiguientesfunciones:
intpipe(intpipefd[2]);
3de3