étape de réalisation de système d'exploitation

Signaler
Messages postés
12
Date d'inscription
dimanche 14 décembre 2008
Statut
Membre
Dernière intervention
18 avril 2009
-
Messages postés
3
Date d'inscription
mercredi 26 juillet 2006
Statut
Membre
Dernière intervention
28 février 2010
-
salut à tous,

Commment conçoit-on un systeme d'exploitation graphique ?

6 réponses

Messages postés
3874
Date d'inscription
mardi 8 mars 2005
Statut
Modérateur
Dernière intervention
7 novembre 2014
13
Salut,

Je t'invite à consulter des infos sur les os sans interfaces graphiques avant de t'intéresser à cet aspect. Par exemple tu as un OS sur asmfr.
Il y a minix aussi.
Messages postés
3983
Date d'inscription
jeudi 14 juillet 2005
Statut
Membre
Dernière intervention
30 juin 2013
13
<ol>
<li>Connaitre à fond l'architecture : le mode réel / protégé, la mémoire, le DD, le CD, le mode VGA, ... (ICI)
</li>
<li>Connaitre vraiment à fond l'assembleur et le C (bouquins)</li>
<li>Un bon debugger</li>
<li>Avoir beaucoup de temps</li>
<li>Beaucoup de persévérance</li>
<li>
(Un camion d'aspirines)
</li>
</ol>
Messages postés
3
Date d'inscription
mercredi 26 juillet 2006
Statut
Membre
Dernière intervention
28 février 2010

salut, j'ai souvent vue que le C est beaucoup utiliser pour développer les OS, mais le c++ marche-t-il aussi?
Messages postés
3874
Date d'inscription
mardi 8 mars 2005
Statut
Modérateur
Dernière intervention
7 novembre 2014
13
Oui et non !

Je vais pas dire non : il y a même un "OS" en C#.

Mais pas qu'en C# !

En fait, lors de la création des couches basses de l'OS, le développeur doit avoir un contrôle très précis sur le code machine qu'il génère. Le langage source offre plus ou moins de contrôle sur ce que l'on peut faire. L'assembleur est en fait le seul indispensable, car il permet d'accéder à certaines instructions processeur spéciales.

Mais l'assembleur, c'est quand même assez pénible ! Peu d'applications sont écrites entièrement en assembleur. D'autant qu'elles sont généralement en macro assembleur, qui est déjà de plus haut niveau (En gros, des instructions non assembleur sont traduites en assembleur avant le passage en code machine).

C'est là qu'intervient le C. Le C est plus facile à écrire et à lire que l'assembleur, mais son processus de compilation reste très simple. Donc on peut "facilement" faire un compilo C pour un nouveau processeur par exemple. On peut aussi deviner assez facilement les instructions machines qui vont être générées, sans surprises.

Le C++ est beaucoup plus difficile à compiler (C'est peut être le plus compliqué !) et le code généré est beaucoup moins prévisible (Enchaînements de constructeurs, redéfinitions d'opérateurs...). Et il est moins performant.

Donc pourquoi faire compliqué et lent quand on peut faire simple et rapide ?
(Surtout que dans le cas d'un OS, c'est jamais simple et rapide...)
Messages postés
3
Date d'inscription
mercredi 26 juillet 2006
Statut
Membre
Dernière intervention
28 février 2010

Ah ok... Je sais que je vais bientôt commencer le C# et le C dans quelque mois... Je vais donc attendre un peu pour commencer ça.
Messages postés
3
Date d'inscription
mercredi 26 juillet 2006
Statut
Membre
Dernière intervention
28 février 2010

Ah et j'oubliais, merci pour ta réponse.