Topic: Memoria virtuale e algoritmi di sostituzione delle pagine FIFO/LRU  (Letto 3287 volte)

0 Utenti e 1 Visitatore stanno visualizzando questo topic.

Offline Zirko88

  • python unicellularis
  • *
  • Post: 9
  • Punti reputazione: 0
    • Mostra profilo
Ciao a tutti,
scrivo sul forum per cercare una mano d'aiuto per questo progetto universitario che devo realizzare. Purtroppo le lezioni su python sono state poche e sulle cosucce base, siamo stati liquidati dalla prof con "imparate python da soli, su internet si trovano una marea di guide"... soldi spesi bene le tassse universitarie eh? Comunque tornando a noi questo è il progetto:





Bene conosco le basi del linguaggio ma non ho idea da dove iniziare per fare questo progetto, ho provato a cercare su internet ma non riesco a raccapezzarmi in nulla... qualcuno può aiutarmi? Magari dare dei suggerimenti? Degli input?  ;(

Offline riko

  • python deus
  • *
  • moderatore
  • Post: 7.453
  • Punti reputazione: 12
    • Mostra profilo
    • RiK0 Tech Temple
Re: Memoria virtuale e algoritmi di sostituzione delle pagine FIFO/LRU
« Risposta #1 il: Giugno 12, 2014, 20:36 »
C'e' un qualche linguaggio in cui sapresti affrontare il problema?
Possiamo iniziare a ragionare in termini di quello.

[p.s. grazie per l'immagine copia e incollata, e' molto piu' web 3.0 invece del semplice testo]

Offline riko

  • python deus
  • *
  • moderatore
  • Post: 7.453
  • Punti reputazione: 12
    • Mostra profilo
    • RiK0 Tech Temple
Re: Memoria virtuale e algoritmi di sostituzione delle pagine FIFO/LRU
« Risposta #2 il: Giugno 12, 2014, 20:49 »
Giusto per quelli che ancora leggono il testo come testo (oltre che eventuali utenti non vedenti, che, guarda caso, non e' che siano molto contenti delle immagini).

1 Introduzione
La memoria virtuale è una parte della gerarchia di memoria composta dalla memoria e da un disco rigido, fi kernel utilizza la memoria virtuale per ridurre la richiesta di memoria da mettere a disposizione di un processo al fine di poter gestire un maggior numero di processi concorrentemente e poter gestire processi il cui spazio di indirizzamento è maggiore delle dimensioni della memoria a disposizione. La memoria virtuale è implementata attraverso il modello di allocazione non contigua e comprende sia componenti hardware che una componente software (gestore della memoria virtuale). Il gestore della memoria virtuale assicura buone prestazioni della memoria virtuale allocando un'adeguata quantità di memoria a un processo utilizzando un algoritmo di sostituzione per rimuovere una porzione che non è stata referenziata di recente.

2 Obiettivo

L'obiettivo è l'implementazione di un applicativo che analizzi gli algoritmi di so- stituzione delle pagine FIFO (First-in, First-out) e LRU (Least Recently Used). Supponiamo vi siano n processi e che la memoria venga assegnata in maniera pro- porzionale alla dimensione del processo. 1 seguenti parametri devono essere inseriti da linea di comando:
• Numero massimo di trame
• Numero minimo di frame pei processo
• Numero di processi
• Dimensione dei processo
• Lunghezza della successione dei riferimenti

L'applicativo deve simulare i due algoritmi di sostituzione al variare del numero dei frame, supponendo che l'allocazione dei fraine sia globale. La gestione dei processi nella coda è scelta liberamente dal candidato.
Il candidato dovrà studiale i page fault in base al numero dei fraine, motivando i risultati ottenuti.

Offline Zirko88

  • python unicellularis
  • *
  • Post: 9
  • Punti reputazione: 0
    • Mostra profilo
Re: Memoria virtuale e algoritmi di sostituzione delle pagine FIFO/LRU
« Risposta #3 il: Giugno 13, 2014, 09:02 »
Saprei implementare gli algoritmi... ma solo dopo aver capito come creare il numero di processi inserito in input, ripartirlo in pagine, assegnarlo ai frame in cui divedere la memoria...

Offline riko

  • python deus
  • *
  • moderatore
  • Post: 7.453
  • Punti reputazione: 12
    • Mostra profilo
    • RiK0 Tech Temple
Re: Memoria virtuale e algoritmi di sostituzione delle pagine FIFO/LRU
« Risposta #4 il: Giugno 13, 2014, 10:31 »
Saprei implementare gli algoritmi... ma solo dopo aver capito come creare il numero di processi inserito in input, ripartirlo in pagine, assegnarlo ai frame in cui divedere la memoria...

Scusa, e quale sarebbe il problema in tutto cio'? Mi sembra ovvio che non e' un problema "di python", ma di "capire l'esercizio".
A naso sto coso e' in effetti un simulatore, non si parla di processi veri. Ma a questa domanda puo' rispondere solo chi ti ha assegnato l'esercizio.

Offline Zirko88

  • python unicellularis
  • *
  • Post: 9
  • Punti reputazione: 0
    • Mostra profilo
Re: Memoria virtuale e algoritmi di sostituzione delle pagine FIFO/LRU
« Risposta #5 il: Giugno 16, 2014, 18:38 »
Saprei implementare gli algoritmi... ma solo dopo aver capito come creare il numero di processi inserito in input, ripartirlo in pagine, assegnarlo ai frame in cui divedere la memoria...

Scusa, e quale sarebbe il problema in tutto cio'? Mi sembra ovvio che non e' un problema "di python", ma di "capire l'esercizio".
A naso sto coso e' in effetti un simulatore, non si parla di processi veri. Ma a questa domanda puo' rispondere solo chi ti ha assegnato l'esercizio.

Grazie in effetti non avevo capito che dovevo simulare, poi la prof mi ha detto esattamente questo che mi hai detto tu, ho fatto una classe per il processo con id e dimensione, quale struttura dati mi consigliate di utilizzare per simulare la memoria?

Offline GlennHK

  • python sapiens sapiens
  • ******
  • Post: 1.658
  • Punti reputazione: 1
    • Mostra profilo
    • La Tana di GlennHK
Re: Memoria virtuale e algoritmi di sostituzione delle pagine FIFO/LRU
« Risposta #6 il: Giugno 16, 2014, 20:15 »
Saprei implementare gli algoritmi... ma solo dopo aver capito come creare il numero di processi inserito in input, ripartirlo in pagine, assegnarlo ai frame in cui divedere la memoria...

Scusa, e quale sarebbe il problema in tutto cio'? Mi sembra ovvio che non e' un problema "di python", ma di "capire l'esercizio".
A naso sto coso e' in effetti un simulatore, non si parla di processi veri. Ma a questa domanda puo' rispondere solo chi ti ha assegnato l'esercizio.

Grazie in effetti non avevo capito che dovevo simulare, poi la prof mi ha detto esattamente questo che mi hai detto tu, ho fatto una classe per il processo con id e dimensione, quale struttura dati mi consigliate di utilizzare per simulare la memoria?

Dipende dall'algoritmo, tipicamente si usa un'array di pagine.

Offline riko

  • python deus
  • *
  • moderatore
  • Post: 7.453
  • Punti reputazione: 12
    • Mostra profilo
    • RiK0 Tech Temple
Re: Memoria virtuale e algoritmi di sostituzione delle pagine FIFO/LRU
« Risposta #7 il: Giugno 16, 2014, 22:03 »
ho fatto una classe per il processo con id e dimensione, quale struttura dati mi consigliate di utilizzare per simulare la memoria?

Prova a descrivere come immagini che funzioni la memoria. Verra' molto da se.
Poi guarda l'algoritmo e sara' piuttosto chiaro cosa usare: quello che ti da un costo ottimo.

Offline Zirko88

  • python unicellularis
  • *
  • Post: 9
  • Punti reputazione: 0
    • Mostra profilo
Re: Memoria virtuale e algoritmi di sostituzione delle pagine FIFO/LRU
« Risposta #8 il: Giugno 19, 2014, 10:00 »
Quale struttura dati mi consigliate di utilizzare per simulare la memoria? Una lista?

Offline GlennHK

  • python sapiens sapiens
  • ******
  • Post: 1.658
  • Punti reputazione: 1
    • Mostra profilo
    • La Tana di GlennHK
Re: Memoria virtuale e algoritmi di sostituzione delle pagine FIFO/LRU
« Risposta #9 il: Giugno 19, 2014, 10:24 »
Ti ho già risposto.

Offline andreacasanova

  • python unicellularis
  • *
  • Post: 2
  • Punti reputazione: 0
    • Mostra profilo
Re:Memoria virtuale e algoritmi di sostituzione delle pagine FIFO/LRU
« Risposta #10 il: Maggio 08, 2017, 18:41 »
Ciao  a tutti amici  :)
ho da sviluppare lo stesso progetto, mi chiedevo se potete dirmi come avete programmato le varie fasi?
Grazie tantee  ;)

Offline Markon

  • python sapiens sapiens
  • *
  • moderatore
  • Post: 4.104
  • Punti reputazione: 5
    • Mostra profilo
    • Neolithic
Re:Memoria virtuale e algoritmi di sostituzione delle pagine FIFO/LRU
« Risposta #11 il: Maggio 14, 2017, 10:18 »
Ciao,

Forse hai piu' successo se spieghi prima cosa hai fatto tu, magari gli altri saranno piu' propensi ad aiutarti :)

Offline riko

  • python deus
  • *
  • moderatore
  • Post: 7.453
  • Punti reputazione: 12
    • Mostra profilo
    • RiK0 Tech Temple
Re:Memoria virtuale e algoritmi di sostituzione delle pagine FIFO/LRU
« Risposta #12 il: Maggio 15, 2017, 01:16 »
Ciao,

Forse hai piu' successo se spieghi prima cosa hai fatto tu, magari gli altri saranno piu' propensi ad aiutarti :)

Ma poi e' chiaro a tutti che questo non e' il forum del supporto tecnico dell'unical o quale era piu'?

Offline andreacasanova

  • python unicellularis
  • *
  • Post: 2
  • Punti reputazione: 0
    • Mostra profilo
Re:Memoria virtuale e algoritmi di sostituzione delle pagine FIFO/LRU
« Risposta #13 il: Maggio 18, 2017, 16:38 »
Allora ho creato gli algortmi FIFO e LRU.
Purtroppo non so come impostare l'algortimo LRU con bit di riferimento. Qualcuno saprebbe darmi una mano? :) :)