Archive for the Felicitari Category

Model Examen SO

Posted in Felicitari with tags , , , on 5 June 2012 by Alina

al doilea test practic, 2012

Multumim, Diaconescu Stefan

                                                                     
/*******************************************************************************************************
Enunt prima problema:

a) Care este semnificatia celui de-al treilea argument al functiei fcntl in cazul in care este apelata cu modul F_SETLK? 
b) Scrieti fragmentul de cod pentru apelul care pune un blocaj in scriere pe descriptorul de fisier fd incepand cu pozitia 100 fata de inceputul fisierului,
 pe o lungime de 10 octeti. Se presupune ca fd exista deja (nu e necesar sa il declarati, deschideti, etc).

NOTA: pastrati enuntul in acest comentariu si scrieti rezolvarea mai jos.
*******************************************************************************************************/

Enunt a doua problema:

Programul de mai jos contine trei erori sintactice (adica, detectabile la compilare), si ar trebui sa ofere
urmatoarea functionalitate: citeste numerele aflate in fisierul specificat prin primul argument de la linia de 
comanda, calculeaza valoarea factorialului pentru fiecare numar si il scrie in fisierul specificat prin al doilea argument.

Corectati in programul de mai jos cele trei erori introduse voluntar in asa fel incat sa obtineti un program corect.
Dupa linia pe care ati facut o corectie, includeti si o explicatie ca si comentariu pentru a obtine punctajul integral.

NOTA: pastrati enuntul in acest comentariu si scrieti rezolvarea mai jos.
*******************************************************************************************************/

#include<stdio.h>
#include<sys/types.h>
#include<sys/stat.h>
int factorial(int);
int main( int argc, char *argv[] )
{
    int fd1, fd2;
    int n,fact;

    if ( argv <  3) 

    // nu este corect argv<3 pt ca se cer 2 argumente
    {
        perror( "not sufficient arguments" );
        return -4;
    }

    if ( (fd1=open( argv[1], O_RDONLY)) == -1 )
    {
        perror( "could not open file specified in first argument\n" );
        return -3;
    }

    if ( (fd2=open( argv[2], O_WRONLY | O_CREATE,0600 )) == -1 )

    //este gresit O_CREATE if( (fd2=open( argv[2], O_WRONLY | O_CREATE,0600 )) == -1 ) este corect O_CREAT
    {
        perror( "could not open file specified in second argument\n" );
        return -2;
    }

    while ( read( fd1,&n, sizeof(int) )>  0 )
    {
	fact=factorial(n);
        write( fd2,&fact, sizeof(int) );
    }

    close( fd1 );
    return 0;
}
int factorial(int nr)
{
int i, f=1;

for (i = 2;i<=nr;i++)
	f=f*i;

return f;
}

*******************************************************************************************************/

/*******************************************************************************************************
Enunt a treia problema:

Sa se scrie un program C care va crea 2 procese fii si va citi o secventa 
de N numere de la tastatura. Procesul initial, P0, va transmite fiecaruia dintre 
cele 2 procese fii, P1 si P2, cate jumatate din secventa de numere. Fiecare proces 
fiu va calcula media aritmetica a numerelor din secventa primita si va 
transmite valoarea calculata procesului parinte. Procesul P0 va afisa 
media aritmetica a valorilor primite de la cele doua procese fii.

Comunicarea intre procese se va realiza prin intermediul a 3 canale de comunicatie 
interna astfel: se vor utiliza doua canale de comunicatie pentru transmiterea datelor 
de la procesul parinte catre procesele fii, cate unul pentru fiecare proces fiu, 
si un al treilea canal de comunicatie pentru transmiterea datelor de la procesele 
fii catre procesul parinte.

Fiecare proces va afisa identitatea sa si pe cea a procesului parinte.

Se vor trata toate cazurile de exceptie ce pot apare.

NOTA: pastrati enuntul in acest comentariu si scrieti rezolvarea mai jos.
*******************************************************************************************************/
Advertisements

Craciun fericit!

Posted in Felicitari on 27 December 2011 by Alina

Craciun fericit tuturor si fie ca 2012 sa fiu un an plin de impliniri si noroc in toate!

PS: promitem ca de la anu’ revenim in forta!

Sarbatoritul saptamanii

Posted in Felicitari with tags , on 24 December 2011 by Alina

La multi ani Stefan!

Sarbatoritul saptamanii

Posted in Felicitari with tags , on 11 December 2011 by Alina

La multi ani, CRISTI!

Sarbatoritul saptamanii

Posted in Felicitari with tags , on 7 December 2011 by Alina

La multi ani, Sorin!

Sarbatoritul saptamanii

Posted in Felicitari with tags , on 28 November 2011 by Alina

La multi ani Clau !

Sarbatorita saptamanii

Posted in Felicitari with tags , on 21 November 2011 by Alina

La multi ani, Isa!