^-Super_Treje-^
18-06-2005, 09:06
Salve a tutti, sono nuovo di questo forum e noto che c'e' veramente molto materiale in italiano sulla programmazione e ve ne faccio i complimenti.
Premetto : il prof di Sistemi Operativi 1, ha assegnato una tesina che consiste in sostanza di usare 2 file come un archivio telefonico, uno ordinato e l'altro no.
Le operazioni che si possono fare sul file non ordinato e' quello di leggere i dati relativi all'abbonato telefonico, eliminarlo, aggiungerne di nuovi.
Poi c'e' una funzione ulteriore per ordinarli ed il risultato metterlo sul secondo file.
A fine tesina c'e' scritto di utilizzare i semafori per evitare l'inconsistenza dei dati.
Personalmente mi sono letto come si creano semafori, come li si settano e come li si cancellano.
Il mio dubbio e' questo : il semaforo lo si associa alla risorsa che deve essere utilizzata o lo si associa al processo che deve usare una determinata risorsa ?.
Se mi son spiegato male riformulo la domanda con un esempio :
1) ho 3 metodi il cui codice permette di modificare 1 file
la mia domanda e' : devo utilizzare 1 semaforo che indichi quando si puo' scrivere su un file e casomai se + metodi devono andar a utilizzare quel file li devo mettere in una ipotetica "coda di interventi da fare sul file", oppure devo creare 3 semafori ognuno da scrivere all'interno del metodo delle 3 funzioni che abiliti/disabiliti il metodo dal continuare il suo codice se ci sono altri metodi che stanno lavorando sul file ?
Vi ringrazierei molto se riusciste a chiarirmi questo dubbio che ho su come si utilizzano i semafori quando bisogna far utilizzare un paio di file a molti metodi lettura/scrittura.
Ciao. :)
P.S. : scusate se parlo di metodi al posto di funzioni ma provengo dal java, cmq penso che ci siamo capiti :D
Premetto : il prof di Sistemi Operativi 1, ha assegnato una tesina che consiste in sostanza di usare 2 file come un archivio telefonico, uno ordinato e l'altro no.
Le operazioni che si possono fare sul file non ordinato e' quello di leggere i dati relativi all'abbonato telefonico, eliminarlo, aggiungerne di nuovi.
Poi c'e' una funzione ulteriore per ordinarli ed il risultato metterlo sul secondo file.
A fine tesina c'e' scritto di utilizzare i semafori per evitare l'inconsistenza dei dati.
Personalmente mi sono letto come si creano semafori, come li si settano e come li si cancellano.
Il mio dubbio e' questo : il semaforo lo si associa alla risorsa che deve essere utilizzata o lo si associa al processo che deve usare una determinata risorsa ?.
Se mi son spiegato male riformulo la domanda con un esempio :
1) ho 3 metodi il cui codice permette di modificare 1 file
la mia domanda e' : devo utilizzare 1 semaforo che indichi quando si puo' scrivere su un file e casomai se + metodi devono andar a utilizzare quel file li devo mettere in una ipotetica "coda di interventi da fare sul file", oppure devo creare 3 semafori ognuno da scrivere all'interno del metodo delle 3 funzioni che abiliti/disabiliti il metodo dal continuare il suo codice se ci sono altri metodi che stanno lavorando sul file ?
Vi ringrazierei molto se riusciste a chiarirmi questo dubbio che ho su come si utilizzano i semafori quando bisogna far utilizzare un paio di file a molti metodi lettura/scrittura.
Ciao. :)
P.S. : scusate se parlo di metodi al posto di funzioni ma provengo dal java, cmq penso che ci siamo capiti :D