Domande Orale laboratorio Torquati

Salve ragazzi sapete come si svolge l'orale con il torquati?
quali sono le domande che chiede di solito?

Comments

  • ManutioManutio Posts: 22
    Discussione del progetto e qualche domanda sugli errori o su quali scelte diverse potevano essere fatte e perché si è scelto quella, poi domande orali.


    Voto progetto 24-25, voto finale 27 entrambi

    1. Signal handler e gestione dei segnali
    Sigaction solo funzioni safe, si implementa un signal handler. All'arrivo di un segnale viene eseguita la funzione di signal handler (asincrono, può eseguirlo un thread chiunque, quello attivo in questo momento)
    Sigwait: un thread si sospende in attesa di un segnale. Signal handler array, pending bitmask, signal mask.
    Il signal handler array è per processo e non per thread, la maschera ogni thread può usare la sua con pthread_sigmask, la bitmap uguale.
    2. Struttura root Linux (etc, home, lib, dev, tmp)
    3. Librerie: statiche e dinamiche, differenza e estensione
    4. Makefile a cosa serve. Scrivere makefile minimale per compilare con -Wall il file pippo.c

    1. Cos'è l'i-nodo di un file
    2. Tipi di file: d directory, l link, - regolare, p pipe, s socket, c caratteri (device a caratteri: i.e. mouse, tastiera, tty), b blocchi (device a blocchi: i.e. HDD)
    3. /dev/null e /dev/zero: il primo è il buco nero, il secondo restituisce quanti byte vuoi, tutti a zero
    4. opendir: contiene l'elenco dei file nella cartella, i puntatori a i-nodi e due cartelle speciali: . e ..
    5. Concorrenza produttore consumatore in pseudocodice: il while non si può eliminare nemmeno con un solo consumatore perché potrebbe essere risvegliato non da una signal ma da un segnale e continuare anche se la coda è vuota (spourius makeup)
    6. realloc
    7. Struttura manuale (2 syscall, 3 chiamate libreria)
  • edited April 8
    Orale fatto ieri, voto finale 30

    Parte dal progetto chiedendo prima di tutto di descriverlo, poi prende qualcosa dal codice (es. una variabile globale) e chiede a cosa serve, probabilmente per vedere se sei davvero l'autore. Dopo parla degli errori del progetto e chiede cosa si potrebbe cambiare per eliminarli.

    Le domande di teoria nascono spesso da cose incontrate nella discussione del progetto. A me ha chiesto:
    - come si fa a gestire i segnali con gli handler (con quale chiamata si installano, il codice non deve essere lungo e deve chiamare solo funzioni signal-safe, se si accedono var globali devono essere volatile sig_atomic, ecc)
    - cosa fanno i qualificatori volatile, static, extern
    - quando possono arrivare le signal (in qualsiasi momento, sono asincrone) e quale thread può eseguire l'handler (uno qualunque, non si possono fare supposizioni)
    - scrivere un makefile per compilare pippo.c (basta scrivere pippo : pippo.c)
  • Voto finale 25 (23 lab + 27 teoria)
    Come già detto da altri, inizialmente ti fa parlare delle tuo progetto, di alcuni punti che a lui non sono piaciuti e poi domande di quello visto a lezione.
    -cosa contiene un i-node,
    -tipi di file
    -piccolo esempio di produttore-consumatore
  • NokiNoki Posts: 5
    edited September 8
    Appena fatto l'orale (sono quello delle famose 8300 righe di codice).

    La prima parte mi ha chiesto di spiegare il progetto, la struttura, i metodi di comunicazione tra le varie parti, mutua esclusione, deadlock, come avrei potuto risolvere una cosa che ho implementato senza usare una pipe (timeout sulla select), gestione degli account, gestione dei messaggi, concorrenza sui descrittori, gestione della disconnessione degli utenti...
    Sullo script tutto bene, mi ha chiesto di spiegare il pattern matching con le ERE e come ho svolto il controllo sulla validità della cartella (esistenza, tipo di file).

    Poi mi ha fatto alcune domande di teoria, gestione dei segnali (handler vs thread gestore), strutture per la gestione dei segnali (quali per processo e quali per thread), quali handler possono essere installati nel gestore (e quali segnali hanno come effetto di default di terminare il processo, e quali no) e mi ha chiesto di elencare i tipi di file nel file system Unix.

    Voto finale 30.
Sign In or Register to comment.