Mulțumesc Paul, presupunerile le-am facut și eu ca să pot testa codul, dar voiam să mă asigur că este corect și că nu voi fi depunctat.
On Wed, 20 Mar 2019 at 17:14 Paul Olaru <[email protected]> wrote: > Pe Windows într-adevăr nu respectăm modul în sine primit, doar vedem dacă > trunchiem sau face append. > Dacă fișierul nu există pe Linux, gândește-te la niște permisiuni decente. > 0644 nu ar fi o valoare rea. > Majoritatea funcțiilor au voie să crape dacă SO_FILE* este NULL -- cele > din biblioteca standard (stdio.h) fac acest lucru și checkerul nu va da > astfel de parametri. De asemenea, bufferele primite ca parametru vor fi > întotdeauna valide. Singurele erori de memorie vor fi deci de la propria > gestiune internă a resurselor. > > Makefile-urile trebuie să aibă o regulă build și una clean, as usual. > Regula build va crea libso_stdio.so pe Linux și so_stdio.dll + so_stdio.lib > pe Windows. (Notă, comanda pentru DLL va crea automat și LIB). Regula clean > șterge tot ce a fost generat (fișiere .o, fișierul .so pe Linux, fișiere > .obj, .dll și .lib pe Windows) > > Pentru tipul de buffering aștept și eu răspuns. Dar eu personal am mers pe > single-buffered. > > On Wed, Mar 20, 2019, 17:06 Ursescu Ionut via so <[email protected]> > wrote: > >> Salutare, >> >> Am și eu câteva nelămuriri în legătură cu enunțul temei, după cum urmează: >> >> - so_fopen are modurile de deschidere a fișierului primite ca argument, >> pentru implementarea pe Windows am văzut la 'Precizări Windows' faptul că >> trebuie să deschidem fișierele cu GENERIC_READ|GENERIC_WRITE. Trebuie >> ignorat modul primit ca argument legat de partea aceasta de scriere și >> citire (aici nu intră side-effects, trunchiere etc) >> >> - so_fopen, cu ce permisiuni se va crea fișierul in cazul in care nu >> există >> >> - funcțiile care primesc un SO_FILE *, ce trebuie să returneze în cazul >> în care vor primi un NULL >> >> - nu este specificat ce trebuie pus pe checker, ce comenzi trebuie sa >> expună Makefile-ul dacă acesta trebuie să existe. (se poate modifica >> fișierul .h ?) >> >> - contează modul in care noi am construit buffer-ul (de ex 1 pentru >> write, 1 pentru read si incă unul temporar) sau e important doar conceptul >> de buffering și nu detaliile de implementare. >> >> >> Mulțumesc, >> Ursescu Ionuț >> > _______________________________________________ >> http://ocw.cs.pub.ro/courses/so/info/lista-discutii > >
_______________________________________________ http://ocw.cs.pub.ro/courses/so/info/lista-discutii
