Шукаєте відповіді та рішення тестів для INF2610 - Noyau d'un système d'exploitation (Hiver 2025)? Перегляньте нашу велику колекцію перевірених відповідей для INF2610 - Noyau d'un système d'exploitation (Hiver 2025) в moodle.polymtl.ca.
Отримайте миттєвий доступ до точних відповідей та детальних пояснень для питань вашого курсу. Наша платформа, створена спільнотою, допомагає студентам досягати успіху!
Considérez le programme suivant: //https://onlinegdb.com/B1xKX-Lkg_
int Continuer = 1;void action (int SIG){ switch(SIG) { case SIGUSR2 : printf("SIGNAL: SIGUSR2 reçu\n"); Continuer=0; break; case SIGINT : printf("SIGNAL: SIGINT reçu \n"); break; case SIGUSR1 :printf("SIGNAL: SIGUSR1 reçu \n"); break; default : printf("SIGNAL %d: Signal Inconnu\n", SIG); } } int main () { signal(SIGUSR2, action); signal(SIGINT, action); while (Continuer) { kill(getpid(), SIGINT); kill(getpid(), SIGUSR1); kill(getpid(), SIGUSR2); } _exit(0);}
Comment ce processus va-t-il se terminer ?
Lorsqu’un
processus tente d’écrire
dans un tube rompu (fermé en lecture), le signal SIGPIPE est envoyé au
processus. Le traitement par défaut associé à ce signal est la terminaison du processus.
Peut-on éviter cette terminaison forcée ? Oui, si .....Le masque des signaux d’un processus indique quels signaux, à destination du processus, à :
La fonction kill permet exclusivement :
Supposez qu'un thread d’un processus exécute cette instruction « dup2(fd=open(“fich”,O_WRONLY),1); ». Quels sont les énoncés corrects qui correspondent à l'effet de l'exécution de cette instruction ?
Veuillez choisir une réponse :Un processus crée, dans l’ordre, un tube anonyme (int fd[2]; pipe(fd);) et 3 threads. Il attend ensuite la fin des 3 threads avant de se terminer. Les threads ne ferment pas et ne dupliquent pas les descripteurs du tube.
Le nombre d’écrivains (descripteurs en écriture) dans le tube, juste après la création des 3 threads, est :
Veuillez choisir une réponse :Considérez le code suivant : ( https://onlinegdb.com/B1kz-RzeO)
int main() { int fd[2]; pipe(fd); if (fork() == 0) { dup2(fd[1],1); close(fd[1]); close(fd[0]); execlp("ls", "ls", NULL); } close(fd[1]); char c; while(read(fd[0],&c,1)>0) write(1,&c,1); close(fd[0]); wait(NULL); _exit(0);}
Sélectionnez les énoncés corrects.
Si un processus exécute cette instruction « dup2(fd=open(“fich”,O_WRONLY),1); » alors
Considérez la commande « ls | sort > data ». La sortie erreur STDERR du processus exécutant « ls » est :
Отримайте необмежений доступ до відповідей на екзаменаційні питання - встановіть розширення Crowdly зараз!