Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1438 connectés 

  FORUM HardWare.fr
  Programmation
  C

  le C est il suffisant pour programmer un OS ?

 


 Mot :   Pseudo :  
 
 Page :   1  2
Page Précédente
Auteur Sujet :

le C est il suffisant pour programmer un OS ?

n°1526540
CreaRetour
Posté le 09-03-2007 à 17:18:11  profilanswer
 

voilà tout est dans le titre,
je voudrai savoir si le Langage C est suffisant (à lui tout seul sans la moindre instruction d'un autre langage) pour programmer un système d'exploitation ?

 

merci

 

Message cité 1 fois
Message édité par CreaRetour le 09-03-2007 à 17:18:27
mood
Publicité
Posté le 09-03-2007 à 17:18:11  profilanswer
 

n°1526542
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 09-03-2007 à 17:21:51  profilanswer
 

oui

n°1526545
CreaRetour
Posté le 09-03-2007 à 17:26:25  profilanswer
 

est est ce que c'est le plus adapter pour de la programmation système ?
est ce que le principe de programmation système change d'un langage à l'autre ?
où est ce qu'on peut apprendre ça ?
quel sont les connaissance requise pour ça ?

 


Message édité par CreaRetour le 09-03-2007 à 17:27:11
n°1526546
Elmoricq
Modérateur
Posté le 09-03-2007 à 17:28:38  profilanswer
 

Je crois que tu ne réalises pas ce que représente la programmation d'un OS.

n°1526549
CreaRetour
Posté le 09-03-2007 à 17:33:34  profilanswer
 

Elmoricq a écrit :

Je crois que tu ne réalises pas ce que représente la programmation d'un OS.


Oué je sais je veut simplement savoir...
Alors pouvais vous me répondre svp ?

 


Message édité par CreaRetour le 09-03-2007 à 17:42:13
n°1526557
Emmanuel D​elahaye
C is a sharp tool
Posté le 09-03-2007 à 17:48:04  profilanswer
 

CreaRetour a écrit :

voilà tout est dans le titre,
je voudrai savoir si le Langage C est suffisant (à lui tout seul sans la moindre instruction d'un autre langage) pour programmer un système d'exploitation ?


Le C standard ? Non. Il faut connaitre l'assembleur, car certaines parties du code ne peuvent être écrites qu'en assembleur. D'autre part, il faut des extensions permettant de manipuler les adresses fixes. De plus, il faut un éditeur de lien qui permet de réaliser un 'boot sector' pour une disquette ou un CD..., qui sache placer du code ou des données à des offsets bien précis...

 

Enfin, la partie du langage C nécessaire au boot ne peut, par définition, pas utiliser ls parties de la bibliothèque qui font appel aux fonctions systèmes, ... puisqu'il n'y a pas encore de système ! Il peut cependant y avoir un 'micro-noyau' ne servant qu'au boot, qui disparait ensuite au profit du vrai système... Celui-ci peut implémenter une partie des fonctions systèmes nécessaires au C...

 

Ecrire un système, c'est un énorme boulot. Pourquoi cette question ?

  


Message cité 2 fois
Message édité par Emmanuel Delahaye le 09-03-2007 à 21:48:37

---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
n°1526562
CreaRetour
Posté le 09-03-2007 à 17:52:02  profilanswer
 

Emmanuel Delahaye a écrit :

Le C standard ? Non.


!!!
l'un dit oui (cf Harkonnen) , l'autre dit non (cf Emmanuel Delahaye), je ne comprend pas là,
pourquoi y a il un autre Langage C non standard ou quoi !  :??:  
 

n°1526564
Emmanuel D​elahaye
C is a sharp tool
Posté le 09-03-2007 à 17:56:19  profilanswer
 

CreaRetour a écrit :

!!!
l'un dit oui (cf Harkonnen) , l'autre dit non (cf Emmanuel Delahaye), je ne comprend pas là,
pourquoi y a il un autre Langage C non standard ou quoi !  :??:


J'ai développé... Oui, il existe GNUC qui est un langage issu du C avec des extensions faites pour écrire un système. Ca a permet d'écrire GNU/Linux, par exemple.

Message cité 1 fois
Message édité par Emmanuel Delahaye le 09-03-2007 à 17:57:48

---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
n°1526566
CreaRetour
Posté le 09-03-2007 à 18:00:10  profilanswer
 

Emmanuel Delahaye a écrit :

J'ai développé... Oui, il existe GNUC qui est un langage issu du C avec des extensions faites pour écrire un système. Ca a permet d'écrire GNU/Linux, par exemple.


jamais entendu parler, donc GNU/Linux est programmer sous GNUC et pas en C contrérement à ce que la plupart disent...
Où est ce qu'on peut ce documenté sur GNUC ?
 

n°1526567
CreaRetour
Posté le 09-03-2007 à 18:07:08  profilanswer
 

Merci pour m'avoir un peut eclairer :)

Emmanuel Delahaye a écrit :

Ecrire un système, c'est un énorme boulot. Pourquoi cette question ?


On lisant ça http://mapage.noos.fr/emdel/dev_proj.htm (pas que ça), ça ma donner des idée futuriste, et ma motivé pour écrire un système, (pas tout de suite lol et pas tout seul)...
je sais que c'est un énorme boulot, mais j'ai mis ça dans ma tête et même si ça me prendrai toute ma vie pour le faire :)

 

Message cité 1 fois
Message édité par CreaRetour le 09-03-2007 à 18:08:00
mood
Publicité
Posté le 09-03-2007 à 18:07:08  profilanswer
 

n°1526575
Emmanuel D​elahaye
C is a sharp tool
Posté le 09-03-2007 à 18:30:53  profilanswer
 

CreaRetour a écrit :

jamais entendu parler, donc GNU/Linux est programmer sous GNUC et pas en C contrérement à ce que la plupart disent...


Bah, faut pas croire ce que disent les non-informaticiens...

Citation :

Où est ce qu'on peut ce documenté sur GNUC ?


http://www.gnu.org/software/gcc/


Message édité par Emmanuel Delahaye le 09-03-2007 à 18:33:51

---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
n°1526576
Emmanuel D​elahaye
C is a sharp tool
Posté le 09-03-2007 à 18:32:05  profilanswer
 


Tu as de saines lectures, c'est bien !
 


---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
n°1526593
Elmoricq
Modérateur
Posté le 09-03-2007 à 19:26:20  profilanswer
 

CreaRetour a écrit :


l'un dit oui (cf Harkonnen) , l'autre dit non (cf Emmanuel Delahaye), je ne comprend pas là,


 
Parce que Harko il a le cerveau mou depuis qu'il cottoie des juristes. [:klem3i1]
(j'pense il a simplement zappé l'assembleur tellement c'est naturel de l'inclure, quel que soit le langage, quand il s'agit de développer un OS)

n°1526611
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 09-03-2007 à 20:37:34  profilanswer
 

Elmoricq a écrit :

Parce que Harko il a le cerveau mou depuis qu'il cottoie des juristes. [:klem3i1]


ouiiiiiiiii [:violette]
 

Elmoricq a écrit :


(j'pense il a simplement zappé l'assembleur tellement c'est naturel de l'inclure, quel que soit le langage, quand il s'agit de développer un OS)


voila ! pas d'OS sans assembleur, meme inliné dans le code C :o

n°1526638
Emmanuel D​elahaye
C is a sharp tool
Posté le 09-03-2007 à 21:49:43  profilanswer
 

Harkonnen a écrit :

pas d'OS sans assembleur, meme inliné dans le code C :o


Avec la merveilleuse syntaxe AT&T...


---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
n°1526641
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 09-03-2007 à 21:52:52  profilanswer
 

Emmanuel Delahaye a écrit :

Avec la merveilleuse syntaxe AT&T...


putain, clair... rien que de lire ça, je prends 3 points de tension ! cette syntaxe a été pondue par le malin qui était en train de pousser sur ses chiottes [:pingouino]

n°1526654
Dumbledore
Posté le 09-03-2007 à 22:13:53  profilanswer
 

Si tu veux regarder à quoi ressemble un OS codé en C+Assembleur, faut aller sur www.kernel.org (sur le FTP, y a toutes les versions depuis la 0.01 jusqu'à la 2.6.20.2)
 
Sinon, GNUC c'est pas un langage. C'est juste des trucs en plus par rapport au C standard, y a pas vraiment de quoi fouetter un chat.

n°1526659
Emmanuel D​elahaye
C is a sharp tool
Posté le 09-03-2007 à 22:24:19  profilanswer
 

Dumbledore a écrit :

Sinon, GNUC c'est pas un langage. C'est juste des trucs en plus par rapport au C standard, y a pas vraiment de quoi fouetter un chat.

C'est un langage et c'est un sur-ensemble du C standard.  


---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
n°1526665
++fab
victime du syndrome IH
Posté le 09-03-2007 à 23:09:52  profilanswer
 

Emmanuel Delahaye a écrit :

C'est un langage et c'est un sur-ensemble du C standard.


GNUC n'est pas un sur-ensemble de C. Le contre exemple qui me vient à l'esprit: la différence de sémantique à propos d'extern inline, inline, entre C99 et GNUC (je ne parle pas de 4.3 non encore releasé)

n°1526667
Emmanuel D​elahaye
C is a sharp tool
Posté le 09-03-2007 à 23:26:59  profilanswer
 

++fab a écrit :

GNUC n'est pas un sur-ensemble de C.


Exact. J'aurais du préciser 'du C90'.

 


Message édité par Emmanuel Delahaye le 09-03-2007 à 23:27:13

---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
n°1526669
0x90
Posté le 09-03-2007 à 23:35:37  profilanswer
 

( Les topics C, c'est un peu "tout les chemins mènent à Rome", on peut les commencer comme on veut on peut être surs que les derniers messages du topic vont contenir le mot "sur-ensemble" :D )


Message édité par 0x90 le 09-03-2007 à 23:35:53

---------------
Me: Django Localization, Yogo Puzzle, Chrome Grapher, C++ Signals, Brainf*ck.
n°1526729
CreaRetour
Posté le 10-03-2007 à 11:36:11  profilanswer
 

Emmanuel Delahaye a écrit :

Avec la merveilleuse syntaxe AT&T...


Je ne connais pas la syntaxe de l'assembleur AT&T mais il parais que malheureusement, par défaut, gcc sortent de l'assembleur AT&T ... mais on peut aussi utiliser la syntaxe INTEL sous gcc ...
 
Sinon, vous voulais dire quoi exactement par sur-ensemble du C ?
 

Message cité 1 fois
Message édité par CreaRetour le 10-03-2007 à 11:37:37
n°1526746
Emmanuel D​elahaye
C is a sharp tool
Posté le 10-03-2007 à 12:08:34  profilanswer
 

CreaRetour a écrit :

Je ne connais pas la syntaxe de l'assembleur AT&T mais il parais que malheureusement, par défaut, gcc sortent de l'assembleur AT&T


Il n'y a pas "d'assembleur AT&T", mais il y a une "syntaxe AT&T" pour écrire en assembleur inline avec gcc. Nuance... L'assembleur, sur PC, c'est de l'Intel x86, pas le choix !

Citation :

... mais on peut aussi utiliser la syntaxe INTEL sous gcc ...


Tu veux dire, par exemple,  la syntaxe MASM ? Pas à ma connaissance, mais si tu sais comment faire, ça m'intéresse, et je ne dois pas être le seul.

Citation :

Sinon, vous voulais dire quoi exactement par sur-ensemble du C ?


Qu'il (GNUC) englobe tout le C90. On étudie plus la glorieuse théorie des ensembles des années 70 dans les écoles ?
J'ai fait ça en 4ème...
 


---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
n°1526765
tbp
Posté le 10-03-2007 à 12:55:11  profilanswer
 

Primo: http://sourceware.org/binutils/doc [...] 002dSyntax
Secundo: AT&T > Intel, mais c'est vrai que les % à tout va c'est chiant.
Tertio: Si on a disposition un assembleur capable d'émettre un fichier objet, un linker fonctionnel et un moyen quelconque depuis le langage originel - quel qu'il fusse - d'appeler un machin externe, on a le minimum syndical.
 
En 1973, il n'y avait ni GNUC ou C90 et pourtant...

n°1526766
CreaRetour
Posté le 10-03-2007 à 12:55:52  profilanswer
 

Emmanuel Delahaye a écrit :

Citation :

... mais on peut aussi utiliser la syntaxe INTEL sous gcc ...


Tu veux dire, par exemple,  la syntaxe MASM ? Pas à ma connaissance, mais si tu sais comment faire, ça m'intéresse, et je ne dois pas être le seul


en fin, je ne sais pas, j'ai lu sertain topic c'est tout:  
http://www.cppfrance.com/codes/ASM [...] 38813.aspx
http://www.traduc.org/~isa/index.p [...] t-vs-intel

Citation :

Where can I find a converter from AT&T assembly to Intel style


voire là : http://www.delorie.com/djgpp/v2faq/faq17_2.html
 

n°1552515
CreaRetour
Posté le 02-05-2007 à 17:41:12  profilanswer
 

Quelle sont selon vous, les pré-requis (tout ce qu'il faut connaître et savoir) pour un groupe de personne qui veulent apprendre à programmer un Système d'exploitation ?
 

n°1552524
Elmoricq
Modérateur
Posté le 02-05-2007 à 17:49:50  profilanswer
 

Une patience qui ferait perdre pied au moine bouddhiste le plus aguerri, un entêtement qui ferait passer l'âne le plus buté pour une girouette, et le double de la capacité de travail d'un chinois bossant dans une usine de textile.


Message édité par Elmoricq le 02-05-2007 à 17:51:38
n°1552531
Emmanuel D​elahaye
C is a sharp tool
Posté le 02-05-2007 à 17:54:20  profilanswer
 

CreaRetour a écrit :

Quelle sont selon vous, les pré-requis (tout ce qu'il faut connaître et savoir) pour un groupe de personne qui veulent apprendre à programmer un Système d'exploitation ?


C'est quoi cette manie de vouloir écrire un SE ? Il en existe de très bons, pourquoi vouloir réinventer la roue ?
Les vrais problèmes se situent au niveau des applications, qui sont le plus souvent mal définies, mal conçues, mal écrites et mal testées...

 

Là, il y a du boulot...

 

Sinon, pour faire un SE, il faut de l'expérience en programmation organisée et et bien connaitre les interfaces hard/soft (pour la partie driver).

 

D'autre part, il faut être un expert en processus, commutation de tâches etc. Une très bonne connaissance de la cible (assembleur) peut aider pour écrire un scheduler performant (on ne programme le programme pas pareil pour un 80386, pour un Duo Core, ou un Athlon 64...

 

Ensuite, il faut savoir gérer la mémoire (RAM, disque...), les protocoles réseaux courants ...

Message cité 1 fois
Message édité par Emmanuel Delahaye le 02-05-2007 à 19:07:39

---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
n°1552532
CreaRetour
Posté le 02-05-2007 à 17:54:59  profilanswer
 

Citation :

Une patience qui ferait perdre pied au moine bouddhiste le plus aguerri, un entêtement qui ferait passer l'âne le plus buté pour une girouette, et le double de la capacité de travail d'un chinois bossant dans une usine de textile.


Mais lol, je ne parle pas question enthousiasme,
Mais question Connaissance technique quoi... :)
 
 
Merci pour ces quelque précisions Emmanuel Delahaye.

Message cité 1 fois
Message édité par CreaRetour le 02-05-2007 à 17:59:26
n°1552533
Elmoricq
Modérateur
Posté le 02-05-2007 à 17:57:54  profilanswer
 

CreaRetour a écrit :

Mais lol, je ne parle pas question Enthusiasm,


 
Enthousiasme. Ca rime avec miasmes.

n°1552553
Tamahome
⭐⭐⭐⭐⭐
Posté le 02-05-2007 à 19:09:58  profilanswer
 

MIASM32 ?


---------------
Hobby eien /人◕ ‿‿ ◕人\
n°1552565
Emmanuel D​elahaye
C is a sharp tool
Posté le 02-05-2007 à 19:44:30  profilanswer
 


Joli !
 


---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
n°1552568
_Reggae_
Posté le 02-05-2007 à 20:02:34  profilanswer
 

Emmanuel Delahaye a écrit :

Une très bonne connaissance de la cible (assembleur).


Assembleur 16 bit ?
32 ?

n°1552571
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 02-05-2007 à 20:04:40  profilanswer
 

32 bits bon dieu ! 32 BITS §§§ :fou:

n°1552577
_Reggae_
Posté le 02-05-2007 à 20:11:20  profilanswer
 

Harkonnen a écrit :

32 bits bon dieu ! 32 BITS §§§ :fou:


L'Assembleur 16 bit est si useless que ça ?!
C'est dépassé pour les applications 32 bit, mais tout PC boote en 16 bit (mode réel), donc je ne croie pas que c'est si inutile que ça, Harkonnen...

Message cité 1 fois
Message édité par _Reggae_ le 02-05-2007 à 20:27:11
n°1552590
IrmatDen
Posté le 02-05-2007 à 20:37:22  profilanswer
 

Ah, bah tu vas être franchement limité pour l'addressage mémoire et autre joyeuseté ayant besoin de grands nombre :D

n°1552591
Ace17
Posté le 02-05-2007 à 20:38:52  profilanswer
 

_Reggae_ a écrit :

L'Assembleur 16 bit est si useless que ça ?!
C'est dépassé pour les applications 32 bit, mais tout PC boote en 16 bit (mode réel)


Ouais, mais generalement il y reste pas longtemps :D
 
Et pour repondre a ED, la manie de vouloir ecrire des SE c'est surtout l'envie de savoir ce qui se passe "reellement" dans ton PC lorsque tu appelles une API depuis le mode utilisateur. Je pense qu'une fois qu'on a compris comment ca marche, on realise que les SE actuels ne sont pas si mals fichus que ca ... et sont meme a des annees lumieres a ce qu'une bande de potes "motives" pourrait aboutir.

n°1552593
Emmanuel D​elahaye
C is a sharp tool
Posté le 02-05-2007 à 20:41:19  profilanswer
 

_Reggae_ a écrit :

Assembleur 16 bit ?
32 ?


Ca dépend de la cible. Pour du x86, les deux bien sûr (le boot se fait en 16-bit).


---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
n°1552596
Tamahome
⭐⭐⭐⭐⭐
Posté le 02-05-2007 à 20:45:02  profilanswer
 

Ace17 a écrit :

Ouais, mais generalement il y reste pas longtemps :D
 
Et pour repondre a ED, la manie de vouloir ecrire des SE c'est surtout l'envie de savoir ce qui se passe "reellement" dans ton PC lorsque tu appelles une API depuis le mode utilisateur. Je pense qu'une fois qu'on a compris comment ca marche, on realise que les SE actuels ne sont pas si mals fichus que ca ... et sont meme a des annees lumieres a ce qu'une bande de potes "motives" pourrait aboutir.


 
oh serieux ? [:le poney de mr pink]


---------------
Hobby eien /人◕ ‿‿ ◕人\
n°1552602
Ace17
Posté le 02-05-2007 à 20:55:31  profilanswer
 

Tamahome a écrit :

oh serieux ? [:le poney de mr pink]


En fait, ma derniere phrase etait plus ou moins a l'attention de CreaRetour.

mood
Publicité
Posté le   profilanswer
 

 Page :   1  2
Page Précédente

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C

  le C est il suffisant pour programmer un OS ?

 

Sujets relatifs
comment apprendre à programmer sans aucune bases?seulement programmer en php
[C#] [Résolu] Comment communiquer avec une dll c++Comment programmer un écran de veille en java
Programmer l'execution de procedures ?Programmer le jeu "OTHELLO" en Visual Basic
Programmer un system d'exploitation en C ? ou C++ ou ASM ? ou quoi ?[C] Des accolades "just pour le fun" ?
aide pour programmer une carte quickusbprogrammer pour combustion
Plus de sujets relatifs à : le C est il suffisant pour programmer un OS ?


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR