[pso] [Tema 3][lin] creare bio

Razvan Deaconescu razvan.deaconescu at cs.pub.ro
Sun Apr 10 19:58:49 EEST 2011


On 04/10/2011 06:56 PM, Ciprian Mihai Coman wrote:
> Salut!
> 
> Incerc sa scriu un modul care doar raspunde la cererile de read. Am doua
> probleme:
> 
> 1. Cand inserez modulul apar imediat cereri, fara sa rulez testerul. Este
> normal?

Da. Subsistemul de I/O trimite cerere la inițializarea dispozitivului
(după add_disk). Din câte știu o face pentru a verifica faptul că e toul OK.

> 2. Initial am incercat sa fac bio pentru discul fizic cu bio_clone dar nu a
> mers.

Ce nu a mers?

> Acum incerc cu bio_alloc dar nu merge sa adaug atatea pagini cate am
> nevoie. De exemplu, prima cerere venita are 8 sectoare. Am un for care aloca
> cate o pagina, o adaga la bio si apoi afiseaza bio_sectors(bio). Primele 3
> iteratii sunt ok si adauga cate un sector de 512. Apoi nu se mai adauga
> numic (bio_sectors ramane la 3). Este ceva gresit in abordarea mea?

În general PAGE_SIZE / KERNEL_SECTOR_SIZE = 8.

De ce nu aloci din prima dimensiunea paginii:

bio_add_page(bio, page, PAGE_SIZE, 0);

Practic, ar trebui să aloci la nivel de pagini, depinzând cât de mare
este bio-ul (eventual într-un for).

Răzvan


More information about the pso mailing list