fbpx
Skip to main content

[LA] Linux avanzato 2008

  • COM_EASYSOCIAL_GUEST_NAME
  • Avatar di COM_EASYSOCIAL_GUEST_NAME
  • Visitatori
  • Visitatori
17 Anni 6 Mesi fa #72286 da COM_EASYSOCIAL_GUEST_NAME
Risposta da COM_EASYSOCIAL_GUEST_NAME al topic [LA] Linux avanzato 2008
No, non lo ha.

Si prega Accedi o Crea un account a partecipare alla conversazione.

  • COM_EASYSOCIAL_GUEST_NAME
  • Avatar di COM_EASYSOCIAL_GUEST_NAME
  • Visitatori
  • Visitatori
17 Anni 6 Mesi fa #72290 da COM_EASYSOCIAL_GUEST_NAME
Risposta da COM_EASYSOCIAL_GUEST_NAME al topic [LA] Linux avanzato 2008

Non voglio essere polemico, o forse sì...

Qualcuno mi spiega perché a volte dà ste boiate qua e altre dà cose allucinanti che dopo tre quarti d'ora ancora non si è capito cosa cercasse? Ha un senso tutto ciò?

Parlo solamente delle prove di laboratorio in questo momento.


perchè tanto il suo obiettivo già lo ha raggiunto con la prima prova...a buon intenditore poche parole... :evil: :evil:

Si prega Accedi o Crea un account a partecipare alla conversazione.

  • COM_EASYSOCIAL_GUEST_NAME
  • Avatar di COM_EASYSOCIAL_GUEST_NAME
  • Visitatori
  • Visitatori
17 Anni 6 Mesi fa #72291 da COM_EASYSOCIAL_GUEST_NAME
Risposta da COM_EASYSOCIAL_GUEST_NAME al topic [LA] Linux avanzato 2008

Non voglio essere polemico, o forse sì...

Qualcuno mi spiega perché a volte dà ste boiate qua e altre dà cose allucinanti che dopo tre quarti d'ora ancora non si è capito cosa cercasse? Ha un senso tutto ciò?

Parlo solamente delle prove di laboratorio in questo momento.


Guarda, io non l'ho passata..

Sinceramente dopo un pò più di una mezz'oretta avevo finito utilizzando variabili globali utilizzate all'handler del segnale.
Ma alla fine non sono riuscito a trovare un altro modo.

Ora che l'ho capito, mi sto mangiando le mani..

Ma penso che comunque sia soggettivo, io ho fatto molti esercizi degli anni precedenti e mi erano venuti..

Ci si rivede a settembre.

Si prega Accedi o Crea un account a partecipare alla conversazione.

  • COM_EASYSOCIAL_GUEST_NAME
  • Avatar di COM_EASYSOCIAL_GUEST_NAME
  • Visitatori
  • Visitatori
17 Anni 6 Mesi fa #72309 da COM_EASYSOCIAL_GUEST_NAME
Risposta da COM_EASYSOCIAL_GUEST_NAME al topic [LA] Linux avanzato 2008

Non voglio essere polemico, o forse sì...

Qualcuno mi spiega perché a volte dà ste boiate qua e altre dà cose allucinanti che dopo tre quarti d'ora ancora non si è capito cosa cercasse? Ha un senso tutto ciò?

Parlo solamente delle prove di laboratorio in questo momento.


Guarda, io non l'ho passata..

Sinceramente dopo un pò più di una mezz'oretta avevo finito utilizzando variabili globali utilizzate all'handler del segnale.
Ma alla fine non sono riuscito a trovare un altro modo.

Ora che l'ho capito, mi sto mangiando le mani..

Ma penso che comunque sia soggettivo, io ho fatto molti esercizi degli anni precedenti e mi erano venuti..

Ci si rivede a settembre.


Potresti dirmi qual'è l'altro modo?O qualcuno di voi me lo può dire?voglio mangiarmi le mani anche io..

Si prega Accedi o Crea un account a partecipare alla conversazione.

  • COM_EASYSOCIAL_GUEST_NAME
  • Avatar di COM_EASYSOCIAL_GUEST_NAME
  • Visitatori
  • Visitatori
17 Anni 6 Mesi fa #72318 da COM_EASYSOCIAL_GUEST_NAME
Risposta da COM_EASYSOCIAL_GUEST_NAME al topic [LA] Linux avanzato 2008
Vi posto la prova di programmazione di oggi pomeriggio.

PROG2: PROVA DI PROGRAMMAZIONE DEL 12/5/2008

Il processo padre crea ncloni (0 < ncloni < 27) cloni che scrivono nello stesso file gruppi di nbyte byte.
Ognuno di questi processi esegue un ciclo senza fine e fa uso di una sleep() con valori random compresi tra 1 e 3 sec tra una scrittura e l'altra. Finche' un clone non ha finito di scrivere il suo gruppo di nbyte byte, gli altri cloni non possono scrivere nel file. Il processo padre aspetta 1O secondi, elimina gli ncloni cloni e termina.
Ogni clone usa un carattere diverso: il primo scrive gruppi di nbyte 'a', il secondo gruppi di nbyte 'b', ecc.
Potete supporre che ncloni non sia superiore a NCLONIMAX = 26 (l'alfabeto consta di 26 lettere).
La riga di comando include il nome del file, il numero ncloni di cloni da creare ed il numero nbyte di byte che ogni clone deve scrivere. Esempio: prova pippo 8 10000 significa che gli 8 cloni scrivono nel file pippo gruppi di 10000 byte. Il primo scrive 10000 'a', il secondo 10000 'b', ecc.


La parte "complicata" era quella relativa alla sincronizzazione, io gli ho implementato una lock()/unlock() simile a quella scritta nelle sue dispense e gli è piaciuta molto.

Non voleva che il padre facesse da scheduler (che coordinasse tramite segnali l'ordine di esecuzione dei figli) voleva un programma completamente asincrono.

Per testare il funzionamento ci ha suggerito di provare con nbyte>4kb e di verificare se, escludendo il meccanismo di sincronizzazione, il file generato avesse seguenze di lettere inferiori a nbyte.

Questo ' tutto.

In bocca al lupo a chi deve farlo domani :wink:

Si prega Accedi o Crea un account a partecipare alla conversazione.

  • COM_EASYSOCIAL_GUEST_NAME
  • Avatar di COM_EASYSOCIAL_GUEST_NAME
  • Visitatori
  • Visitatori
17 Anni 6 Mesi fa #72323 da COM_EASYSOCIAL_GUEST_NAME
Risposta da COM_EASYSOCIAL_GUEST_NAME al topic [LA] Linux avanzato 2008
Io ho boicottato la lock e unlock e ho gestito un rozzo e primitivo sistema di sincronizzazione...

Inizialmente l'ho gestito con i segnali...ma lui mi ha rosicato dicendo che non voleva un clone "supervisore"...Non era poi così difficile,solo un pò impicciato se non si conosce bene la clone...

Buona fortuna ai prossimi di domani....

Si prega Accedi o Crea un account a partecipare alla conversazione.