Skip to content
Snippets Groups Projects
Commit 80c3770d authored by Gianluca's avatar Gianluca
Browse files

sta cosa fa ridere

parent 6ec47e61
No related branches found
No related tags found
No related merge requests found
No preview for this file type
......@@ -50,9 +50,6 @@ int main(int argc, char *argv[]) {
for (int i = 0; i < iterations; ++i) {
printf("Inserisci un valore: ");
scanf("%s", buffer);
buffer[strlen(buffer)] = '\0';
printf(">>>DEBUG\n%s\n", buffer);
sendto(simpleSocket, buffer, strlen(buffer), 0,
(struct sockaddr *)&clientAddr, sizeof(clientAddr));
......
No preview for this file type
......@@ -79,14 +79,10 @@ int main(int argc, char *argv[]) {
recvfrom(simpleSocket, buffer, MAXSIZEBUFFER, 0,
(struct sockaddr *)&clientAddr, &clientSize);
buffer[strlen(buffer)] = '\0';
printf(">>>DEBUG\n%s\n", buffer);
int val = atoi(buffer);
if (isFirstIteration || val > max) {
val = max;
max = val;
isFirstIteration = 0;
}
......
## Esercizi Input/Output
### Fonte: Esercizi Svolti In Aula
**Esercizio 5:**
Un processo richiede l'utilizzo della CPU ogni $0.5 sec$. Si supponga che la CPU risponda
immediatamente alla richiesta e impieghi $100 msec$ per processarla. Inoltre, sia $P W$ il consumo elettrico della CPU e si supponga che il consumo elettrico della CPU in stato idle sia nullo (cioè, il consumo elettrico statico è zero).
Rispondere alle seguenti domande:
1. Se il voltaggio $V$ della CPU è ridotto a $V/n$, qual è il valore ottimale di $n$?
2. Qual è il risparmio energetico che si ottiene in $1 sec$, riducendo il voltaggio della CPU come al punto (1) rispetto a non ridurlo? Si assuma che il processo invii la prima richiesta al tempo 0
**Risposta:**
_Punto 1:_
Quale valore di $n$ tale che la CPU riesca a finire di eseguire il processo in $0.5sec$, ovvero $500msec$, evitando l'idle di $400msec$ (ottenuto facendo $500msec-100msec$)?
Dobbiamo allungare il tempo totale a $500msec$, togliendo quell'idle di 400msec.
$$
n_{sol} = floor(\frac{T_{tot}}{T_{exec}}) = floor(\frac{500}{100}) = 5
$$
Ricordati che $n_{sol}$ deve essere intero.
_Punto 2:_
Supponendo che il processo invii la prima richiesta al tempo 0, in un secondo la CPU riceve 3 richieste (la prima al tempo 0, la seconda al tempo 0.5 e la terza al tempo 1); la terza richiesta però non è da considerare ai fini dell'esercizio perché verrebbe processata oltre il tempo di riferimento di 1 sec definito nel punto (2). Quindi, dato che in 1 sec la CPU processa 2 richieste inviate dal processo, occorre moltiplicare per 2 il consumo elettrico.
Il consumo energetico $E1$ con la CPU a pieno regime in $1sec$ è:
$$
E1 = ()
$$
### Fonte: Esercizi Extra
**Esercizio 1.8:**
......@@ -257,3 +294,23 @@ Sostiuendo i valori ed unendo le formule otteniamo:
$$
T_{R,avg} =\frac{1}{2} \times \frac{60sec}{7200RPM} \times 1000msec = 4.17msec
$$
Per il $T_{T,avg}$ abbiamo:
$$
T_{T,avg} = \frac{1}{R} \times \frac{1}{N_{S_,avg}} \times 60sec \times 1000msec/sec
$$
$$
T_{T,avg} = \frac{60sec}{7200RPM} \times \frac{1}{400} \times 1000msec \approx 0.02
$$
Per il $T_{T,avg}$ abbiamo:
$$
T_{A,avg} = T_{S,avg} + T_{R,avg} + T_{T,avg}
$$
$$
T_{A,avg} = 9msec+4.17msec+0.02msec = 13.19msec
$$
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment