Sous mac os x 10.6.3, dans un terminal, quand je suspend un programme
avec CTRL-Z, je n'arrive pas à le redémarrer avec fg 0. Le programme
indique une erreur :
error #4 : Interrupted system call
stdin is broken
Abort trap
En clair, le programme a perdu sa liaison avec le clavier.
Ce même programme fonctionne sous Linux où j'arrive à le suspendre et le
redémarrer à volonté sans problème.
Existe t-il un réglage quelque part, voire une modification du programme
à faire, pour arriver à le suspendre et redémarrer à volonté ?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
OdarR
On 14 mai, 09:19, Richard wrote:
Bonjour,
Sous mac os x 10.6.3, dans un terminal, quand je suspend un programme avec CTRL-Z, je n'arrive pas à le redémarrer avec fg 0. Le programme indique une erreur : error #4 : Interrupted system call stdin is broken Abort trap
En clair, le programme a perdu sa liaison avec le clavier.
Ce même programme fonctionne sous Linux où j'arrive à le suspendre et le redémarrer à volonté sans problème.
Existe t-il un réglage quelque part, voire une modification du programm e à faire, pour arriver à le suspendre et redémarrer à volonté ?
-- Richard
essaie juste fg.
Olivier
On 14 mai, 09:19, Richard <rich...@nospam.fr> wrote:
Bonjour,
Sous mac os x 10.6.3, dans un terminal, quand je suspend un programme
avec CTRL-Z, je n'arrive pas à le redémarrer avec fg 0. Le programme
indique une erreur :
error #4 : Interrupted system call
stdin is broken
Abort trap
En clair, le programme a perdu sa liaison avec le clavier.
Ce même programme fonctionne sous Linux où j'arrive à le suspendre et le
redémarrer à volonté sans problème.
Existe t-il un réglage quelque part, voire une modification du programm e
à faire, pour arriver à le suspendre et redémarrer à volonté ?
Sous mac os x 10.6.3, dans un terminal, quand je suspend un programme avec CTRL-Z, je n'arrive pas à le redémarrer avec fg 0. Le programme indique une erreur : error #4 : Interrupted system call stdin is broken Abort trap
En clair, le programme a perdu sa liaison avec le clavier.
Ce même programme fonctionne sous Linux où j'arrive à le suspendre et le redémarrer à volonté sans problème.
Existe t-il un réglage quelque part, voire une modification du programm e à faire, pour arriver à le suspendre et redémarrer à volonté ?
-- Richard
essaie juste fg.
Olivier
Richard
Le 14/05/2010 10:58, OdarR a écrit :
On 14 mai, 09:19, Richard wrote:
Bonjour,
Sous mac os x 10.6.3, dans un terminal, quand je suspend un programme avec CTRL-Z, je n'arrive pas à le redémarrer avec fg 0. Le programme indique une erreur : error #4 : Interrupted system call stdin is broken Abort trap
En clair, le programme a perdu sa liaison avec le clavier.
Ce même programme fonctionne sous Linux où j'arrive à le suspendre et le redémarrer à volonté sans problème.
Existe t-il un réglage quelque part, voire une modification du programme à faire, pour arriver à le suspendre et redémarrer à volonté ?
-- Richard
essaie juste fg.
Même message d'erreur. Voilà le problème avec un mini programme :
#include<stdio.h> int main(void) { int c = getchar(); printf("%dn", c); return 0; }
Je lance je programme, tape CTRL-Z, fg, puis entrée, le Mac affiche -1 (soit EOF), tandis que sous Linux on obtient 10 (soit 'n', le retour à la ligne). Tout ce passe comme si CTRL-Z fermait stdin, un peu comme sous Windows et MSDOS.
-- Richard
-- Richard
Le 14/05/2010 10:58, OdarR a écrit :
On 14 mai, 09:19, Richard<rich...@nospam.fr> wrote:
Bonjour,
Sous mac os x 10.6.3, dans un terminal, quand je suspend un programme
avec CTRL-Z, je n'arrive pas à le redémarrer avec fg 0. Le programme
indique une erreur :
error #4 : Interrupted system call
stdin is broken
Abort trap
En clair, le programme a perdu sa liaison avec le clavier.
Ce même programme fonctionne sous Linux où j'arrive à le suspendre et le
redémarrer à volonté sans problème.
Existe t-il un réglage quelque part, voire une modification du programme
à faire, pour arriver à le suspendre et redémarrer à volonté ?
--
Richard
essaie juste fg.
Même message d'erreur.
Voilà le problème avec un mini programme :
#include<stdio.h>
int main(void) {
int c = getchar();
printf("%dn", c);
return 0;
}
Je lance je programme, tape CTRL-Z, fg, puis entrée, le Mac affiche -1
(soit EOF), tandis que sous Linux on obtient 10 (soit 'n', le retour à
la ligne).
Tout ce passe comme si CTRL-Z fermait stdin, un peu comme sous Windows
et MSDOS.
Sous mac os x 10.6.3, dans un terminal, quand je suspend un programme avec CTRL-Z, je n'arrive pas à le redémarrer avec fg 0. Le programme indique une erreur : error #4 : Interrupted system call stdin is broken Abort trap
En clair, le programme a perdu sa liaison avec le clavier.
Ce même programme fonctionne sous Linux où j'arrive à le suspendre et le redémarrer à volonté sans problème.
Existe t-il un réglage quelque part, voire une modification du programme à faire, pour arriver à le suspendre et redémarrer à volonté ?
-- Richard
essaie juste fg.
Même message d'erreur. Voilà le problème avec un mini programme :
#include<stdio.h> int main(void) { int c = getchar(); printf("%dn", c); return 0; }
Je lance je programme, tape CTRL-Z, fg, puis entrée, le Mac affiche -1 (soit EOF), tandis que sous Linux on obtient 10 (soit 'n', le retour à la ligne). Tout ce passe comme si CTRL-Z fermait stdin, un peu comme sous Windows et MSDOS.
-- Richard
-- Richard
Éric Lévénez
Le 14/05/10 13:47, Richard a écrit :
Voilà le problème avec un mini programme :
#include<stdio.h> int main(void) { int c = getchar(); printf("%dn", c); return 0; }
Je lance je programme, tape CTRL-Z, fg, puis entrée, le Mac affiche -1 (soit EOF), tandis que sous Linux on obtient 10 (soit 'n', le retour à la ligne). Tout ce passe comme si CTRL-Z fermait stdin, un peu comme sous Windows et MSDOS.
Non, stdin n'est pas fermé.
Ce qui se passe c'est que le signal SIGTSTP est reçu lors du Ctrl-Z, ce qui suspend le programme. Puis quand le programme (suite à fg) reprend, l'appel système en court est interrompu et errno est alors positionné à EINTR. Ce qui entraîne alors le -1 retourné par getchar.
Avec un truc du genre suivant, cela devrait marcher comme tu le souhaites (il y a sûrement mieux) :
-- Éric Lévénez -- <http://www.levenez.com/> Unix is not only an OS, it's a way of life.
Le 14/05/10 13:47, Richard a écrit :
Voilà le problème avec un mini programme :
#include<stdio.h>
int main(void) {
int c = getchar();
printf("%dn", c);
return 0;
}
Je lance je programme, tape CTRL-Z, fg, puis entrée, le Mac affiche -1
(soit EOF), tandis que sous Linux on obtient 10 (soit 'n', le retour à
la ligne).
Tout ce passe comme si CTRL-Z fermait stdin, un peu comme sous Windows
et MSDOS.
Non, stdin n'est pas fermé.
Ce qui se passe c'est que le signal SIGTSTP est reçu lors du Ctrl-Z, ce
qui suspend le programme. Puis quand le programme (suite à fg) reprend,
l'appel système en court est interrompu et errno est alors positionné à
EINTR. Ce qui entraîne alors le -1 retourné par getchar.
Avec un truc du genre suivant, cela devrait marcher comme tu le
souhaites (il y a sûrement mieux) :
#include<stdio.h> int main(void) { int c = getchar(); printf("%dn", c); return 0; }
Je lance je programme, tape CTRL-Z, fg, puis entrée, le Mac affiche -1 (soit EOF), tandis que sous Linux on obtient 10 (soit 'n', le retour à la ligne). Tout ce passe comme si CTRL-Z fermait stdin, un peu comme sous Windows et MSDOS.
Non, stdin n'est pas fermé.
Ce qui se passe c'est que le signal SIGTSTP est reçu lors du Ctrl-Z, ce qui suspend le programme. Puis quand le programme (suite à fg) reprend, l'appel système en court est interrompu et errno est alors positionné à EINTR. Ce qui entraîne alors le -1 retourné par getchar.
Avec un truc du genre suivant, cela devrait marcher comme tu le souhaites (il y a sûrement mieux) :
-- Éric Lévénez -- <http://www.levenez.com/> Unix is not only an OS, it's a way of life.
Richard
Le 14/05/2010 14:54, Éric Lévénez a écrit :
Ce qui se passe c'est que le signal SIGTSTP est reçu lors du Ctrl-Z, ce qui suspend le programme. Puis quand le programme (suite à fg) reprend, l'appel système en court est interrompu et errno est alors positionné à EINTR. Ce qui entraîne alors le -1 retourné par getchar.
OK, merci pour cette explication.
-- Richard
Le 14/05/2010 14:54, Éric Lévénez a écrit :
Ce qui se passe c'est que le signal SIGTSTP est reçu lors du Ctrl-Z, ce
qui suspend le programme. Puis quand le programme (suite à fg) reprend,
l'appel système en court est interrompu et errno est alors positionné à
EINTR. Ce qui entraîne alors le -1 retourné par getchar.
Ce qui se passe c'est que le signal SIGTSTP est reçu lors du Ctrl-Z, ce qui suspend le programme. Puis quand le programme (suite à fg) reprend, l'appel système en court est interrompu et errno est alors positionné à EINTR. Ce qui entraîne alors le -1 retourné par getchar.