[so] [Tema 2] [Linux] Lămuriri enunț

Ursescu Ionut ursescuionut97 at gmail.com
Wed Mar 20 17:29:39 EET 2019


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 <olarupaulstelian97 at gmail.com>
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 <so at cursuri.cs.pub.ro>
> 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
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://cursuri.cs.pub.ro/pipermail/so/attachments/20190320/be42238c/attachment.html>


More information about the so mailing list