Riferimenti per il file vmbo/src/proc.c

#include "proc.h"
#include "mmu.h"
#include "io_device.h"
#include <string.h>
#include <math.h>

Vai al codice sorgente di questo file.

Definizioni

#define LOOP_ITERATIONS   8
 Numero di cicli.
#define SIZE_OF_ITEM   10
 Dimensione dell'elemento del vettore.
#define DSS(p)   (((proc_table[p]))->page_count*mmu.page_size)
 Dimensione spazio indirizzamento virtuale.
#define MEM_ACCESS_PROBABILITY(n)   (proc_table[n]->percentile)
 Probabilita di effettuare un accesso in memoria.
#define WAIT_FOR_IO_TO_COMPLETE(n)
 Attesa per il completamente I/O.

Funzioni

static int simulate_loop (int procnum)
 Simulazione d'accesso ad un vettore di elementi.
static int random_access (int procnum)
 Effettua un accesso alla memoria con indirizzo casuale.
static void * thread_proc (int procnum)
 Thread per la simulazione di un processo.
void proc_init (int num, int percentile, int only_read, int max_memory, char *pl, int lp)
 Funzione per la creazione dei thread di tipo "PROCESSO".
void process_info (int procnum)
 Stampa lo stato delle pagine di un processo.

Variabili

uint16_treference_string
 Reference string.
int reference_count
 Numero di elementi nella reference string.
int temporal_locality = 30
 Localita temporale.
static int only_read_allowed
 Tipo di accesso alla memoria (R o RW).
proc_t ** proc_table
 Vettore dei processi attivi.
int max_proc
 Numero di processi concorrenti.


Descrizione dettagliata

Autore:
Ferruccio Vitale (unixo@devzero.it)
Data:
21/04/2009
Nota:
Universita' degli studi di Urbino "Carlo Bo"
Sistemi Operativi
Professore Emanuele Lattanzi
Anno Accademico 2008 - 2009

Definizione nel file proc.c.


Documentazione delle definizioni

#define DSS (  )     (((proc_table[p]))->page_count*mmu.page_size)

Dimensione spazio indirizzamento virtuale.

Restituisce la dimensione dello spazio d'indirizzamento virtuale del processo, dato dal prodotto del numero di pagine allocate per la dimensione della singola.

Definizione alla linea 54 del file proc.c.

#define LOOP_ITERATIONS   8

Numero di cicli.

Numero di elementi del vettore che simulate_loop deve scorrere quando viene simulata la localita' spaziale.

Vedi anche:
SIZE_OF_ITEM

Definizione alla linea 26 del file proc.c.

#define MEM_ACCESS_PROBABILITY (  )     (proc_table[n]->percentile)

Probabilita di effettuare un accesso in memoria.

Valore numerico espresso, in percentuale, che determina la probabilita per un processo di effettuare una lettura in memoria piuttosto che dal dispositivo di I/O.

Definizione alla linea 62 del file proc.c.

#define SIZE_OF_ITEM   10

Dimensione dell'elemento del vettore.

Vedi anche:
LOOP_ITERATIONS

Definizione alla linea 32 del file proc.c.

#define WAIT_FOR_IO_TO_COMPLETE (  ) 

Valore:

do { \
    pthread_mutex_lock(&proc_table[n]->io_lock);\
    pthread_cond_wait(&proc_table[n]->io_cond, &proc_table[n]->io_lock);\
    pthread_mutex_unlock(&proc_table[n]->io_lock); \
    } while (0)
Attesa per il completamente I/O.

Il processo deve restare in attesa che il dispositivo di I/O espleti la richiesta effettuata.

Definizione alla linea 69 del file proc.c.


Documentazione delle variabili

int max_proc

Numero di processi concorrenti.

La variabile max_proc, per default, viene inizializzato al valore 5, ma e tuttavia modificabile usando il paramentro -p.

Definizione alla linea 102 del file proc.c.

static int only_read_allowed [static]

Tipo di accesso alla memoria (R o RW).

Determina se i processi possono effettuare accessi alla memoria in lettura o anche in scrittura: se vale uno (1), un processo puo soltanto leggere la memoria.

Definizione alla linea 87 del file proc.c.

Vettore dei processi attivi.

Viene allocato dalla funzione proc_init e deallocato nel main al termine dell'esecuzione; il numero massimo di elementi e dato dal valore di max_proc.

Definizione alla linea 95 del file proc.c.

Numero di elementi nella reference string.

Vedi anche:
reference_string

Definizione alla linea 45 del file proc.c.

Reference string.

Vettore di pagine alle quali il processo dovra' accedere per misurare il numero di page fault generati.

Definizione alla linea 39 del file proc.c.

Localita temporale.

Percentuale di probabilita temporale di accedere allo stesso dato

Definizione alla linea 79 del file proc.c.

Università degli studi di Urbino "Carlo Bo"