Pages: 1 [2]   Go Down
Print
Author Topic: Esercizio (stralcio di compito)  (Read 6445 times)
0 Members e 1 Utente non registrato stanno visualizzando questa discussione.
StephCT
Apprendista Forumista
**
Offline Offline

Gender: Male
Posts: 417



« Reply #15 on: 28-05-2012, 11:20:01 »

il processo P3 alla fine riparte da print(x) direttamente, non dall'inizio... almeno così dovrebbe essere... ogni processo dovrebbe ripartire dopo l'ultima wait.
Logged

"Che la Forza sia con Te"
Il Capitano
Apprendista Forumista
**
Offline Offline

Posts: 409


« Reply #16 on: 28-05-2012, 13:29:10 »

il processo P3 alla fine riparte da print(x) direttamente, non dall'inizio... almeno così dovrebbe essere... ogni processo dovrebbe ripartire dopo l'ultima wait.

Esattamente.
Logged
milos224
Forumista
***
Offline Offline

Posts: 830


« Reply #17 on: 28-05-2012, 14:13:51 »

il processo P3 alla fine riparte da print(x) direttamente, non dall'inizio... almeno così dovrebbe essere... ogni processo dovrebbe ripartire dopo l'ultima wait.

Esattamente.
Perciò quando un processo ha finito tutti i suoi passaggi non si deve mai più prendere in considerazione no?
Logged
milos224
Forumista
***
Offline Offline

Posts: 830


« Reply #18 on: 28-05-2012, 23:08:00 »

il processo P3 alla fine riparte da print(x) direttamente, non dall'inizio... almeno così dovrebbe essere... ogni processo dovrebbe ripartire dopo l'ultima wait.

Esattamente.
Perciò quando un processo ha finito tutti i suoi passaggi non si deve mai più prendere in considerazione no?
Nessuno raga?
Logged
Andrea2990
Apprendista Forumista
**
Offline Offline

Gender: Male
Posts: 235



WWW
« Reply #19 on: 29-05-2012, 09:26:05 »

L'esercizio ha uno scopo, trovare l'output di P3. Una volta trovato l'output, non si deve fare più nulla. Ovviamente, dopo che un processo è stato eseguito per intero, esso termina, quindi non ha senso riprenderlo in considerazione. Come dice StephCT, inoltre, bisogna riprendere dal punto in cui ci si è fermati, non ricominciare da capo. Buono studio!
Logged
milos224
Forumista
***
Offline Offline

Posts: 830


« Reply #20 on: 29-05-2012, 09:28:15 »

L'esercizio ha uno scopo, trovare l'output di P3. Una volta trovato l'output, non si deve fare più nulla. Ovviamente, dopo che un processo è stato eseguito per intero, esso termina, quindi non ha senso riprenderlo in considerazione. Come dice StephCT, inoltre, bisogna riprendere dal punto in cui ci si è fermati, non ricominciare da capo. Buono studio!
Grazie mille!
Logged
Daréios89
Forumista Eroico
*****
Offline Offline

Gender: Male
Posts: 2.679


La musica è la forma d'arte suprema.


« Reply #21 on: 29-05-2012, 11:47:12 »

Le parentesi sono state inserite male.

I comandi vengono eseguiti (o letti) nell'ordine da sinistra a destra.

Se proprio si volesse includere le parentesi per evidenziare l'ordine, si dovrebbe sfruttare l'associatività a sinistra, ovvero:

(cat testo.txt 2> /dev/null && echo verde) || echo rosso

E così, se il file test.txt esiste vedresti "verde" dopo il contenuto del file, ma se non esistesse, vedresti "rosso".

Gli operatori && e || sono cortocircuitati, proprio come in C e in Java.

Scusa ma qui non dovrei leggere tutto?

Cioè siccome il file esiste allora la condizione dell' operatore AND è soddisfatta, ma in ogni caso avendo poi un OR non dovrei comunque leggere:

ciao
verde
rosso

?

Forse perchè viene eseguito se e solo se l'exit status del primo primo comando è diverso da 0.
« Last Edit: 29-05-2012, 11:51:36 by Daréios89 » Logged

"Utilizzare sempre de l'Hôpital.....è come andare a caccia di farfalle con un bazooka".
ɹǝǝuıƃuǝsɹǝʌǝɹ
Administrator
God of the Forum
*****
Offline Offline

Gender: Male
Posts: 4.475


Più grande è la lotta, e più è glorioso il trionfo


WWW
« Reply #22 on: 29-05-2012, 12:08:29 »

Cioè siccome il file esiste allora la condizione dell' operatore AND è soddisfatta, ma in ogni caso avendo poi un OR non dovrei comunque leggere:

ciao
verde
rosso

?
No.

(cat testo.txt 2> /dev/null && echo verde) || echo rosso
\___ vero: file esiste ___/
\_______ vero: echo restituisce 0 _______/
\________vero: indipendentemente da "echo rosso" _____/


Nell'ultima riga, non a caso dico "indipendentemente", cioè "senza che ci sia bisogno di eseguire" echo rosso.
Poiché \fs{3}\text{vero}\vee x=\text{vero},\;\forall x\in\{\text{vero}, \text{falso}\}.
E siccome questi operatori sono cortocircuitati, il "senza bisogno di eseguire" si traduce in "non sarà eseguito perché ininfluente".
Logged

La grande marcia della distruzione mentale proseguirà. Tutto verrà negato. Tutto diventerà un credo. È un atteggiamento ragionevole negare l'esistenza delle pietre sulla strada; sarà un dogma religioso affermarla. È una tesi razionale pensare di vivere tutti in un sogno; sarà un esempio di saggezza mistica affermare che siamo tutti svegli. Accenderemo fuochi per testimoniare che due più due fa quattro. Sguaineremo spade per dimostrare che le foglie sono verdi in estate. Non ci resterà quindi che difendere non solo le incredibili virtù e saggezze della vita umana, ma qualcosa di ancora più incredibile: questo immenso, impossibile universo che ci guarda dritto negli occhi. Combatteremo per i prodigi visibili come se fossero invisibili. Guarderemo l'erba e i cieli impossibili con uno strano coraggio. Saremo tra coloro che hanno visto eppure hanno creduto.

In tutto, amare e servire.

  
                            ن                           
I can deal with ads,
I can deal with buffer,
but when ads buffer
I suffer...

...nutrimi, o Signore, "con il pane delle lacrime; dammi, nelle lacrime, copiosa bevanda...

   YouTube 9GAG    anobii  S  Steam T.B.o.I. Wiki [univ] Lezioni private  ʼ  Albo d'Ateneo Unicode 3.0.1
Usa "Search" prima di aprire un post - Scrivi sempre nella sezione giusta - Non spammare - Rispetta gli altri utenti - E ricorda di seguire il Regolamento
Matto1790
Matricola
*
Offline Offline

Gender: Male
Posts: 61



« Reply #23 on: 29-05-2012, 14:21:26 »

Le parentesi sono state inserite male.

I comandi vengono eseguiti (o letti) nell'ordine da sinistra a destra.

Se proprio si volesse includere le parentesi per evidenziare l'ordine, si dovrebbe sfruttare l'associatività a sinistra, ovvero:

(cat testo.txt 2> /dev/null && echo verde) || echo rosso

E così, se il file test.txt esiste vedresti "verde" dopo il contenuto del file, ma se non esistesse, vedresti "rosso".

Gli operatori && e || sono cortocircuitati, proprio come in C e in Java.

Scusa ma qui non dovrei leggere tutto?


Apparte che come già detto sono operatori cortocircuitati, poi nelle slide è comunque spiegato che per quanto riguarda l'operatore "||" la sua seconda condizione viene valutata se e solo se la prima risulti false.  testate

P.s. slide 55 "SO-lab-unix-shell-video"

Forse perchè viene eseguito se e solo se l'exit status del primo primo comando è diverso da 0.

Togli il forse, è corretto  ok
Logged
Daréios89
Forumista Eroico
*****
Offline Offline

Gender: Male
Posts: 2.679


La musica è la forma d'arte suprema.


« Reply #24 on: 29-05-2012, 17:41:31 »

 yoh
Logged

"Utilizzare sempre de l'Hôpital.....è come andare a caccia di farfalle con un bazooka".
milos224
Forumista
***
Offline Offline

Posts: 830


« Reply #25 on: 18-07-2012, 16:09:59 »

scusate ma
$ cat testo.txt 2> /dev/null && echo verde || echo rosso

visualizza il contenuto del file testo ma non ho capito il 2> /dev/null, ovvero ridireziona lo standard error su null..
praticamente dato che non abbiamo errori non scarta nulla?
Logged
ɹǝǝuıƃuǝsɹǝʌǝɹ
Administrator
God of the Forum
*****
Offline Offline

Gender: Male
Posts: 4.475


Più grande è la lotta, e più è glorioso il trionfo


WWW
« Reply #26 on: 18-07-2012, 16:50:59 »

scusate ma
$ cat testo.txt 2> /dev/null && echo verde || echo rosso

visualizza il contenuto del file testo ma non ho capito il 2> /dev/null, ovvero ridireziona lo standard error su null..
praticamente dato che non abbiamo errori non scarta nulla?
Più precisamente, scarta la stringa vuota, che è la stringa restituita su standard error dall'esecuzione del comando .
Logged

La grande marcia della distruzione mentale proseguirà. Tutto verrà negato. Tutto diventerà un credo. È un atteggiamento ragionevole negare l'esistenza delle pietre sulla strada; sarà un dogma religioso affermarla. È una tesi razionale pensare di vivere tutti in un sogno; sarà un esempio di saggezza mistica affermare che siamo tutti svegli. Accenderemo fuochi per testimoniare che due più due fa quattro. Sguaineremo spade per dimostrare che le foglie sono verdi in estate. Non ci resterà quindi che difendere non solo le incredibili virtù e saggezze della vita umana, ma qualcosa di ancora più incredibile: questo immenso, impossibile universo che ci guarda dritto negli occhi. Combatteremo per i prodigi visibili come se fossero invisibili. Guarderemo l'erba e i cieli impossibili con uno strano coraggio. Saremo tra coloro che hanno visto eppure hanno creduto.

In tutto, amare e servire.

  
                            ن                           
I can deal with ads,
I can deal with buffer,
but when ads buffer
I suffer...

...nutrimi, o Signore, "con il pane delle lacrime; dammi, nelle lacrime, copiosa bevanda...

   YouTube 9GAG    anobii  S  Steam T.B.o.I. Wiki [univ] Lezioni private  ʼ  Albo d'Ateneo Unicode 3.0.1
Usa "Search" prima di aprire un post - Scrivi sempre nella sezione giusta - Non spammare - Rispetta gli altri utenti - E ricorda di seguire il Regolamento
milos224
Forumista
***
Offline Offline

Posts: 830


« Reply #27 on: 18-07-2012, 17:14:12 »

scusate ma
$ cat testo.txt 2> /dev/null && echo verde || echo rosso

visualizza il contenuto del file testo ma non ho capito il 2> /dev/null, ovvero ridireziona lo standard error su null..
praticamente dato che non abbiamo errori non scarta nulla?
Più precisamente, scarta la stringa vuota, che è la stringa restituita su standard error dall'esecuzione del comando .
Molto chiaro come sempre
Logged
Pages: 1 [2]   Go Up
Print
Jump to: