Menu
EtoileAbonnementRSS
jeuxvideo.com  /  Tous les forums  /  Forum principal Informatique  /  Forum Programmation  / 

Topic Question systeme d'exploitation

Sujet : Question systeme d'exploitation

1
Deathrowrecord
Deathrowrecord
MP
18 octobre 2019 à 14:26:47

Salut,

Je suis entrain de suivre un cours sur les systèmes d'exploitations et il y a quelques notions que j'ai pas très bien compris. Par exemple quelle est la différence entre une interruption logiciel (exception) et un appel système ?

Une demande d'E/S c'est un appel système ou bien une exception ?

Et pourquoi quand une interruption est levé, le processeur (?) passe en mode superviseur ? C'est pour accéder aux routines de gestion des interruptions (qui sont stocké dans un espace protegé) ?

Merci :cimer:

Je risque d'avoir d'autres questions :hap:

godrik
godrik
MP
18 octobre 2019 à 17:57:24

Le 18 octobre 2019 à 14:26:47 DeathrowRecord a écrit :
Salut,

Je suis entrain de suivre un cours sur les systèmes d'exploitations et il y a quelques notions que j'ai pas très bien compris. Par exemple quelle est la différence entre une interruption logiciel (exception) et un appel système ?

Qu'est ce que tu entends par interruption logiciel? Tu veux parler d'un appel a INT ?

Les appels systemes sont basiquement implementes par interrupt. (voir https://en.wikibooks.org/wiki/X86_Assembly/Interfacing_with_Linux pour les details gores. x86_64 a introduit une instructions speciales pour bypasser la table d'interrupt)

Une demande d'E/S c'est un appel système ou bien une exception ?

Oh, c'est complique comme question. Quand tu fais printf(3) en C, le message va dans un buffer. C'est quand le buffer est vide qu'un appel systeme est fait. Donc tu peux faire plein d'appel a printf mais qu'il n'y ait qu'un seul appel a write(2). Et donc un seul appel systeme. Apres comment le systeme va resoudre l'appel a write est sont probleme, et probablement il va devoir faire quelques interrupt materiel pour resoudre ca.

Et pourquoi quand une interruption est levé, le processeur (?) passe en mode superviseur ? C'est pour accéder aux routines de gestion des interruptions (qui sont stocké dans un espace protegé) ?

Le but d'un interrupt est d'acceder au hardware ou de rendre la main a l'OS. Donc clairement il faut passer a un mode d'execution privilegie. Note qu'il y avait different niveau de protection a un moment. Mais de nos jours, on en utilise plutot que deux: mode kernel et mode user.

1
Répondre
Prévisu
?
Victime de harcèlement en ligne : comment réagir ?
Infos 0 connecté(s)

Gestion du forum

Modérateurs : godrik, LGV
Contacter les modérateurs - Règles du forum

Sujets à ne pas manquer

Boutique
Pokémon Epée Amazon 49,99€
Luigi's Mansion 3 Amazon 44,49€
Pokémon Bouclier Amazon 59,99€