Torna indietro   Hardware Upgrade Forum > Software > Programmazione

HONOR Magic 8 Pro: ecco il primo TOP del 2026! La recensione
HONOR Magic 8 Pro: ecco il primo TOP del 2026! La recensione
HONOR ha finalmente lanciato il suo nuovo flagship: Magic 8 Pro. Lo abbiamo provato a fondo in queste settimane e ve lo raccontiamo nella nostra recensione completa. HONOR rimane fedele alle linee della versione precedente, aggiungendo però un nuovo tasto dedicato all'AI. Ma è al suo interno che c'è la vera rivoluzione grazie al nuovo Snapdragon 8 Elite Gen 5 e alla nuova MagicOS 10
Insta360 Link 2 Pro e 2C Pro: le webcam 4K che ti seguono, anche con gimbal integrata
Insta360 Link 2 Pro e 2C Pro: le webcam 4K che ti seguono, anche con gimbal integrata
Le webcam Insta360 Link 2 Pro e Link 2C Pro sono una proposta di fascia alta per chi cerca qualità 4K e tracciamento automatico del soggetto senza ricorrere a configurazioni complesse. Entrambi i modelli condividono sensore, ottiche e funzionalità audio avanzate, differenziandosi per il sistema di tracciamento: gimbal a due assi sul modello Link 2 Pro, soluzione digitale sul 2C Pro
Motorola edge 70: lo smartphone ultrasottile che non rinuncia a batteria e concretezza
Motorola edge 70: lo smartphone ultrasottile che non rinuncia a batteria e concretezza
Motorola edge 70 porta il concetto di smartphone ultrasottile su un terreno più concreto e accessibile: abbina uno spessore sotto i 6 mm a una batteria di capacità relativamente elevata, un display pOLED da 6,7 pollici e un comparto fotografico triplo da 50 MP. Non punta ai record di potenza, ma si configura come alternativa più pragmatica rispetto ai modelli sottili più costosi di Samsung e Apple
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 14-08-2004, 12:12   #1
mitsuagi
Senior Member
 
L'Avatar di mitsuagi
 
Iscritto dal: Jul 2002
Città: MI
Messaggi: 684
Condividere risorse IPC tra programmi

Ciao a tutti.

Dunque, mi sono arenato in un programma che devo presentare poi a settembre.
Il testo dell'esercizio è il seguente:

Scrivere un programma produttore ed un programma consumatore, entrambi ricevono come argomento uno stesso valore intero. I programmi devono usare le risorse IPC create dal programma initIPC utilizzando i due set di semafori per sincronizzasi e la memoria condivisa per comunicare.

Un’operazione di produzione consiste nello scrivere nell’area di memoria condivisa il proprio identificativo di produttore (il numero ricevuto come argomento) ed un numero casuale generato con la formula: val=(rand() % 100)+(id-1)*100; dove id rappresenta il proprio identificativo, in questo modo il produttore con identificativo 1 produrrà solo valori compresi tra 0 e 99, quello con identificativo 1 solo valori compresi tra 100 e 199, etc. (la funzione srand(time(NULL)); può essere usata per inizializzare il generatore).

Il produttore esegue 5 operazioni di produzione e poi termina.

Un’operazione di consumo consiste nel leggere il contenuto dell’area di memoria condivisa, ma il consumo avviene solo se l’identificativo di produzione coincide con il proprio identificativo di consumatore (il numero ricevuto come argomento). Ad esempio se l’area di memoria condivisa contenesse 3 e 250 ed il consumatore avesse identificativo 1, esso farebbe un tentativo di consumo ma, confrontando il proprio identificativo con il valore 3 capirebbe che il valore 250 non era destinato a lui, perciò non deve sbloccare i produttori ( come avverrebbe in una “normale” operazione di consumo), ma deve invece sbloccare i consumatori.

Il produttore esegue 5 operazioni di consumo e poi termina. Ogni numero consumato deve essere memorizzato in un file di nome valX, dove X corrisponde al proprio identificativo di consumatore (usare sprintf(nomefile,“val%d”,x); per generare il nome del file).

N.B.: Ogni coppia produttore-onsumatore devericevere gli stessi valori come argomento!!


Il problema è questo:
da quanto ho capito bisognerebbe appoggiarsi a 3 programmi separati (initlPC, produttore e consumatore).
Non riesco a capire però come si possano condividere le risorse ICP tra i suddetti 3 programmi, poichè l'ID dei due set di semafori e della memoria condivisa li posso avere/conoscere solo col programma che crea le risorse stesse (in questo caso initlPC), quindi non saprei come far sapere agli altri due programmi (produttore e consumatore) gli ID corretti, in modo che essi sfruttino le risorse ICP create.

Grazie in anticipo per l'aiuto!
mitsuagi è offline   Rispondi citando il messaggio o parte di esso
Old 14-08-2004, 17:23   #2
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
con una named pipe ad esempio...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 15-08-2004, 10:06   #3
mitsuagi
Senior Member
 
L'Avatar di mitsuagi
 
Iscritto dal: Jul 2002
Città: MI
Messaggi: 684
Quote:
Originariamente inviato da cionci
con una named pipe ad esempio...
Si, ma il problema mi chiede di creare solo 2 set di semafori e una shared memory...
mitsuagi è offline   Rispondi citando il messaggio o parte di esso
Old 15-08-2004, 22:27   #4
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Allora crea la shared memory da un processo padre... Il processo padre creerà produttore e consumatore tramite fork ed exec...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 16-08-2004, 10:32   #5
mitsuagi
Senior Member
 
L'Avatar di mitsuagi
 
Iscritto dal: Jul 2002
Città: MI
Messaggi: 684
Quote:
Originariamente inviato da cionci
Allora crea la shared memory da un processo padre... Il processo padre creerà produttore e consumatore tramite fork ed exec...
OK grazie, tenterò con questo modo.
Al limite pensavo anche di appoggiarmi ad un file temporaneo, creato da initlPC, nel quale posso mettere gli ID che servono a "produttore" e "consumatore".
Questo file poi verrà rimosso una volta terminati i 5 cicli.
mitsuagi è offline   Rispondi citando il messaggio o parte di esso
Old 16-08-2004, 14:49   #6
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Fai in modo che initIPC lanci anche produttore e consumatore....
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 16-08-2004, 20:39   #7
mitsuagi
Senior Member
 
L'Avatar di mitsuagi
 
Iscritto dal: Jul 2002
Città: MI
Messaggi: 684
Quote:
Originariamente inviato da cionci
Fai in modo che initIPC lanci anche produttore e consumatore....
Risolto appoggiandomi ad un file temp

Purtroppo non potevo lanciare direttamente produttore e consumatore da initlPC poichè questo programma è indipendente (fa parte di un altro esercizio).
mitsuagi è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


HONOR Magic 8 Pro: ecco il primo TOP del 2026! La recensione HONOR Magic 8 Pro: ecco il primo TOP del 2026! L...
Insta360 Link 2 Pro e 2C Pro: le webcam 4K che ti seguono, anche con gimbal integrata Insta360 Link 2 Pro e 2C Pro: le webcam 4K che t...
Motorola edge 70: lo smartphone ultrasottile che non rinuncia a batteria e concretezza Motorola edge 70: lo smartphone ultrasottile che...
Display, mini PC, periferiche e networking: le novità ASUS al CES 2026 Display, mini PC, periferiche e networking: le n...
Le novità ASUS per il 2026 nel settore dei PC desktop Le novità ASUS per il 2026 nel settore de...
Amazon scatenata: robot aspirapolvere, s...
007 First Light, requisiti sbagliati: IO...
Il secondo leasing sociale francese ragg...
Anche Chrome diventerà un browser...
Huawei FreeClip 2 in arrivo in Italia: c...
Honda promette la roulotte del futuro, m...
Rincari non solo per gli utenti: Intel e...
Gemini può usare i tuoi dati priv...
OPPO lancia in Italia la serie Reno15: n...
Stazione Spaziale Internazionale: rientr...
Forza Horizon 6: spunta la possibile dat...
Oral-B iO: sconti pazzeschi su spazzolin...
Intel Core Ultra 200 Plus: l'azienda pro...
Thinking Machines: la startup di Mira Mu...
Coalizione di gruppi di tutela chiede a ...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 14:25.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v