[so] [Tema 5] Problema aio read si write

Silvia Stegaru stegaru.silvia at yahoo.com
Thu Aug 19 17:13:33 EEST 2010


Fisierele de citit sunt deschise cu flag-urile "O_RDONLY | O_DIRECT | O_NONBLOCK", iar cele in care fac scrierea sunt deschise cu "O_WRONLY | O_DIRECT | O_CREAT | O_NONBLOCK, 0666". Verific codurile de eroare pentru toate functiile, problema e ca nu am nicio eroare :| Aloc si initializez iocb si piocb, apelez io_setup si verific valoarea returnata (!= 0 => eroare, stop), apelez io_submit si verific valoarea returnata (daca <0 => eroare, stop), wait_aio. Dupa wait_aio insa daca verific de exemplu buffer-ul iocb[0].aio_buf acesta este gol. Analog la scriere, primesc notificare ca a terminat de scris, dar cand verific fisierul acesta nu contine modificarile cerute... Ma gandesc ca daca as fi completat vreun camp gresit mi-ar fi aparut erori sau macar warning-uri la make, insa aparent nu am probleme la compilare. Nici la executie nu apar erori, programul continua executia ca si cum totul s-a desfasurat bine. Imi merge doar partea de listare a fisierelor
 (care nu e legata de aio, ci doar de eventfd in cazul meu). Probabil am omis ceva, dar nu imi dau seama ce... :-<

Any suggestions? 

-- 
Stegaru Silvia Cristina

--- On Tue, 8/17/10, Laurențiu Dascălu <dascalu.laurentziu at gmail.com> wrote:

From: Laurențiu Dascălu <dascalu.laurentziu at gmail.com>
Subject: Re: [so] [Tema 5] Problema aio read si write
To: "Sisteme de Operare" <so at cursuri.cs.pub.ro>
Date: Tuesday, August 17, 2010, 10:53 PM

On 17.08.2010 09:03, Silvia Stegaru wrote:
>   Salut!
>
>
>
> Am si eu o problema cu tema 5... Aplicatia nu imi intoarce nicio eroare,
>   insa citirea si scrierea in / din fisier nu merg. Am urmarit
> laboratorul si am folosit aio cu eventfd; eventfd-ul merge, imi merge si
>   listarea; clientul este notificat la incheierea unei
>   operatii, insa nu se citeste nimic (bufferul iocb[i].aio_buf ramane vid
>   la citire) si nu scrie nimic in fisier (desi structura iocb e completa
> si corect completata, inclusiv bufferul). Laboratorul imi merge.... Insa
>   cand incerc sa compar codul cu ce s-a facut
>   la lab totul pare ok, nu am omis pasi.
>
>
>
> Are cineva vreo idee de ce se intampla asta?

Din descrierea ta nu prea-mi dau seama care este problema. Spune-mi cum 
ai deschis fișierele pentru citire/scriere? Ai verificat codurile de 
eroare întoarse de funcție? Vezi dacă-ți pică vreo funcție pe parcurs.

Varianta consumatoare de timp e să încerci să scrii aceleași date cu 
codul tău și cu codul din laborator, și să compari rezultatele întoarse 
de funcții. Vezi care diferă și vezi de ce.

-- 
Laurențiu Dascălu

_______________________________________________
http://elf.cs.pub.ro/so/wiki/resurse/lista-discutii


      
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://cursuri.cs.pub.ro/lurker/list/so.html/attachments/20100819/15e21345/attachment.html>


More information about the so mailing list