LINUX AVANZATO 2007
- COM_EASYSOCIAL_GUEST_NAME
-
- Visitatori
-
18 Anni 7 Mesi fa #44457
da COM_EASYSOCIAL_GUEST_NAME
Risposta da COM_EASYSOCIAL_GUEST_NAME al topic LINUX AVANZATO 2007
no quello mmap è commentato
Si prega Accedi o Crea un account a partecipare alla conversazione.
- COM_EASYSOCIAL_GUEST_NAME
-
- Visitatori
-
18 Anni 7 Mesi fa #44477
da COM_EASYSOCIAL_GUEST_NAME
Risposta da COM_EASYSOCIAL_GUEST_NAME al topic LINUX AVANZATO 2007
cortot ma le mappe di Karnaugh come sono trutturate: sulle righe abbiamo q2/q1 e sulle colonne qo/x? Grazie...Ripetiamo il procedimento per ogni stato Q2Q1Q0 nella tabella di transizione di stato.
Alla fine otteniamo 6 mappe di Karnaugh relative a S2, R2, S1, R1, S0,R0. Le variabili naturalmente sono Q2 Q1 Q0 e x.
Dovremmo riuscire, quindi, ad ottenere dalle mappe le espressioni per gli input dei flip-flop. Qualcosa del tipo S2 = xQ2+x'Q1Q0' etc.
Per quanto riguarda l'output, questo è codificato nello stato. Quindi (z2,z1,z0) = (Q2,Q1,Q0)
Ora basta disegnare.
P.S. Qualcuno ha in mente una strategia più efficente? Mi rendo conto che la cosa è un po' lunga. Forse fin troppo...
E naturalmente potrei aver scritto cavolate...
Fatemi sapere.
Si prega Accedi o Crea un account a partecipare alla conversazione.
- COM_EASYSOCIAL_GUEST_NAME
-
Autore della discussione
- Visitatori
-
18 Anni 7 Mesi fa #44478
da COM_EASYSOCIAL_GUEST_NAME
Ciao ragazzi,
ho visto la prova scorsa di laboratorio e onestamente non mi è sembrata così impossibile...il problema sono sempre quei processi paralleli...
Comunque sentite la mia idea...
Mi carico in file in memoria con l'mmap(),in modo da avere un bel array di caratteri...
poi faccio partire due for,uno dall'inizio (primo figlio),uno dalla fine(secondo figlio) dell'array...quando i due coincideranno(basta vedere indice del for) finiranno la loro esecuzione contemporaneamente...
Non so se può essere una soluzione giusta,non è che sono un fenomeno del C...voi che ne dite?
Nash dice che Bovet non vuole che si carichi un file totalmente in memoria...Però onestamente,l'mmap() mi pare sia il metodo più rapido per farlo...
Risposta da COM_EASYSOCIAL_GUEST_NAME al topic LINUX AVANZATO 2007
Ho dato un'occhiata giusto al volo... non so a cosa serve quella mmap() sul file che poi non mi pare usi più in quell'implementazione, ma in generale lui non vuole assolutamente che mappi un intero file in memoria.
Il resto lo guardo dopo, che sono di corsa.
Ciao ragazzi,
ho visto la prova scorsa di laboratorio e onestamente non mi è sembrata così impossibile...il problema sono sempre quei processi paralleli...
Comunque sentite la mia idea...
Mi carico in file in memoria con l'mmap(),in modo da avere un bel array di caratteri...
poi faccio partire due for,uno dall'inizio (primo figlio),uno dalla fine(secondo figlio) dell'array...quando i due coincideranno(basta vedere indice del for) finiranno la loro esecuzione contemporaneamente...
Non so se può essere una soluzione giusta,non è che sono un fenomeno del C...voi che ne dite?
Nash dice che Bovet non vuole che si carichi un file totalmente in memoria...Però onestamente,l'mmap() mi pare sia il metodo più rapido per farlo...
Si prega Accedi o Crea un account a partecipare alla conversazione.
- COM_EASYSOCIAL_GUEST_NAME
-
- Visitatori
-
18 Anni 7 Mesi fa #44482
da COM_EASYSOCIAL_GUEST_NAME
La chiamata corretta della waitpid nel tuo caso dovrebbe essere:
pid = waitpid(-1, NULL, __WCLONE);
se gli passi 0 come ultimo parametro non funziona con la clone.
Risposta da COM_EASYSOCIAL_GUEST_NAME al topic LINUX AVANZATO 2007
Il probelma è che la waitpid dice che non ci sono figli da attendere...
www.skynetweb.it/%5C/public%5Cprogetti%5Cclone_es2.c
La chiamata corretta della waitpid nel tuo caso dovrebbe essere:
pid = waitpid(-1, NULL, __WCLONE);
se gli passi 0 come ultimo parametro non funziona con la clone.
Si prega Accedi o Crea un account a partecipare alla conversazione.
- COM_EASYSOCIAL_GUEST_NAME
-
- Visitatori
-
18 Anni 7 Mesi fa #44494
da COM_EASYSOCIAL_GUEST_NAME
Ti confermo che in sede di esame Bovet ha specificato di non volere la funzione mmap, bisogna implementarlo con le funzioni read/write.
Risposta da COM_EASYSOCIAL_GUEST_NAME al topic LINUX AVANZATO 2007
Nash dice che Bovet non vuole che si carichi un file totalmente in memoria...Però onestamente,l'mmap() mi pare sia il metodo più rapido per farlo...
Ti confermo che in sede di esame Bovet ha specificato di non volere la funzione mmap, bisogna implementarlo con le funzioni read/write.
Si prega Accedi o Crea un account a partecipare alla conversazione.
- COM_EASYSOCIAL_GUEST_NAME
-
- Visitatori
-
18 Anni 7 Mesi fa #44500
da COM_EASYSOCIAL_GUEST_NAME
Non è un suggerimento eh... non ti accetta proprio la soluzione se usi mmap.
Risposta da COM_EASYSOCIAL_GUEST_NAME al topic LINUX AVANZATO 2007
Nash dice che Bovet non vuole che si carichi un file totalmente in memoria...Però onestamente,l'mmap() mi pare sia il metodo più rapido per farlo...
Ti confermo che in sede di esame Bovet ha specificato di non volere la funzione mmap, bisogna implementarlo con le funzioni read/write.
Non è un suggerimento eh... non ti accetta proprio la soluzione se usi mmap.
Si prega Accedi o Crea un account a partecipare alla conversazione.